Commit 759b12911f0f86e2417f33ce6db8e8723bb4d508
1 parent
3fabdbc9
表单合并
Showing
1 changed file
with
114 additions
and
116 deletions
src/views/DisposalSuggestions/index.vue
| 1 | <template> | 1 | <template> |
| 2 | <div class="SystemInfo item-box common-info-box"> | 2 | <div class="SystemInfo item-box common-info-box"> |
| 3 | - <div class="item-title">{{ isSHILevel ? "线索研判" : "线索核查" }}</div> | 3 | + <div class="item-title">核查处置</div> |
| 4 | <div class="item-body"> | 4 | <div class="item-body"> |
| 5 | <div class="NCC-common-layout"> | 5 | <div class="NCC-common-layout"> |
| 6 | <div class="NCC-common-layout-center"> | 6 | <div class="NCC-common-layout-center"> |
| @@ -8,118 +8,75 @@ | @@ -8,118 +8,75 @@ | ||
| 8 | <el-form @submit.native.prevent size="mini"> | 8 | <el-form @submit.native.prevent size="mini"> |
| 9 | <el-col :span="5"> | 9 | <el-col :span="5"> |
| 10 | <el-form-item label=""> | 10 | <el-form-item label=""> |
| 11 | - <el-date-picker | ||
| 12 | - v-model="query.creatorTime" | ||
| 13 | - type="datetimerange" | ||
| 14 | - value-format="yyyy-MM-dd HH:mm:ss" | ||
| 15 | - format="yyyy-MM-dd HH:mm:ss" | ||
| 16 | - start-placeholder="登记开始日期" | ||
| 17 | - end-placeholder="登记结束日期" | ||
| 18 | - > | ||
| 19 | - </el-date-picker> | 11 | + <el-date-picker v-model="query.creatorTime" type="datetimerange" value-format="yyyy-MM-dd HH:mm:ss" format="yyyy-MM-dd HH:mm:ss" start-placeholder="登记开始日期" end-placeholder="登记结束日期"/> |
| 20 | </el-form-item> | 12 | </el-form-item> |
| 21 | </el-col> | 13 | </el-col> |
| 22 | <el-col :span="3"> | 14 | <el-col :span="3"> |
| 23 | <el-form-item label=""> | 15 | <el-form-item label=""> |
| 24 | - <el-input | ||
| 25 | - v-model="query.platformName" | ||
| 26 | - placeholder="请输入应用名称" | ||
| 27 | - clearable | ||
| 28 | - /> | 16 | + <el-input v-model="query.platformName" placeholder="请输入应用名称" clearable/> |
| 29 | </el-form-item> | 17 | </el-form-item> |
| 30 | </el-col> | 18 | </el-col> |
| 31 | <el-col :span="3"> | 19 | <el-col :span="3"> |
| 32 | <el-form-item label=""> | 20 | <el-form-item label=""> |
| 33 | - <el-select | ||
| 34 | - v-model="query.platformType" | ||
| 35 | - placeholder="请选择应用类型" | ||
| 36 | - clearable | ||
| 37 | - > | ||
| 38 | - <el-option | ||
| 39 | - v-for="(item, index) in systemTypeOptions" | ||
| 40 | - :key="index" | ||
| 41 | - :label="item.FullName" | ||
| 42 | - :value="item.Id" | ||
| 43 | - /> | 21 | + <el-select v-model="query.platformType" placeholder="请选择应用类型" clearable> |
| 22 | + <el-option v-for="(item, index) in systemTypeOptions" :key="index" :label="item.FullName" :value="item.Id"/> | ||
| 44 | </el-select> | 23 | </el-select> |
| 45 | </el-form-item> | 24 | </el-form-item> |
| 46 | </el-col> | 25 | </el-col> |
| 47 | - <!-- <el-col :span="3"> | ||
| 48 | - <el-form-item label=""> | ||
| 49 | - <depSelect v-model="query.department" placeholder="请选择部门" /> | ||
| 50 | - </el-form-item> | ||
| 51 | - </el-col> --> | ||
| 52 | <el-col :span="3"> | 26 | <el-col :span="3"> |
| 53 | <el-form-item label=""> | 27 | <el-form-item label=""> |
| 54 | - <el-input | ||
| 55 | - v-model="query.questionType" | ||
| 56 | - placeholder="请选择问题类型" | ||
| 57 | - clearable | ||
| 58 | - /> | 28 | + <el-select v-model="query.reportSource" placeholder="请选择问题来源" clearable> |
| 29 | + <el-option v-for="(item, index) in sourceOptions" :key="index" :label="item.FullName" :value="item.Id"/> | ||
| 30 | + </el-select> | ||
| 31 | + </el-form-item> | ||
| 32 | + </el-col> | ||
| 33 | + <el-col :span="3"> | ||
| 34 | + <el-form-item label=""> | ||
| 35 | + <el-input v-model="query.questionType" placeholder="请选择问题类型" clearable/> | ||
| 59 | </el-form-item> | 36 | </el-form-item> |
| 60 | </el-col> | 37 | </el-col> |
| 61 | <el-col :span="3"> | 38 | <el-col :span="3"> |
| 62 | <el-form-item> | 39 | <el-form-item> |
| 63 | - <el-button | ||
| 64 | - type="primary" | ||
| 65 | - icon="el-icon-search" | ||
| 66 | - @click="search()" | ||
| 67 | - >查询</el-button | ||
| 68 | - > | ||
| 69 | - <el-button icon="el-icon-refresh-right" @click="reset()" | ||
| 70 | - >重置</el-button | ||
| 71 | - > | 40 | + <el-button type="primary" icon="el-icon-search" @click="search()">查询</el-button> |
| 41 | + <el-button icon="el-icon-refresh-right" @click="reset()">重置</el-button> | ||
| 72 | </el-form-item> | 42 | </el-form-item> |
| 73 | </el-col> | 43 | </el-col> |
| 74 | - <div class="NCC-common-search-box-right"> | ||
| 75 | - <el-button | ||
| 76 | - type="primary" | ||
| 77 | - icon="el-icon-download" | ||
| 78 | - size="mini" | ||
| 79 | - @click="exportData()" | ||
| 80 | - >导出</el-button | ||
| 81 | - > | ||
| 82 | - </div> | 44 | + <div class="NCC-common-search-box-right"></div> |
| 83 | </el-form> | 45 | </el-form> |
| 84 | </el-row> | 46 | </el-row> |
| 47 | + <div class="btns-box"> | ||
| 48 | + <el-button type="success" icon="el-icon-plus" @click="addForm()" size="mini" >新增</el-button> | ||
| 49 | + <el-button type="primary" icon="el-icon-download" size="mini" @click="exportDemo()">导出模板</el-button> | ||
| 50 | + <el-upload | ||
| 51 | + class="uploadXlax" | ||
| 52 | + :action="define.APIURl + '/api/Extend/BaseInspectionReport/Actions/ImportByExcel'" | ||
| 53 | + :headers="uploadHeaders" | ||
| 54 | + :on-success="uploadSuccess" | ||
| 55 | + :on-error="uploadError" | ||
| 56 | + :show-file-list="false" | ||
| 57 | + name="excelfile" | ||
| 58 | + > | ||
| 59 | + <div class="avatar-box"> | ||
| 60 | + <el-button type="info" icon="el-icon-upload" size="mini">导入</el-button> | ||
| 61 | + </div> | ||
| 62 | + </el-upload> | ||
| 63 | + <el-button type="primary" icon="el-icon-download" size="mini" @click="exportData()" >导出</el-button> | ||
| 64 | + </div> | ||
| 85 | <div class="NCC-common-layout-main NCC-flex-main"> | 65 | <div class="NCC-common-layout-main NCC-flex-main"> |
| 86 | <NCC-table v-loading="listLoading" :data="list"> | 66 | <NCC-table v-loading="listLoading" :data="list"> |
| 87 | - <el-table-column | ||
| 88 | - show-overflow-tooltip | ||
| 89 | - prop="platformNameStr" | ||
| 90 | - label="应用名称" | ||
| 91 | - align="left" | ||
| 92 | - /> | 67 | + <el-table-column show-overflow-tooltip prop="platformNameStr" label="应用名称" align="left"/> |
| 93 | <el-table-column label="应用类型" prop="platformType" align="left" show-overflow-tooltip> | 68 | <el-table-column label="应用类型" prop="platformType" align="left" show-overflow-tooltip> |
| 94 | <template slot-scope="scope">{{ scope.row.platformType | dynamicTextUP(systemTypeOptions) }}</template> | 69 | <template slot-scope="scope">{{ scope.row.platformType | dynamicTextUP(systemTypeOptions) }}</template> |
| 95 | </el-table-column> | 70 | </el-table-column> |
| 96 | - <el-table-column | ||
| 97 | - show-overflow-tooltip | ||
| 98 | - label="问题类型" | ||
| 99 | - prop="questionType" | ||
| 100 | - align="left" | ||
| 101 | - ></el-table-column> | ||
| 102 | - <el-table-column | ||
| 103 | - show-overflow-tooltip | ||
| 104 | - label="线索编号" | ||
| 105 | - prop="leadNumber" | ||
| 106 | - align="left" | ||
| 107 | - ></el-table-column> | 71 | + <el-table-column label="问题来源" prop="reportSource" align="left" show-overflow-tooltip> |
| 72 | + <template slot-scope="scope">{{ scope.row.reportSource | dynamicTextUP(sourceOptions) }}</template> | ||
| 73 | + </el-table-column> | ||
| 74 | + <el-table-column show-overflow-tooltip label="问题类型" prop="questionType" align="left"/> | ||
| 75 | + <el-table-column show-overflow-tooltip label="线索编号" prop="leadNumber" align="left"/> | ||
| 108 | <!-- <el-table-column show-overflow-tooltip prop="link" label="有害链接" align="left" /> --> | 76 | <!-- <el-table-column show-overflow-tooltip prop="link" label="有害链接" align="left" /> --> |
| 109 | <!-- <el-table-column show-overflow-tooltip prop="questionClass" label="关键词" align="left" /> --> | 77 | <!-- <el-table-column show-overflow-tooltip prop="questionClass" label="关键词" align="left" /> --> |
| 110 | - <el-table-column | ||
| 111 | - show-overflow-tooltip | ||
| 112 | - prop="creatorTime" | ||
| 113 | - label="录入时间" | ||
| 114 | - align="left" | ||
| 115 | - :formatter="ncc.tableDateFormat" | ||
| 116 | - /> | ||
| 117 | - <el-table-column | ||
| 118 | - show-overflow-tooltip | ||
| 119 | - prop="state" | ||
| 120 | - label="状态" | ||
| 121 | - align="left" | ||
| 122 | - /> | 78 | + <el-table-column show-overflow-tooltip prop="creatorTime" label="录入时间" align="left" :formatter="ncc.tableDateFormat"/> |
| 79 | + <el-table-column show-overflow-tooltip prop="state" label="状态" align="left"/> | ||
| 123 | <!-- <el-table-column show-overflow-tooltip prop="disposalSuggestions" label="处置建议" align="left" /> | 80 | <!-- <el-table-column show-overflow-tooltip prop="disposalSuggestions" label="处置建议" align="left" /> |
| 124 | <el-table-column show-overflow-tooltip prop="id" label="主键" align="left" /> | 81 | <el-table-column show-overflow-tooltip prop="id" label="主键" align="left" /> |
| 125 | <el-table-column show-overflow-tooltip prop="department" label="部门" align="left" /> | 82 | <el-table-column show-overflow-tooltip prop="department" label="部门" align="left" /> |
| @@ -129,40 +86,19 @@ | @@ -129,40 +86,19 @@ | ||
| 129 | <el-table-column show-overflow-tooltip label="阶段" prop="stage" align="left"> | 86 | <el-table-column show-overflow-tooltip label="阶段" prop="stage" align="left"> |
| 130 | <template slot-scope="scope">{{ scope.row.stage | dynamicText(stageOptions) }}</template> | 87 | <template slot-scope="scope">{{ scope.row.stage | dynamicText(stageOptions) }}</template> |
| 131 | </el-table-column> --> | 88 | </el-table-column> --> |
| 132 | - <el-table-column label="操作" fixed="right" width="150"> | 89 | + <el-table-column label="操作" fixed="right" width="200"> |
| 133 | <template slot-scope="scope"> | 90 | <template slot-scope="scope"> |
| 134 | - <el-button | ||
| 135 | - type="text" | ||
| 136 | - @click="addOrUpdateHandle(scope.row.id, false, 'edit')" | ||
| 137 | - v-if="isSHILevel && scope.row.stage == '577006666214540549'" | ||
| 138 | - >编辑</el-button | ||
| 139 | - > | 91 | + <template v-if="userId == scope.row.creatorUserId"> |
| 92 | + <el-button type="text" @click="addOrUpdateHandle(scope.row.id)" :disabled="scope.row.stage != '577006621985604869' && scope.row.stage !='577006641364189019'">编辑</el-button> | ||
| 93 | + <el-button type="text" @click="handleDel(scope.row.id)" class="NCC-table-delBtn" :disabled="scope.row.stage != '577006621985604869' && scope.row.stage !='577006641364189019'">删除</el-button> | ||
| 94 | + </template> | ||
| 95 | + <el-button type="text" @click="addOrUpdateHandle(scope.row.id, false, 'edit')" v-if="isSHILevel && scope.row.stage == '577006666214540549'" >建议修改</el-button> | ||
| 140 | <!-- 未研判 ‘577006621985604869’/未下发 ‘577006641364189019’ / 已处置 ‘577006696312866053’ 可以研判 --> | 96 | <!-- 未研判 ‘577006621985604869’/未下发 ‘577006641364189019’ / 已处置 ‘577006696312866053’ 可以研判 --> |
| 141 | <!-- <el-button type="text" v-if="isSHILevel" @click="addOrUpdateHandle(scope.row.id)" :disabled="['577006621985604869', '577006641364189019', '577006696312866053'].includes(scope.row.stage) == -1">{{ scope.row.stage == '577006641364189019' ? '下发' : '研判'}}</el-button> --> | 97 | <!-- <el-button type="text" v-if="isSHILevel" @click="addOrUpdateHandle(scope.row.id)" :disabled="['577006621985604869', '577006641364189019', '577006696312866053'].includes(scope.row.stage) == -1">{{ scope.row.stage == '577006641364189019' ? '下发' : '研判'}}</el-button> --> |
| 142 | - <el-button | ||
| 143 | - type="text" | ||
| 144 | - v-if="isSHILevel && scope.row.stage != '577006666214540549'" | ||
| 145 | - @click="addOrUpdateHandle(scope.row.id)" | ||
| 146 | - :disabled=" | ||
| 147 | - ![ | ||
| 148 | - '577006621985604869', | ||
| 149 | - '577006641364189019', | ||
| 150 | - '577006696312866053', | ||
| 151 | - ].includes(scope.row.stage) | ||
| 152 | - " | ||
| 153 | - >研判</el-button | ||
| 154 | - > | 98 | + <el-button type="text" v-if="isSHILevel && scope.row.stage != '577006666214540549'" @click="addOrUpdateHandle(scope.row.id)" :disabled="!['577006621985604869','577006641364189019','577006696312866053'].includes(scope.row.stage)">研判</el-button> |
| 155 | <!-- 待处置进行处理 --> | 99 | <!-- 待处置进行处理 --> |
| 156 | - <el-button | ||
| 157 | - type="text" | ||
| 158 | - v-if="!isSHILevel" | ||
| 159 | - @click="toHandle(scope.row.id)" | ||
| 160 | - :disabled="scope.row.stage != '577006131314196155'" | ||
| 161 | - >处理</el-button | ||
| 162 | - > | ||
| 163 | - <el-button type="text" @click="toDetail(scope.row.id)" | ||
| 164 | - >详情</el-button | ||
| 165 | - > | 100 | + <el-button type="text" v-if="!isSHILevel" @click="toHandle(scope.row.id)" :disabled="scope.row.stage != '577006131314196155'" >处理</el-button> |
| 101 | + <el-button type="text" @click="toDetail(scope.row.id)">详情</el-button> | ||
| 166 | </template> | 102 | </template> |
| 167 | </el-table-column> | 103 | </el-table-column> |
| 168 | </NCC-table> | 104 | </NCC-table> |
| @@ -174,6 +110,7 @@ | @@ -174,6 +110,7 @@ | ||
| 174 | /> | 110 | /> |
| 175 | </div> | 111 | </div> |
| 176 | </div> | 112 | </div> |
| 113 | + <ADDNCCForm v-if="addformVisible" ref="ADDNCCForm" @refresh="refresh" /> | ||
| 177 | <NCC-Form v-if="formVisible" ref="NCCForm" @refresh="refresh" /> | 114 | <NCC-Form v-if="formVisible" ref="NCCForm" @refresh="refresh" /> |
| 178 | <HandleForm | 115 | <HandleForm |
| 179 | v-if="HandleFormVisible" | 116 | v-if="HandleFormVisible" |
| @@ -193,6 +130,7 @@ | @@ -193,6 +130,7 @@ | ||
| 193 | import request from "@/utils/request"; | 130 | import request from "@/utils/request"; |
| 194 | import infoMixin from "@/mixins/info"; | 131 | import infoMixin from "@/mixins/info"; |
| 195 | import NCCForm from "./Form"; | 132 | import NCCForm from "./Form"; |
| 133 | +import ADDNCCForm from '@/views/baseInspectionReport/Form.vue' | ||
| 196 | import HandleForm from "./HandleForm"; | 134 | import HandleForm from "./HandleForm"; |
| 197 | import { | 135 | import { |
| 198 | getListForJudge, | 136 | getListForJudge, |
| @@ -202,7 +140,7 @@ import ReportForm from "@/views/baseInspectionReport/Form.vue"; // 巡查处置 | @@ -202,7 +140,7 @@ import ReportForm from "@/views/baseInspectionReport/Form.vue"; // 巡查处置 | ||
| 202 | import define from '@/utils/define' | 140 | import define from '@/utils/define' |
| 203 | 141 | ||
| 204 | export default { | 142 | export default { |
| 205 | - components: { NCCForm, HandleForm, ReportForm }, | 143 | + components: { NCCForm, HandleForm, ReportForm, ADDNCCForm }, |
| 206 | mixins: [infoMixin], | 144 | mixins: [infoMixin], |
| 207 | data() { | 145 | data() { |
| 208 | return { | 146 | return { |
| @@ -253,9 +191,11 @@ export default { | @@ -253,9 +191,11 @@ export default { | ||
| 253 | { fullName: "选项一", id: "1" }, | 191 | { fullName: "选项一", id: "1" }, |
| 254 | { fullName: "选项二", id: "2" }, | 192 | { fullName: "选项二", id: "2" }, |
| 255 | ], | 193 | ], |
| 194 | + uploadHeaders: { Authorization: this.$store.getters.token }, | ||
| 256 | 195 | ||
| 257 | HandleFormVisible: false, | 196 | HandleFormVisible: false, |
| 258 | ReportFormVisible: false, | 197 | ReportFormVisible: false, |
| 198 | + addformVisible: false, | ||
| 259 | }; | 199 | }; |
| 260 | }, | 200 | }, |
| 261 | computed: { | 201 | computed: { |
| @@ -263,12 +203,23 @@ export default { | @@ -263,12 +203,23 @@ export default { | ||
| 263 | // 判断角色是否为‘市级办公室’ | 203 | // 判断角色是否为‘市级办公室’ |
| 264 | return this.$store.state.user.islader; | 204 | return this.$store.state.user.islader; |
| 265 | }, | 205 | }, |
| 206 | + userId() { | ||
| 207 | + return this.$store.state.user.id | ||
| 208 | + } | ||
| 266 | }, | 209 | }, |
| 267 | created() { | 210 | created() { |
| 268 | this.initSystemTypeList(); | 211 | this.initSystemTypeList(); |
| 212 | + this.getSourceOptions(); | ||
| 269 | this.initData(); | 213 | this.initData(); |
| 270 | }, | 214 | }, |
| 271 | methods: { | 215 | methods: { |
| 216 | + async getSourceOptions() { | ||
| 217 | + let { data } = await request({ | ||
| 218 | + url: `/Extend/baseinspectionreport/GetReportSourceList`, | ||
| 219 | + method: "GET", | ||
| 220 | + }); | ||
| 221 | + this.sourceOptions = data; | ||
| 222 | + }, | ||
| 272 | initData() { | 223 | initData() { |
| 273 | this.listLoading = true; | 224 | this.listLoading = true; |
| 274 | let _query = { | 225 | let _query = { |
| @@ -372,6 +323,43 @@ export default { | @@ -372,6 +323,43 @@ export default { | ||
| 372 | link.click(); | 323 | link.click(); |
| 373 | }); | 324 | }); |
| 374 | }, | 325 | }, |
| 326 | + | ||
| 327 | + // 巡查上报列表方法----------------------------------------------------------------------- | ||
| 328 | + addForm(id, isDetail) { | ||
| 329 | + this.addformVisible = true | ||
| 330 | + this.$nextTick(() => { | ||
| 331 | + this.$refs.ADDNCCForm.init(id, isDetail) | ||
| 332 | + }) | ||
| 333 | + }, | ||
| 334 | + exportDemo() { | ||
| 335 | + let obj = { | ||
| 336 | + url: '/Extend/BaseInspectionReport/Actions/GenerateImportTemplate', | ||
| 337 | + method: "GET", | ||
| 338 | + responseType: 'blob', | ||
| 339 | + }; | ||
| 340 | + request(obj).then((res) => { | ||
| 341 | + const blob = new Blob([res], {type: 'application/json'}); | ||
| 342 | + const url = window.URL.createObjectURL(blob); | ||
| 343 | + let link = document.createElement('a'); | ||
| 344 | + link.style.display = 'none'; | ||
| 345 | + link.href = url; | ||
| 346 | + link.download = '线索录入模板.xlsx'; | ||
| 347 | + link.click(); | ||
| 348 | + }); | ||
| 349 | + }, | ||
| 350 | + uploadSuccess(response, file, fileList) { | ||
| 351 | + this.$message({ | ||
| 352 | + showClose: true, | ||
| 353 | + message: response.msg, | ||
| 354 | + type: response.code == 200 ? 'success' : 'error', | ||
| 355 | + close: () => { | ||
| 356 | + response.code == 200 && this.initData(); | ||
| 357 | + } | ||
| 358 | + }); | ||
| 359 | + }, | ||
| 360 | + uploadError() { | ||
| 361 | + console.log('erroe'); | ||
| 362 | + }, | ||
| 375 | }, | 363 | }, |
| 376 | }; | 364 | }; |
| 377 | </script> | 365 | </script> |
| @@ -382,4 +370,14 @@ export default { | @@ -382,4 +370,14 @@ export default { | ||
| 382 | overflow-y: scroll; | 370 | overflow-y: scroll; |
| 383 | } | 371 | } |
| 384 | } | 372 | } |
| 373 | +.uploadXlax { | ||
| 374 | + display: inline-block; | ||
| 375 | + margin: 0 8px; | ||
| 376 | +} | ||
| 377 | +.NCC-common-search-box { | ||
| 378 | + margin-bottom: 0; | ||
| 379 | +} | ||
| 380 | +.btns-box { | ||
| 381 | + margin-bottom: 14px; | ||
| 382 | +} | ||
| 385 | </style> | 383 | </style> |