jiangyy 3 years ago
parent
commit
3404235760
  1. 3
      src/views/modules/shequzhili/issue/cpts/issue-detail.vue
  2. 2
      src/views/modules/shequzhili/issue/issueAuditList.vue
  3. 21
      src/views/modules/shequzhili/issue/issueList.vue
  4. 262
      src/views/modules/shequzhili/xiangmu/index.vue

3
src/views/modules/shequzhili/issue/cpts/issue-detail.vue

@ -34,8 +34,7 @@
@click="handleToTopic">查看话题>--</div> @click="handleToTopic">查看话题>--</div>
</div> </div>
<div v-if="issueInfo.sourceType==='resi_topic'" <div :class="['info-prop',{'info-prop-vis':source==='visiual'}]">
:class="['info-prop',{'info-prop-vis':source==='visiual'}]">
<span class="info-title-2">意见和建议</span> <span class="info-title-2">意见和建议</span>
<div class="line" <div class="line"
@click="handleToSuggest">查看全部</div> @click="handleToSuggest">查看全部</div>

2
src/views/modules/shequzhili/issue/issueAuditList.vue

@ -434,7 +434,7 @@ export default {
async getTableData () { async getTableData () {
const url = "/gov/issue/issueaudit/auditList"; const url = "/gov/issue/issueaudit/auditList";
// const url = "http://yapi.elinkservice.cn/mock/102/gov/issue/issue/allIssueList";
const { pageSize, pageNo, formData } = this; const { pageSize, pageNo, formData } = this;
const { data, code, msg } = await requestPost(url, { const { data, code, msg } = await requestPost(url, {
pageSize, pageSize,

21
src/views/modules/shequzhili/issue/issueList.vue

@ -134,17 +134,22 @@
:show-overflow-tooltip="true" :show-overflow-tooltip="true"
label="转议题时间"> label="转议题时间">
</el-table-column> </el-table-column>
<el-table-column prop="sourceTypeName"
label="来源"
width="60"
align="center"
:show-overflow-tooltip="true">
</el-table-column>
<el-table-column prop="supportCount" <el-table-column prop="supportCount"
align="center" align="center"
width="80" width="60"
label="支持" label="支持"
:show-overflow-tooltip="true"> :show-overflow-tooltip="true">
</el-table-column> </el-table-column>
<el-table-column prop="oppositionCount" <el-table-column prop="oppositionCount"
align="center" align="center"
width="80" width="60"
label="反对" label="反对"
:show-overflow-tooltip="true"> :show-overflow-tooltip="true">
</el-table-column> </el-table-column>
@ -456,7 +461,7 @@ export default {
async getTableData () { async getTableData () {
const url = "/gov/issue/issue/allIssueList"; const url = "/gov/issue/issue/allIssueList";
// const url = "http://yapi.elinkservice.cn/mock/102/gov/issue/issue/allIssueList";
const { pageSize, pageNo, formData } = this; const { pageSize, pageNo, formData } = this;
const { data, code, msg } = await requestPost(url, { const { data, code, msg } = await requestPost(url, {
pageSize, pageSize,
@ -473,6 +478,14 @@ export default {
: []; : [];
this.tableData.forEach(item => { this.tableData.forEach(item => {
if (item.sourceType === 'ic_event') {
item.sourceTypeName = '事件'
} else if (item.sourceType === 'resi_topic') {
item.sourceTypeName = '话题'
} else {
item.sourceTypeName = '--'
}
if (item.operationType === '2') { if (item.operationType === '2') {
item.operationTypeShow = '已转服务' item.operationTypeShow = '已转服务'
} }

262
src/views/modules/shequzhili/xiangmu/index.vue

@ -1,80 +1,67 @@
<template> <template>
<div class="resi-container"> <div class="resi-container">
<div class="g-page" v-show="pageType == 'list'"> <div class="g-page"
<el-card ref="searchCard" class="search-card"> v-show="pageType == 'list'">
<el-form <el-card ref="searchCard"
ref="searchForm" class="search-card">
<el-form ref="searchForm"
:inline="true" :inline="true"
:model="fmData" :model="fmData"
:label-width="'100px'" :label-width="'100px'"
class="demo-form-inline" class="demo-form-inline">
>
<div> <div>
<el-form-item label="项目标题" prop="title"> <el-form-item label="项目标题"
<el-input prop="title">
v-model="fmData.title" <el-input v-model="fmData.title"
class="resi-cell-input" class="resi-cell-input"
size="small" size="small"
clearable clearable
placeholder="请输入" placeholder="请输入">
>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="转项目时间" prop="date"> <el-form-item label="转项目时间"
<el-date-picker prop="date">
v-model="fmData.startDate" <el-date-picker v-model="fmData.startDate"
size="small" size="small"
type="date" type="date"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
style="width: 150px" style="width: 150px"
placeholder="开始时间" placeholder="开始时间">
>
</el-date-picker> </el-date-picker>
<span style="margin:0 8px;"></span> <span style="margin:0 8px;"></span>
<el-date-picker <el-date-picker v-model="fmData.endDate"
v-model="fmData.endDate"
size="small" size="small"
type="date" type="date"
style="width: 150px" style="width: 150px"
value-format="yyyy-MM-dd" value-format="yyyy-MM-dd"
placeholder="结束时间" placeholder="结束时间">
>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="状态" prop="status"> <el-form-item label="状态"
<el-select prop="status">
v-model.trim="fmData.status" <el-select v-model.trim="fmData.status"
placeholder="请选择" placeholder="请选择"
size="small" size="small"
clearable clearable
style="width: 150px" style="width: 150px"
class="resi-cell-select" class="resi-cell-select">
> <el-option v-for="item in optionsStatus"
<el-option
v-for="item in optionsStatus"
:key="item.value" :key="item.value"
:label="item.label" :label="item.label"
:value="item.value" :value="item.value">
>
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item style="margin-left: 35px"> <el-form-item style="margin-left: 35px">
<el-button <el-button class="diy-button--search"
class="diy-button--search"
size="small" size="small"
@click="handleSearch" @click="handleSearch">查询</el-button>
>查询</el-button <el-button class="diy-button--reset"
>
<el-button
class="diy-button--reset"
size="small" size="small"
@click="resetForm('searchForm')" @click="resetForm('searchForm')">重置</el-button>
>重置</el-button
>
</el-form-item> </el-form-item>
</div> </div>
</el-form> </el-form>
@ -82,20 +69,14 @@
<el-card class="resi-card-table"> <el-card class="resi-card-table">
<div class="resi-row-btn"> <div class="resi-row-btn">
<el-button <el-button v-if="false"
v-if="false"
class="diy-button--add" class="diy-button--add"
size="small" size="small"
@click="handleAdd" @click="handleAdd">新增</el-button>
>新增</el-button <el-button v-if="false"
>
<el-button
v-if="false"
class="diy-button--export" class="diy-button--export"
size="small" size="small"
@click="handleExportModule('room')" @click="handleExportModule('room')">下载模板</el-button>
>下载模板</el-button
>
<el-upload :headers="$getElUploadHeaders()" <el-upload :headers="$getElUploadHeaders()"
v-if="false" v-if="false"
ref="upload" ref="upload"
@ -109,158 +90,126 @@
:on-progress="handleProgress" :on-progress="handleProgress"
:on-success="handleExcelSuccess" :on-success="handleExcelSuccess"
:before-upload="beforeExcelUpload" :before-upload="beforeExcelUpload"
:http-request="uploadHttpRequest" :http-request="uploadHttpRequest">
> <el-button size="small"
<el-button
size="small"
class="diy-button--delete" class="diy-button--delete"
:loading="importLoading" :loading="importLoading">{{ importBtnTitle }}</el-button>
>{{ importBtnTitle }}</el-button
>
</el-upload> </el-upload>
<el-button @click="handleChu" class="diy-button--reset" size="small" <el-button @click="handleChu"
>导出</el-button class="diy-button--reset"
> size="small">导出</el-button>
</div> </div>
<el-table <el-table :data="tableData"
:data="tableData"
border border
style="width: 100%" style="width: 100%"
class="resi-table" class="resi-table"
:height="maxTableHeight" :height="maxTableHeight">
> <el-table-column label="序号"
<el-table-column
label="序号"
fixed="left" fixed="left"
type="index" type="index"
align="center" align="center"
width="50" width="50" />
/> <el-table-column prop="gridName"
<el-table-column
prop="gridName"
align="center" align="center"
label="所属网格" label="所属网格"
:show-overflow-tooltip="true" :show-overflow-tooltip="true">
>
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="title"
prop="title"
label="项目标题" label="项目标题"
align="center" align="center"
:show-overflow-tooltip="true" :show-overflow-tooltip="true">
>
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="shiftProjectTime"
prop="shiftProjectTime"
width="100" width="100"
align="center" align="center"
label="转项目时间" label="转项目时间"
:show-overflow-tooltip="true" :show-overflow-tooltip="true">
>
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="projectScheme"
prop="projectScheme"
align="center" align="center"
label="项目方案" label="项目方案"
:show-overflow-tooltip="true" :show-overflow-tooltip="true">
>
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="internalRemark"
prop="internalRemark"
align="center" align="center"
label="内部备注" label="内部备注"
:show-overflow-tooltip="true" :show-overflow-tooltip="true">
> </el-table-column>
<el-table-column prop="originName"
align="center"
label="来源"
width="100"
:show-overflow-tooltip="true">
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="departmentNameList"
prop="departmentNameList"
align="center" align="center"
label="当前处理部门 " label="当前处理部门 "
:show-overflow-tooltip="true" :show-overflow-tooltip="true">
>
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="detentionDays"
prop="detentionDays"
align="center" align="center"
label="滞留工作日 " label="滞留工作日 "
:show-overflow-tooltip="true" :show-overflow-tooltip="true">
>
</el-table-column> </el-table-column>
<el-table-column <el-table-column fixed="right"
fixed="right"
label="操作" label="操作"
align="center" align="center"
width="100" width="100">
>
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button v-if="scope.row.status == 'pending' && scope.row.processable"
v-if="scope.row.status == 'pending' && scope.row.processable"
@click="handleEdit(scope.$index)" @click="handleEdit(scope.$index)"
type="text" type="text"
size="small" size="small"
class="div-table-button--edit" class="div-table-button--edit">处理</el-button>
>处理</el-button
>
<el-button <el-button v-else
v-else
@click="handleWatch(scope.$index)" @click="handleWatch(scope.$index)"
type="text" type="text"
size="small" size="small">查看</el-button>
>查看</el-button
>
<el-popconfirm <el-popconfirm v-if="false"
v-if="false"
title="删除之后无法回复,确认删除?" title="删除之后无法回复,确认删除?"
@onConfirm="handleDel(scope.row, scope.$index)" @onConfirm="handleDel(scope.row, scope.$index)"
@confirm="handleDel(scope.row, scope.$index)" @confirm="handleDel(scope.row, scope.$index)">
> <el-button slot="reference"
<el-button
slot="reference"
type="text" type="text"
size="small" size="small"
class="div-table-button--delete" class="div-table-button--delete"
style="margin-left: 10px" style="margin-left: 10px">删除</el-button>
>删除</el-button
>
</el-popconfirm> </el-popconfirm>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<div> <div>
<el-pagination <el-pagination @size-change="handleSizeChange"
@size-change="handleSizeChange"
@current-change="handleCurrentChange" @current-change="handleCurrentChange"
:current-page.sync="pageNo" :current-page.sync="pageNo"
:page-sizes="[20, 50, 100, 200]" :page-sizes="[20, 50, 100, 200]"
:page-size="parseInt(pageSize)" :page-size="parseInt(pageSize)"
layout="sizes, prev, pager, next, total" layout="sizes, prev, pager, next, total"
:total="total" :total="total">
>
</el-pagination> </el-pagination>
</div> </div>
</el-card> </el-card>
</div> </div>
<div class="g-page" v-if="pageType == 'edit' || pageType == 'info'"> <div class="g-page"
<project-info v-if="pageType == 'edit' || pageType == 'info'">
ref="eleEditForm" <project-info ref="eleEditForm"
:type="pageType" :type="pageType"
:projectId="currentProject.projectId" :projectId="currentProject.projectId"
@close="handleClose" @close="handleClose"
@afterEdit="handleEditSuccess" @afterEdit="handleEditSuccess" />
/>
</div> </div>
</div> </div>
</template> </template>
@ -275,7 +224,7 @@ import axios from "axios";
export default { export default {
components: { projectInfo }, components: { projectInfo },
data() { data () {
return { return {
pageType: "list", // list dispose info issue-info pageType: "list", // list dispose info issue-info
@ -315,7 +264,7 @@ export default {
}; };
}, },
computed: { computed: {
maxTableHeight() { maxTableHeight () {
return this.$store.state.inIframe return this.$store.state.inIframe
? this.clientHeight - 360 + this.iframeHeigh ? this.clientHeight - 360 + this.iframeHeigh
: this.clientHeight - 360; : this.clientHeight - 360;
@ -333,11 +282,11 @@ export default {
} }
}, },
}, },
mounted() { mounted () {
this.getTableData(); this.getTableData();
}, },
methods: { methods: {
async handleExportModule() { async handleExportModule () {
let url = "/heart/iccommunityselforganization/import-template-download"; let url = "/heart/iccommunityselforganization/import-template-download";
let params = {}; let params = {};
@ -374,18 +323,18 @@ export default {
}); });
}, },
// //
handleExcelSuccess(res, file) { handleExcelSuccess (res, file) {
if (res.code === 0 && res.msg === "success") { if (res.code === 0 && res.msg === "success") {
console.log("resss---ppp", res); console.log("resss---ppp", res);
} else { } else {
this.$message.error(res.msg); this.$message.error(res.msg);
} }
}, },
handleProgress(event, file, fileList) { handleProgress (event, file, fileList) {
console.log("percentage", file.percentage); console.log("percentage", file.percentage);
}, },
beforeExcelUpload(file) { beforeExcelUpload (file) {
console.log("file", file); console.log("file", file);
const isType = file.type === "application/vnd.ms-excel"; const isType = file.type === "application/vnd.ms-excel";
const isTypeComputer = const isTypeComputer =
@ -402,7 +351,7 @@ export default {
} }
return fileType && isLt1M; return fileType && isLt1M;
}, },
async uploadHttpRequest(file) { async uploadHttpRequest (file) {
this.importLoading = true; this.importLoading = true;
this.importBtnTitle = "正在上传中..."; this.importBtnTitle = "正在上传中...";
this.$message({ this.$message({
@ -457,29 +406,29 @@ export default {
this.$refs.upload.clearFiles(); this.$refs.upload.clearFiles();
}, },
handleSizeChange(val) { handleSizeChange (val) {
console.log(`每页 ${val}`); console.log(`每页 ${val}`);
this.pageSize = val; this.pageSize = val;
window.localStorage.setItem("pageSize", val); window.localStorage.setItem("pageSize", val);
this.getTableData(); this.getTableData();
}, },
handleCurrentChange(val) { handleCurrentChange (val) {
console.log(`当前页: ${val}`); console.log(`当前页: ${val}`);
this.pageNo = val; this.pageNo = val;
this.getTableData(); this.getTableData();
}, },
handleSearch(val) { handleSearch (val) {
console.log(this.fmData); console.log(this.fmData);
this.pageNo = 1; this.pageNo = 1;
this.getTableData(); this.getTableData();
}, },
resetForm(formName) { resetForm (formName) {
this.$refs[formName].resetFields(); this.$refs[formName].resetFields();
this.handleSearch(); this.handleSearch();
}, },
async handleChu() { async handleChu () {
const url = "/gov/project/project/project-list-export"; const url = "/gov/project/project/project-list-export";
const { pageSize, pageNo, fmData } = this; const { pageSize, pageNo, fmData } = this;
axios({ axios({
@ -514,8 +463,8 @@ export default {
}); });
}, },
async handleAdd() {}, async handleAdd () { },
async handleWatch(rowIndex) { async handleWatch (rowIndex) {
let item = this.tableData[rowIndex]; let item = this.tableData[rowIndex];
this.currentProject = { this.currentProject = {
projectId: item.projectId, projectId: item.projectId,
@ -523,7 +472,7 @@ export default {
this.pageType = "info"; this.pageType = "info";
}, },
async handleEdit(rowIndex) { async handleEdit (rowIndex) {
let item = this.tableData[rowIndex]; let item = this.tableData[rowIndex];
this.currentProject = { this.currentProject = {
projectId: item.projectId, projectId: item.projectId,
@ -531,19 +480,19 @@ export default {
this.pageType = "edit"; this.pageType = "edit";
}, },
handleClose() { handleClose () {
this.pageType = "list"; this.pageType = "list";
this.currentProject = { this.currentProject = {
projectId: "", projectId: "",
}; };
}, },
handleEditSuccess() { handleEditSuccess () {
this.handleClose(); this.handleClose();
this.getTableData(); this.getTableData();
}, },
async handleDel(rowData, rowIndex) { async handleDel (rowData, rowIndex) {
console.log(rowData, rowIndex); console.log(rowData, rowIndex);
const url = const url =
"/heart/iccommunityselforganization/delcommunityselforganization"; "/heart/iccommunityselforganization/delcommunityselforganization";
@ -561,7 +510,7 @@ export default {
} }
}, },
async getTableData() { async getTableData () {
// const url = "http://yapi.elinkservice.cn/mock/245/gov/project/project/project-list"; // const url = "http://yapi.elinkservice.cn/mock/245/gov/project/project/project-list";
const url = "/gov/project/project/project-list"; const url = "/gov/project/project/project-list";
const { pageSize, pageNo, fmData } = this; const { pageSize, pageNo, fmData } = this;
@ -578,6 +527,25 @@ export default {
return item; return item;
}) })
: []; : [];
this.tableData.forEach(item => {
if (item.origin === 'issue') {
item.originName = '议题 '
} else if (item.origin === 'agency') {
item.originName = '项目立项'
} else if (item.origin === 'resi_event') {
item.originName = '旧版事件上报'
} else if (item.origin === 'work_event') {
item.originName = '巡查上报'
} else if (item.origin === 'ic_event') {
item.originName = '事件'
} else {
item.sourceTypeName = '--'
}
});
} else { } else {
} }
}, },

Loading…
Cancel
Save