Merge branch 'master' of http://yun.pashanhoo.com:9090/bdc/bdcdj-web
Showing
26 changed files
with
957 additions
and
106 deletions
src/api/home.js
0 → 100644
| 1 | import request from '@/utils/request' | ||
| 2 | import SERVER from './config' | ||
| 3 | |||
| 4 | // 获取首页通知公告列表 | ||
| 5 | export function getHomeNoticeList () { | ||
| 6 | return request({ | ||
| 7 | url: SERVER.SERVERAPI + '/rest/workBench/getHomeNoticeList', | ||
| 8 | method: 'get' | ||
| 9 | }) | ||
| 10 | } | ||
| 11 | |||
| 12 | // 获取首页待办事项 | ||
| 13 | export function getHomeTodoList () { | ||
| 14 | return request({ | ||
| 15 | url: SERVER.SERVERAPI + '/rest/workBench/getHomeTodoList', | ||
| 16 | method: 'get' | ||
| 17 | }) | ||
| 18 | } | ||
| 19 | |||
| 20 | //获取首页已办事项 | ||
| 21 | export function getHomeDoneList () { | ||
| 22 | return request({ | ||
| 23 | url: SERVER.SERVERAPI + '/rest/workBench/getHomeDoneList', | ||
| 24 | method: 'get' | ||
| 25 | }) | ||
| 26 | } |
src/api/notice.js
0 → 100644
| 1 | import request from '@/utils/request' | ||
| 2 | import SERVER from './config' | ||
| 3 | |||
| 4 | // 新增系统通知 | ||
| 5 | export function addSysNotice (data) { | ||
| 6 | return request({ | ||
| 7 | url: SERVER.SERVERAPI + '/rest/system/sysNotice/addSysNotice', | ||
| 8 | method: 'post', | ||
| 9 | data | ||
| 10 | }) | ||
| 11 | } | ||
| 12 | |||
| 13 | // 获取通知列表 | ||
| 14 | export function getSysNoticeList (data) { | ||
| 15 | return request({ | ||
| 16 | url: SERVER.SERVERAPI + '/rest/system/sysNotice/getSysNoticeList', | ||
| 17 | method: 'post', | ||
| 18 | data | ||
| 19 | }) | ||
| 20 | } | ||
| 21 | |||
| 22 | //获取法律法规列表 | ||
| 23 | export function getSysPolicyList (data) { | ||
| 24 | return request({ | ||
| 25 | url: SERVER.SERVERAPI + '/rest/system/sysNotice/getSysPolicyList', | ||
| 26 | method: 'post', | ||
| 27 | data | ||
| 28 | }) | ||
| 29 | } | ||
| 30 | |||
| 31 | //删除系统通知 | ||
| 32 | export function deleteSysNotice (params) { | ||
| 33 | return request({ | ||
| 34 | url: SERVER.SERVERAPI + '/rest/system/sysNotice/deleteSysNotice', | ||
| 35 | method: 'get', | ||
| 36 | params: params | ||
| 37 | }) | ||
| 38 | } | ||
| 39 | |||
| 40 | //发布通知 | ||
| 41 | export function publishNotice (params) { | ||
| 42 | return request({ | ||
| 43 | url: SERVER.SERVERAPI + '/rest/system/sysNotice/publishNotice', | ||
| 44 | method: 'get', | ||
| 45 | params: params | ||
| 46 | }) | ||
| 47 | } | ||
| 48 | |||
| 49 | //取消发布通知 | ||
| 50 | export function unPublishNotice (params) { | ||
| 51 | return request({ | ||
| 52 | url: SERVER.SERVERAPI + '/rest/system/sysNotice/unPublishNotice', | ||
| 53 | method: 'get', | ||
| 54 | params: params | ||
| 55 | }) | ||
| 56 | } | ||
| 57 | |||
| 58 | //设置已读状态 | ||
| 59 | export function setReadStatus (params) { | ||
| 60 | return request({ | ||
| 61 | url: SERVER.SERVERAPI + '/rest/system/sysNotice/setReadStatus', | ||
| 62 | method: 'get', | ||
| 63 | params: params | ||
| 64 | }) | ||
| 65 | } |
| 1 | import request from '@/utils/request' | 1 | import request from '@/utils/request' |
| 2 | import SERVER from './config' | 2 | import SERVER from './config' |
| 3 | |||
| 4 | // 上传单个文件 | ||
| 5 | export function upload (data) { | ||
| 6 | return request({ | ||
| 7 | url: SERVER.SERVERAPI + '/rest/file/upload', | ||
| 8 | method: 'post', | ||
| 9 | data | ||
| 10 | }) | ||
| 11 | } | ||
| 12 | |||
| 3 | /* | 13 | /* |
| 4 | 系统管理 | 14 | 系统管理 |
| 5 | 申请业务规则API-根据条件进行列表查询 | 15 | 申请业务规则API-根据条件进行列表查询 | ... | ... |
| ... | @@ -9,7 +9,6 @@ export default { | ... | @@ -9,7 +9,6 @@ export default { |
| 9 | Vue.component('lbTable', LbTable); | 9 | Vue.component('lbTable', LbTable); |
| 10 | Vue.component('Theme', Theme); | 10 | Vue.component('Theme', Theme); |
| 11 | Vue.prototype.$popup = Popup.install; | 11 | Vue.prototype.$popup = Popup.install; |
| 12 | Vue.prototype.$popupClose = Popup.close; | ||
| 13 | Vue.prototype.$alertMes = MessageBox.alert; | 12 | Vue.prototype.$alertMes = MessageBox.alert; |
| 14 | } | 13 | } |
| 15 | } | 14 | } |
| ... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
| ... | @@ -16,11 +16,5 @@ Popup.install = function (title, editItem, data, formData) { | ... | @@ -16,11 +16,5 @@ Popup.install = function (title, editItem, data, formData) { |
| 16 | instance.isShow = true | 16 | instance.isShow = true |
| 17 | }) | 17 | }) |
| 18 | } | 18 | } |
| 19 | Popup.close = function () { | ||
| 20 | let instance = new PopupBox().$mount() | ||
| 21 | Vue.nextTick(() => { | ||
| 22 | instance.isShow = false | ||
| 23 | }) | ||
| 24 | } | ||
| 25 | 19 | ||
| 26 | export default Popup | 20 | export default Popup | ... | ... |
| ... | @@ -58,13 +58,13 @@ export default { | ... | @@ -58,13 +58,13 @@ export default { |
| 58 | setTimeout(() => { | 58 | setTimeout(() => { |
| 59 | if (this.btnShow) { | 59 | if (this.btnShow) { |
| 60 | if (this.height == 'auto') { | 60 | if (this.height == 'auto') { |
| 61 | this.contentHeight = (this.$refs.contentRef.offsetHeight + 20) + 'px' | 61 | this.contentHeight = (this.$refs.contentRef.offsetHeight) + 'px' |
| 62 | } else { | 62 | } else { |
| 63 | this.contentHeight = this.height | 63 | this.contentHeight = this.height |
| 64 | } | 64 | } |
| 65 | } else { | 65 | } else { |
| 66 | if (this.height == 'auto') { | 66 | if (this.height == 'auto') { |
| 67 | this.contentHeight = (this.$refs.contentRef.offsetHeight + 20) + 'px' | 67 | this.contentHeight = (this.$refs.contentRef.offsetHeight) + 'px' |
| 68 | } else { | 68 | } else { |
| 69 | this.contentHeight = this.height | 69 | this.contentHeight = this.height |
| 70 | } | 70 | } | ... | ... |
| ... | @@ -261,6 +261,22 @@ export const asyncRoutes = [ | ... | @@ -261,6 +261,22 @@ export const asyncRoutes = [ |
| 261 | name: 'dymbgl', | 261 | name: 'dymbgl', |
| 262 | meta: { title: '打印模板管理' } | 262 | meta: { title: '打印模板管理' } |
| 263 | }, | 263 | }, |
| 264 | { | ||
| 265 | path: 'xttz', | ||
| 266 | id: '95', | ||
| 267 | parentId: '9', | ||
| 268 | component: () => import('@/views/system/xttz/xttz.vue'), | ||
| 269 | name: 'xttz', | ||
| 270 | meta: { title: '系统通知' } | ||
| 271 | }, | ||
| 272 | { | ||
| 273 | path: 'flfg', | ||
| 274 | id: '96', | ||
| 275 | parentId: '9', | ||
| 276 | component: () => import('@/views/system/flfg/flfg.vue'), | ||
| 277 | name: 'flfg', | ||
| 278 | meta: { title: '法律法规' } | ||
| 279 | }, | ||
| 264 | ] | 280 | ] |
| 265 | }, | 281 | }, |
| 266 | { | 282 | { | ... | ... |
| ... | @@ -20,21 +20,18 @@ export default { | ... | @@ -20,21 +20,18 @@ export default { |
| 20 | handleSizeChange (val) { | 20 | handleSizeChange (val) { |
| 21 | this.pageData.currentPage = 1 | 21 | this.pageData.currentPage = 1 |
| 22 | this.pageData.pageSize = val | 22 | this.pageData.pageSize = val |
| 23 | if (this.fetchData) { | ||
| 24 | this.fetchData() | ||
| 25 | } | ||
| 26 | if (this.queryClick) { | ||
| 27 | this.queryClick() | 23 | this.queryClick() |
| 28 | } | ||
| 29 | }, | 24 | }, |
| 30 | handleCurrentChange (val) { | 25 | handleCurrentChange (val) { |
| 31 | this.pageData.currentPage = val | 26 | this.pageData.currentPage = val |
| 32 | if (this.fetchData) { | 27 | if (this.fetchData) { |
| 33 | this.fetchData() | 28 | this.fetchData() |
| 34 | } | 29 | } |
| 30 | console.log('this.queryClick,', this.queryClick, 'this.fetchData', this.fetchData); | ||
| 35 | if (this.queryClick) { | 31 | if (this.queryClick) { |
| 36 | this.queryClick() | 32 | this.queryClick() |
| 37 | } | 33 | } |
| 34 | console.log(val, this.pageData.currentPage, 'this.pageDatathis.pageData'); | ||
| 38 | }, | 35 | }, |
| 39 | handleDel () { | 36 | handleDel () { |
| 40 | let deleteAfterPage = Math.ceil((this.tableData.total - 1) / this.pageData.pageSize) | 37 | let deleteAfterPage = Math.ceil((this.tableData.total - 1) / this.pageData.pageSize) | ... | ... |
| ... | @@ -76,5 +76,21 @@ | ... | @@ -76,5 +76,21 @@ |
| 76 | .home-right { | 76 | .home-right { |
| 77 | padding-left: 4px; | 77 | padding-left: 4px; |
| 78 | width: 30%; | 78 | width: 30%; |
| 79 | |||
| 80 | .list-title { | ||
| 81 | overflow: hidden; | ||
| 82 | text-overflow: ellipsis; | ||
| 83 | white-space: nowrap; | ||
| 84 | } | ||
| 85 | |||
| 86 | ul { | ||
| 87 | li { | ||
| 88 | line-height: 36px; | ||
| 89 | |||
| 90 | p { | ||
| 91 | white-space: nowrap; | ||
| 92 | } | ||
| 93 | } | ||
| 94 | } | ||
| 79 | } | 95 | } |
| 80 | } | 96 | } |
| ... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
| ... | @@ -14,16 +14,17 @@ | ... | @@ -14,16 +14,17 @@ |
| 14 | </el-card> | 14 | </el-card> |
| 15 | </el-col> | 15 | </el-col> |
| 16 | <el-col :span="12"> | 16 | <el-col :span="12"> |
| 17 | <el-card shadow="hover"> | 17 | <el-card shadow="hover" style="height:245px"> |
| 18 | <div slot="header" class="flexst"> | 18 | <div slot="header" class="flexst"> |
| 19 | <h5 class="title">通知公告</h5> | 19 | <h5 class="title">系统通知</h5> |
| 20 | <i class="el-icon-s-unfold pointer"></i> | 20 | <i class="el-icon-s-unfold pointer"></i> |
| 21 | </div> | 21 | </div> |
| 22 | <ul> | 22 | <ul> |
| 23 | <li v-for="(item, index) in notice" :key="index" @click="handleNotice" class="flexst pointer"> | 23 | <li v-for="(item, index) in noticeList" :key="index" @click="handleNotice" class="flexst pointer"> |
| 24 | <p class="list-title">{{ item.title }}</p> | 24 | <p class="list-title">{{ item.noticeTitle }}</p> |
| 25 | <p class="marginZL15">{{ item.date }}</p> | 25 | <p class="marginZL15">{{ item.createtime }}</p> |
| 26 | <p>{{ item.state }}</p> | 26 | <p v-if="item.userBrowse == '1'" style="color:red">未读</p> |
| 27 | <p v-else>已读</p> | ||
| 27 | </li> | 28 | </li> |
| 28 | </ul> | 29 | </ul> |
| 29 | </el-card> | 30 | </el-card> |
| ... | @@ -31,29 +32,29 @@ | ... | @@ -31,29 +32,29 @@ |
| 31 | </el-row> | 32 | </el-row> |
| 32 | <el-row :gutter="8" class="marginTop10"> | 33 | <el-row :gutter="8" class="marginTop10"> |
| 33 | <el-col :span="12"> | 34 | <el-col :span="12"> |
| 34 | <el-card shadow="hover"> | 35 | <el-card shadow="hover" style="height:280px"> |
| 35 | <div slot="header" class="flexst"> | 36 | <div slot="header" class="flexst"> |
| 36 | <h5 class="title">待办事项</h5> | 37 | <h5 class="title">待办事项</h5> |
| 37 | <i class="el-icon-s-unfold pointer"></i> | 38 | <i class="el-icon-s-unfold pointer"></i> |
| 38 | </div> | 39 | </div> |
| 39 | <ul> | 40 | <ul> |
| 40 | <li v-for="(item, index) in toList" :key="index" class="flexst"> | 41 | <li v-for="(item, index) in todoList" :key="index" class="flexst"> |
| 41 | <p class="right15">{{ item.date }}</p> | 42 | <p class="right15">{{ item.dealTime }}</p> |
| 42 | <p class="list-title">{{ item.title }}</p> | 43 | <p class="list-title">{{ item.dealBusiness }} ({{item.dealStep+ '环节'}})</p> |
| 43 | </li> | 44 | </li> |
| 44 | </ul> | 45 | </ul> |
| 45 | </el-card> | 46 | </el-card> |
| 46 | </el-col> | 47 | </el-col> |
| 47 | <el-col :span="12"> | 48 | <el-col :span="12"> |
| 48 | <el-card shadow="hover"> | 49 | <el-card shadow="hover" style="height:280px"> |
| 49 | <div slot="header" class="flexst"> | 50 | <div slot="header" class="flexst"> |
| 50 | <h5 class="title">法律法规</h5> | 51 | <h5 class="title">法律法规</h5> |
| 51 | <i class="el-icon-s-unfold pointer"></i> | 52 | <i class="el-icon-s-unfold pointer"></i> |
| 52 | </div> | 53 | </div> |
| 53 | <ul> | 54 | <ul> |
| 54 | <li v-for="(item, index) in mailList" @click="handleView" :key="index" class="flexst pointer"> | 55 | <li v-for="(item, index) in policyList" @click="handleView(item.noticeFileUrl)" :key="index" class="flexst pointer"> |
| 55 | <p class="right15">{{ item.date }}</p> | 56 | <p class="right15">{{ item.noticeTitle }}</p> |
| 56 | <p class="list-title">{{ item.title }}</p> | 57 | <p class="list-title">{{ item.createtime }}</p> |
| 57 | </li> | 58 | </li> |
| 58 | </ul> | 59 | </ul> |
| 59 | </el-card> | 60 | </el-card> |
| ... | @@ -67,7 +68,16 @@ | ... | @@ -67,7 +68,16 @@ |
| 67 | <div class="home-right"> | 68 | <div class="home-right"> |
| 68 | <calendar /> | 69 | <calendar /> |
| 69 | <el-card shadow="hover" class="marginTop10"> | 70 | <el-card shadow="hover" class="marginTop10"> |
| 70 | 鼠标悬浮时显示 | 71 | <div slot="header" class="flexst"> |
| 72 | <h5 class="title">动态信息</h5> | ||
| 73 | <i class="el-icon-s-unfold pointer"></i> | ||
| 74 | </div> | ||
| 75 | <ul> | ||
| 76 | <li v-for="(item, index) in doneList" :key="index" class="flexst"> | ||
| 77 | <p class="right15">{{ item.dealTime }}</p> | ||
| 78 | <p class="list-title">{{ item.dealBusiness }} ({{item.dealStep+ '环节'}})</p> | ||
| 79 | </li> | ||
| 80 | </ul> | ||
| 71 | </el-card> | 81 | </el-card> |
| 72 | </div> | 82 | </div> |
| 73 | </div> | 83 | </div> |
| ... | @@ -75,6 +85,8 @@ | ... | @@ -75,6 +85,8 @@ |
| 75 | <script> | 85 | <script> |
| 76 | import * as G2 from '@antv/g2' | 86 | import * as G2 from '@antv/g2' |
| 77 | import calendar from '@/components/Calendar/index' | 87 | import calendar from '@/components/Calendar/index' |
| 88 | import { getHomeNoticeList, getHomeTodoList, getHomeDoneList } from "@/api/home.js"; | ||
| 89 | import { setReadStatus } from "@/api/notice.js"; | ||
| 78 | export default { | 90 | export default { |
| 79 | name: 'home', | 91 | name: 'home', |
| 80 | components: { calendar }, | 92 | components: { calendar }, |
| ... | @@ -137,77 +149,48 @@ export default { | ... | @@ -137,77 +149,48 @@ export default { |
| 137 | year: '1996', | 149 | year: '1996', |
| 138 | value: 31056 | 150 | value: 31056 |
| 139 | }], | 151 | }], |
| 140 | notice: [ | 152 | noticeList: [], |
| 141 | { | 153 | todoList: [], |
| 142 | title: '坚持以人民为中心发展推进解决房地产历史遗房地产历史遗', | 154 | doneList: [], |
| 143 | date: '2022-12', | 155 | policyList: [] |
| 144 | state: '未读' | ||
| 145 | }, | ||
| 146 | { | ||
| 147 | title: '坚持以人民为中心发展推进解决房地产历史遗房地产历史遗', | ||
| 148 | date: '2022-12', | ||
| 149 | state: '未读' | ||
| 150 | }, | ||
| 151 | { | ||
| 152 | title: '坚持以人民为中心发展推进解决房地产历史遗房地产历史遗', | ||
| 153 | date: '2022-12', | ||
| 154 | state: '未读' | ||
| 155 | }, | ||
| 156 | { | ||
| 157 | title: '坚持以人民为中心发展推进解决房地产历史遗房地产历史遗', | ||
| 158 | date: '2022-12', | ||
| 159 | state: '未读' | ||
| 160 | }, | ||
| 161 | ], | ||
| 162 | toList: [ | ||
| 163 | { | ||
| 164 | title: '坚持以人民为中心发展推进解决房地产历史遗房地产历史遗', | ||
| 165 | date: '2022-12', | ||
| 166 | }, | ||
| 167 | { | ||
| 168 | title: '坚持以人民为中心发展推进解决房地产历史遗房地产历史遗', | ||
| 169 | date: '2022-12', | ||
| 170 | } | ||
| 171 | , | ||
| 172 | { | ||
| 173 | title: '坚持以人民为中心发展推进解决房地产历史遗房地产历史遗', | ||
| 174 | date: '2022-12', | ||
| 175 | } | ||
| 176 | , | ||
| 177 | { | ||
| 178 | title: '坚持以人民为中心发展推进解决房地产历史遗房地产历史遗', | ||
| 179 | date: '2022-12', | ||
| 180 | } | ||
| 181 | ], | ||
| 182 | mailList: [ | ||
| 183 | { | ||
| 184 | title: '坚持以人民为中心发展推进解决房地产历史遗房地产历史遗', | ||
| 185 | date: '2022-12', | ||
| 186 | }, | ||
| 187 | { | ||
| 188 | title: '坚持以人民为中心发展推进解决房地产历史遗房地产历史遗', | ||
| 189 | date: '2022-12', | ||
| 190 | }, | ||
| 191 | { | ||
| 192 | title: '坚持以人民为中心发展推进解决房地产历史遗房地产历史遗', | ||
| 193 | date: '2022-12', | ||
| 194 | } | ||
| 195 | , | ||
| 196 | { | ||
| 197 | title: '坚持以人民为中心发展推进解决房地产历史遗房地产历史遗', | ||
| 198 | date: '2022-12', | ||
| 199 | } | ||
| 200 | ] | ||
| 201 | } | 156 | } |
| 202 | }, | 157 | }, |
| 203 | mounted () { | 158 | mounted () { |
| 204 | this.buildChart(); | 159 | this.buildChart(); |
| 160 | this.queryTodoList(); | ||
| 161 | this.queryDoneList(); | ||
| 162 | this.queryNoticeList(); | ||
| 205 | }, | 163 | }, |
| 206 | methods: { | 164 | methods: { |
| 207 | handleView () { | 165 | handleView (pdfUrl) { |
| 208 | const href = 'http://storage.xuetangx.com/public_assets/xuetangx/PDF/PlayerAPI_v1.0.6.pdf' | 166 | const href = pdfUrl |
| 209 | window.open(href, '_blank'); | 167 | window.open(href, '_blank'); |
| 210 | }, | 168 | }, |
| 169 | //获取待办事项列表 | ||
| 170 | queryTodoList(){ | ||
| 171 | getHomeTodoList().then(res => { | ||
| 172 | if(res.result){ | ||
| 173 | this.todoList = res.result | ||
| 174 | } | ||
| 175 | }) | ||
| 176 | }, | ||
| 177 | //获取已办事项列表 | ||
| 178 | queryDoneList(){ | ||
| 179 | getHomeDoneList().then(res => { | ||
| 180 | if(res.result){ | ||
| 181 | this.doneList = res.result | ||
| 182 | } | ||
| 183 | }) | ||
| 184 | }, | ||
| 185 | //获取通知列表 | ||
| 186 | queryNoticeList(){ | ||
| 187 | getHomeNoticeList().then(res => { | ||
| 188 | if(res.result){ | ||
| 189 | this.noticeList = res.result.noticeList | ||
| 190 | this.policyList = res.result.policyList | ||
| 191 | } | ||
| 192 | }) | ||
| 193 | }, | ||
| 211 | buildChart () { | 194 | buildChart () { |
| 212 | let height = document.getElementById("mountNodeCon").offsetHeight - 20 | 195 | let height = document.getElementById("mountNodeCon").offsetHeight - 20 |
| 213 | var chart = new G2.Chart({ | 196 | var chart = new G2.Chart({ |
| ... | @@ -240,6 +223,7 @@ export default { | ... | @@ -240,6 +223,7 @@ export default { |
| 240 | }, | 223 | }, |
| 241 | handleNotice () { | 224 | handleNotice () { |
| 242 | this.$alertMes('9999999999') | 225 | this.$alertMes('9999999999') |
| 226 | //setReadStatus({'bsmNotice':bsmNotice}) | ||
| 243 | } | 227 | } |
| 244 | } | 228 | } |
| 245 | } | 229 | } | ... | ... |
| 1 | <template> | ||
| 2 | <dialogBox title="新增法律法规" @submitForm="submitForm" saveButton="保存" :isFullscreen="false" width="50%" | ||
| 3 | @closeDialog="closeDialog" v-model="value"> | ||
| 4 | <el-form ref="ruleForm" :model="ruleForm" label-width="100px" :rules="rules"> | ||
| 5 | <el-row> | ||
| 6 | <el-col :span="12"> | ||
| 7 | <el-form-item label="标题:" prop="noticeTitle"> | ||
| 8 | <el-input v-model="ruleForm.noticeTitle"></el-input> | ||
| 9 | </el-form-item> | ||
| 10 | </el-col> | ||
| 11 | </el-row> | ||
| 12 | <el-row> | ||
| 13 | <el-col :span="8"> | ||
| 14 | <el-form-item label="附件:" prop="noticeFileUrl"> | ||
| 15 | <el-upload action="" :file-list="fileList" multiple :auto-upload="false" :limit="1" | ||
| 16 | :on-change="handleChange" :before-upload="beforeUpload"> | ||
| 17 | <el-button icon="el-icon-upload" type="primary">上传</el-button> | ||
| 18 | <div slot="tip" class="el-upload__tip">支持上传doc、docx、xls、xlsx、pdf文件,大小不超过20MB</div> | ||
| 19 | </el-upload> | ||
| 20 | </el-form-item> | ||
| 21 | </el-col> | ||
| 22 | </el-row> | ||
| 23 | </el-form> | ||
| 24 | </dialogBox> | ||
| 25 | </template> | ||
| 26 | |||
| 27 | <script> | ||
| 28 | import '@/styles/package/theme/index.scss' | ||
| 29 | import { addSysNotice} from "@/api/notice.js" | ||
| 30 | import { upload} from "@/api/system.js" | ||
| 31 | export default { | ||
| 32 | props: { | ||
| 33 | value: { type: Boolean, default: false }, | ||
| 34 | }, | ||
| 35 | data () { | ||
| 36 | return { | ||
| 37 | ruleForm: { | ||
| 38 | noticeTitle: '', | ||
| 39 | noticeContent: '', | ||
| 40 | noticeFileUrl: '', | ||
| 41 | noticeType: '2' | ||
| 42 | }, | ||
| 43 | rules: { | ||
| 44 | noticeTitle: [ | ||
| 45 | { required: true, message: '请输入法律法规标题', trigger: 'blur' } | ||
| 46 | ] | ||
| 47 | }, | ||
| 48 | } | ||
| 49 | }, | ||
| 50 | |||
| 51 | methods: { | ||
| 52 | submitForm () { | ||
| 53 | let that = this; | ||
| 54 | that.$refs.ruleForm.validate(valid => { | ||
| 55 | if (valid) { | ||
| 56 | addSysNotice(this.ruleForm).then(res => { | ||
| 57 | if (res.code == 200) { | ||
| 58 | this.$message.success('保存成功') | ||
| 59 | this.$emit("input", false); | ||
| 60 | this.$parent.queryClick(); | ||
| 61 | } else { | ||
| 62 | this.$message.error(res.message) | ||
| 63 | }}) | ||
| 64 | } else { | ||
| 65 | // console.log('error submit!!'); | ||
| 66 | return false; | ||
| 67 | } | ||
| 68 | }); | ||
| 69 | }, | ||
| 70 | //关闭窗口 | ||
| 71 | closeDialog () { | ||
| 72 | this.$emit("input", false); | ||
| 73 | this.resetRuleForm(); | ||
| 74 | }, | ||
| 75 | // | ||
| 76 | resetRuleForm(){ | ||
| 77 | this.$refs['ruleForm'].resetFields(); | ||
| 78 | this.ruleForm.noticeType = '2' | ||
| 79 | }, | ||
| 80 | beforeUpload (file) { | ||
| 81 | return true; | ||
| 82 | }, | ||
| 83 | async handleChange (file) { | ||
| 84 | var formdata = new FormData(); | ||
| 85 | formdata.append("file", file.raw); | ||
| 86 | upload(formdata).then(res => { | ||
| 87 | this.ruleForm.noticeFileUrl = res.message | ||
| 88 | }) | ||
| 89 | }, | ||
| 90 | } | ||
| 91 | } | ||
| 92 | </script> | ||
| 93 | <style scoped lang="scss"> | ||
| 94 | @import "~@/styles/public.scss"; | ||
| 95 | </style> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
src/views/system/flfg/flfg.vue
0 → 100644
| 1 | <template> | ||
| 2 | <div class="from-clues"> | ||
| 3 | <!-- 表单部分 --> | ||
| 4 | <div class="from-clues-header"> | ||
| 5 | <el-form :model="ruleForm" @submit.native.prevent label-width="80px"> | ||
| 6 | <el-row> | ||
| 7 | <el-col :span="5"> | ||
| 8 | <el-form-item label="标题"> | ||
| 9 | <el-input v-model="ruleForm.noticeTitle" @clear="queryClick()" clearable placeholder="法律法规"></el-input> | ||
| 10 | </el-form-item> | ||
| 11 | </el-col> | ||
| 12 | <el-col :span="19" class="btnColRight"> | ||
| 13 | <el-form-item> | ||
| 14 | <el-button type="primary" native-type="submit" @click="queryClick()">查询</el-button> | ||
| 15 | <el-button type="primary" @click="openDialog()">新增</el-button> | ||
| 16 | </el-form-item> | ||
| 17 | </el-col> | ||
| 18 | </el-row> | ||
| 19 | </el-form> | ||
| 20 | </div> | ||
| 21 | <!-- 表格 --> | ||
| 22 | <div class="from-clues-content"> | ||
| 23 | <lb-table :page-size="pageData.size" border :current-page.sync="pageData.current" :total="tableData.total" | ||
| 24 | @size-change="handleSizeChange" @p-current-change="handleCurrentChange" :column="tableData.columns" | ||
| 25 | :data="tableData.data"> | ||
| 26 | </lb-table> | ||
| 27 | </div> | ||
| 28 | <addDialog ref="addDialog" v-model="isDialog" /> | ||
| 29 | </div> | ||
| 30 | </template> | ||
| 31 | <script> | ||
| 32 | import table from "@/utils/mixin/table"; | ||
| 33 | import { datas, sendThis } from "./flfgdata"; | ||
| 34 | import { getSysPolicyList,deleteSysNotice } from "@/api/notice.js" | ||
| 35 | import addDialog from "./components/addDialog.vue"; | ||
| 36 | export default { | ||
| 37 | name: "xttz", | ||
| 38 | components: { addDialog}, | ||
| 39 | mixins: [table], | ||
| 40 | mounted () { | ||
| 41 | sendThis(this); | ||
| 42 | this.queryClick() | ||
| 43 | }, | ||
| 44 | data () { | ||
| 45 | return { | ||
| 46 | isDialog: false, | ||
| 47 | viewDialog: false, | ||
| 48 | ruleForm: { | ||
| 49 | noticeTitle: '' | ||
| 50 | }, | ||
| 51 | tableData: { | ||
| 52 | total: 0, | ||
| 53 | columns: datas.columns(), | ||
| 54 | data: [], | ||
| 55 | }, | ||
| 56 | isDiglog: false | ||
| 57 | } | ||
| 58 | }, | ||
| 59 | methods: { | ||
| 60 | // 列表渲染接口 | ||
| 61 | queryClick () { | ||
| 62 | this.$startLoading() | ||
| 63 | getSysPolicyList({ ...this.ruleForm, ...this.pageData }, { 'target': '#flfgLoading' }).then(res => { | ||
| 64 | if (res.code === 200) { | ||
| 65 | this.$endLoading() | ||
| 66 | let { total, records } = res.result | ||
| 67 | this.tableData.total = total; | ||
| 68 | this.tableData.data = records | ||
| 69 | } | ||
| 70 | }) | ||
| 71 | }, | ||
| 72 | //打开新增弹窗 | ||
| 73 | openDialog() { | ||
| 74 | this.isDialog = true; | ||
| 75 | }, | ||
| 76 | downloadFile(item){ | ||
| 77 | const href = item.noticeFileUrl | ||
| 78 | window.open(href, '_blank'); | ||
| 79 | }, | ||
| 80 | //删除 | ||
| 81 | delNotice(item){ | ||
| 82 | this.$confirm('是否确定删除', '提示', { | ||
| 83 | confirmButtonText: '确定', | ||
| 84 | cancelButtonText: '取消', | ||
| 85 | type: 'warning' | ||
| 86 | }).then(() => { | ||
| 87 | deleteSysNotice({ "bsmNotice": item.bsmNotice }).then(res => { | ||
| 88 | if (res.code == 200) { | ||
| 89 | this.$message.success('删除成功') | ||
| 90 | this.queryClick(); | ||
| 91 | } else { | ||
| 92 | this.$message.error(res.message) | ||
| 93 | } | ||
| 94 | }) | ||
| 95 | }).catch(() => { | ||
| 96 | this.$message({ | ||
| 97 | type: 'info', | ||
| 98 | message: '已取消删除' | ||
| 99 | }); | ||
| 100 | }); | ||
| 101 | }, | ||
| 102 | }, | ||
| 103 | }; | ||
| 104 | </script> | ||
| 105 | <style scoped lang="scss"> | ||
| 106 | @import "~@/styles/public.scss"; | ||
| 107 | </style> |
src/views/system/flfg/flfgdata.js
0 → 100644
| 1 | import filter from '@/utils/filter.js' | ||
| 2 | let vm = null | ||
| 3 | const sendThis = (_this) => { | ||
| 4 | vm = _this | ||
| 5 | } | ||
| 6 | class data extends filter { | ||
| 7 | constructor() { | ||
| 8 | super() | ||
| 9 | } | ||
| 10 | columns () { | ||
| 11 | return [ | ||
| 12 | { | ||
| 13 | label: '序号', | ||
| 14 | type: 'index', | ||
| 15 | width: '50', | ||
| 16 | render: (h, scope) => { | ||
| 17 | return ( | ||
| 18 | <div> | ||
| 19 | {(vm.pageData.currentPage - 1) * vm.pageData.pageSize + scope.$index + 1} | ||
| 20 | </div> | ||
| 21 | ) | ||
| 22 | } | ||
| 23 | }, | ||
| 24 | { | ||
| 25 | prop: "noticeTitle", | ||
| 26 | label: "法律法规标题", | ||
| 27 | }, | ||
| 28 | { | ||
| 29 | prop: "noticeFileName", | ||
| 30 | label: "附件", | ||
| 31 | render: (h, scope) => { | ||
| 32 | return <div class="pointer" onClick={() => { vm.downloadFile(scope.row) }}>{scope.row.noticeFileName}</div> | ||
| 33 | } | ||
| 34 | }, | ||
| 35 | { | ||
| 36 | prop: "creater", | ||
| 37 | width: '120', | ||
| 38 | label: "创建人", | ||
| 39 | }, | ||
| 40 | { | ||
| 41 | prop: "createtime", | ||
| 42 | label: "创建时间", | ||
| 43 | }, | ||
| 44 | { | ||
| 45 | label: '操作', | ||
| 46 | align: 'center', | ||
| 47 | fixed: 'right', | ||
| 48 | render: (h, scope) => { | ||
| 49 | return <div> | ||
| 50 | <el-button type="text" icon="el-icon-delete" onClick={() => { vm.delNotice(scope.row) }}>删除</el-button> | ||
| 51 | </div> | ||
| 52 | } | ||
| 53 | } | ||
| 54 | ] | ||
| 55 | } | ||
| 56 | |||
| 57 | ywlys () { | ||
| 58 | return [ | ||
| 59 | { value: 1, label: "办事大厅" }, | ||
| 60 | { value: 2, label: "微信小程序" }, | ||
| 61 | { value: 3, label: "法院端" }, | ||
| 62 | { value: 4, label: "银行端" }, | ||
| 63 | ] | ||
| 64 | } | ||
| 65 | |||
| 66 | } | ||
| 67 | let datas = new data() | ||
| 68 | export { | ||
| 69 | datas, | ||
| 70 | sendThis | ||
| 71 | } |
| 1 | <template> | ||
| 2 | <dialogBox title="新增系统通知" @submitForm="submitForm" saveButton="保存" :isFullscreen="false" width="50%" | ||
| 3 | @closeDialog="closeDialog" v-model="value"> | ||
| 4 | <el-form ref="ruleForm" :model="ruleForm" label-width="100px" :rules="rules"> | ||
| 5 | <el-row> | ||
| 6 | <el-col :span="12"> | ||
| 7 | <el-form-item label="通知标题:" prop="noticeTitle"> | ||
| 8 | <el-input v-model="ruleForm.noticeTitle"></el-input> | ||
| 9 | </el-form-item> | ||
| 10 | </el-col> | ||
| 11 | </el-row> | ||
| 12 | <el-row> | ||
| 13 | <el-col :span="24"> | ||
| 14 | <el-form-item label="通知内容:" prop="noticeContent"> | ||
| 15 | <el-input v-model="ruleForm.noticeContent" type="textarea" :rows="16"></el-input> | ||
| 16 | </el-form-item> | ||
| 17 | </el-col> | ||
| 18 | </el-row> | ||
| 19 | <el-row> | ||
| 20 | <el-col :span="8"> | ||
| 21 | <el-form-item label="附件:" prop="noticeFileUrl"> | ||
| 22 | <el-upload action="" :file-list="fileList" multiple :auto-upload="false" :limit="1" | ||
| 23 | :on-change="handleChange" :before-upload="beforeUpload"> | ||
| 24 | <el-button icon="el-icon-upload" type="primary">上传</el-button> | ||
| 25 | <div slot="tip" class="el-upload__tip">文件大小不超过20MB</div> | ||
| 26 | </el-upload> | ||
| 27 | </el-form-item> | ||
| 28 | </el-col> | ||
| 29 | </el-row> | ||
| 30 | </el-form> | ||
| 31 | </dialogBox> | ||
| 32 | </template> | ||
| 33 | |||
| 34 | <script> | ||
| 35 | import '@/styles/package/theme/index.scss' | ||
| 36 | import { addSysNotice} from "@/api/notice.js" | ||
| 37 | import { upload} from "@/api/system.js" | ||
| 38 | export default { | ||
| 39 | props: { | ||
| 40 | value: { type: Boolean, default: false }, | ||
| 41 | }, | ||
| 42 | data () { | ||
| 43 | return { | ||
| 44 | ruleForm: { | ||
| 45 | noticeTitle: '', | ||
| 46 | noticeContent: '', | ||
| 47 | noticeFileUrl: '', | ||
| 48 | noticeType: '1' | ||
| 49 | }, | ||
| 50 | rules: { | ||
| 51 | noticeTitle: [ | ||
| 52 | { required: true, message: '请输入通知标题', trigger: 'blur' } | ||
| 53 | ], | ||
| 54 | noticeContent: [ | ||
| 55 | { required: true, message: '请输入通知内容', trigger: 'blur' } | ||
| 56 | ] | ||
| 57 | }, | ||
| 58 | } | ||
| 59 | }, | ||
| 60 | |||
| 61 | methods: { | ||
| 62 | submitForm () { | ||
| 63 | let that = this; | ||
| 64 | that.$refs.ruleForm.validate(valid => { | ||
| 65 | if (valid) { | ||
| 66 | addSysNotice(this.ruleForm).then(res => { | ||
| 67 | if (res.code == 200) { | ||
| 68 | this.$message.success('保存成功') | ||
| 69 | this.$emit("input", false); | ||
| 70 | this.$parent.queryClick(); | ||
| 71 | } else { | ||
| 72 | this.$message.error(res.message) | ||
| 73 | }}) | ||
| 74 | } else { | ||
| 75 | // console.log('error submit!!'); | ||
| 76 | return false; | ||
| 77 | } | ||
| 78 | }); | ||
| 79 | }, | ||
| 80 | //关闭窗口 | ||
| 81 | closeDialog () { | ||
| 82 | this.$emit("input", false); | ||
| 83 | this.resetRuleForm(); | ||
| 84 | }, | ||
| 85 | // | ||
| 86 | resetRuleForm(){ | ||
| 87 | this.$refs['ruleForm'].resetFields(); | ||
| 88 | this.ruleForm.noticeType = '1' | ||
| 89 | }, | ||
| 90 | beforeUpload (file) { | ||
| 91 | return true | ||
| 92 | }, | ||
| 93 | async handleChange (file) { | ||
| 94 | var formdata = new FormData(); | ||
| 95 | formdata.append("file", file.raw); | ||
| 96 | upload(formdata).then(res => { | ||
| 97 | this.ruleForm.noticeFileUrl = res.message | ||
| 98 | }) | ||
| 99 | }, | ||
| 100 | } | ||
| 101 | } | ||
| 102 | </script> | ||
| 103 | <style scoped lang="scss"> | ||
| 104 | @import "~@/styles/public.scss"; | ||
| 105 | </style> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <template> | ||
| 2 | <div> | ||
| 3 | <el-row :gutter="8"> | ||
| 4 | <el-col :span="16"> | ||
| 5 | 通知标题: | ||
| 6 | <el-input v-model="formData.item.noticeTitle"></el-input> | ||
| 7 | </el-col> | ||
| 8 | </el-row> | ||
| 9 | <el-row :gutter="8"> | ||
| 10 | <el-col :span="24" class="margin-top-middle"> | ||
| 11 | 通知内容: | ||
| 12 | <el-input type="textarea" :rows="20" v-model="formData.item.noticeContent"></el-input> | ||
| 13 | </el-col> | ||
| 14 | </el-row> | ||
| 15 | <el-row :gutter="8"> | ||
| 16 | <el-col :span="24" class="margin-top-middle"> | ||
| 17 | 附件: | ||
| 18 | <div @click="handleView(formData.item.noticeFileUrl)" class="pointer">{{formData.item.noticeFileName}}</div> | ||
| 19 | </el-col> | ||
| 20 | </el-row> | ||
| 21 | </div> | ||
| 22 | </template> | ||
| 23 | <script> | ||
| 24 | export default { | ||
| 25 | data () { | ||
| 26 | return { | ||
| 27 | }; | ||
| 28 | }, | ||
| 29 | components: { }, | ||
| 30 | props: { | ||
| 31 | formData: { | ||
| 32 | type: Object, | ||
| 33 | default: () => {} | ||
| 34 | }, | ||
| 35 | }, | ||
| 36 | created(){ | ||
| 37 | console.log(this.formData); | ||
| 38 | }, | ||
| 39 | computed: { | ||
| 40 | |||
| 41 | }, | ||
| 42 | |||
| 43 | methods: { | ||
| 44 | |||
| 45 | }, | ||
| 46 | }; | ||
| 47 | </script> | ||
| 48 | <style scoped lang='scss'> | ||
| 49 | @import "~@/styles/public.scss"; | ||
| 50 | .margin-top-middle { | ||
| 51 | margin-top:10px | ||
| 52 | } | ||
| 53 | </style> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
src/views/system/xttz/xttz.vue
0 → 100644
| 1 | <template> | ||
| 2 | <div class="from-clues"> | ||
| 3 | <!-- 表单部分 --> | ||
| 4 | <div class="from-clues-header"> | ||
| 5 | <el-form :model="ruleForm" @submit.native.prevent label-width="80px"> | ||
| 6 | <el-row> | ||
| 7 | <el-col :span="5"> | ||
| 8 | <el-form-item label="通知标题"> | ||
| 9 | <el-input v-model="ruleForm.noticeTitle" @clear="queryClick()" clearable placeholder="通知标题"></el-input> | ||
| 10 | </el-form-item> | ||
| 11 | </el-col> | ||
| 12 | <el-col :span="5"> | ||
| 13 | <el-form-item label="通知状态"> | ||
| 14 | <el-select v-model="ruleForm.noticeStatus" class="width100" filterable clearable placeholder="请选择通知状态"> | ||
| 15 | <el-option v-for="item in noticeStatusList" :key="item.value" :label="item.label" :value="item.value"> | ||
| 16 | </el-option> | ||
| 17 | </el-select> | ||
| 18 | </el-form-item> | ||
| 19 | </el-col> | ||
| 20 | <el-col :span="14" class="btnColRight"> | ||
| 21 | <el-form-item> | ||
| 22 | <el-button type="primary" native-type="submit" @click="queryClick()">查询</el-button> | ||
| 23 | <el-button type="primary" @click="openDialog()">新增</el-button> | ||
| 24 | </el-form-item> | ||
| 25 | </el-col> | ||
| 26 | </el-row> | ||
| 27 | </el-form> | ||
| 28 | </div> | ||
| 29 | <!-- 表格 --> | ||
| 30 | <div class="from-clues-content"> | ||
| 31 | <lb-table :page-size="pageData.size" border :current-page.sync="pageData.current" :total="tableData.total" | ||
| 32 | @size-change="handleSizeChange" @p-current-change="handleCurrentChange" :column="tableData.columns" | ||
| 33 | :data="tableData.data"> | ||
| 34 | </lb-table> | ||
| 35 | </div> | ||
| 36 | <addDialog ref="addDialog" v-model="isDialog" /> | ||
| 37 | </div> | ||
| 38 | </template> | ||
| 39 | <script> | ||
| 40 | import table from "@/utils/mixin/table"; | ||
| 41 | import { datas, sendThis } from "./xttzdata"; | ||
| 42 | import { getSysNoticeList,deleteSysNotice,publishNotice,unPublishNotice } from "@/api/notice.js" | ||
| 43 | import addDialog from "./components/addDialog.vue"; | ||
| 44 | export default { | ||
| 45 | name: "xttz", | ||
| 46 | components: { addDialog}, | ||
| 47 | mixins: [table], | ||
| 48 | mounted () { | ||
| 49 | sendThis(this); | ||
| 50 | this.queryClick() | ||
| 51 | }, | ||
| 52 | data () { | ||
| 53 | return { | ||
| 54 | isDialog: false, | ||
| 55 | viewDialog: false, | ||
| 56 | ruleForm: { | ||
| 57 | noticeTitle: '', | ||
| 58 | noticeStatus: '' | ||
| 59 | }, | ||
| 60 | noticeStatusList: [ | ||
| 61 | {"label": '未发布','value':'1'}, | ||
| 62 | {'label': '已发布','value':'2'} | ||
| 63 | ], | ||
| 64 | tableData: { | ||
| 65 | total: 0, | ||
| 66 | columns: datas.columns(), | ||
| 67 | data: [], | ||
| 68 | }, | ||
| 69 | isDiglog: false | ||
| 70 | } | ||
| 71 | }, | ||
| 72 | methods: { | ||
| 73 | // 列表渲染接口 | ||
| 74 | queryClick () { | ||
| 75 | this.$startLoading() | ||
| 76 | getSysNoticeList({ ...this.ruleForm, ...this.pageData }, { 'target': '#xttzLoading' }).then(res => { | ||
| 77 | if (res.code === 200) { | ||
| 78 | this.$endLoading() | ||
| 79 | let { total, records } = res.result | ||
| 80 | this.tableData.total = total; | ||
| 81 | this.tableData.data = records | ||
| 82 | } | ||
| 83 | }) | ||
| 84 | }, | ||
| 85 | //打开新增弹窗 | ||
| 86 | openDialog() { | ||
| 87 | this.isDialog = true; | ||
| 88 | }, | ||
| 89 | //删除 | ||
| 90 | delNotice(item){ | ||
| 91 | this.$confirm('是否确定删除', '提示', { | ||
| 92 | confirmButtonText: '确定', | ||
| 93 | cancelButtonText: '取消', | ||
| 94 | type: 'warning' | ||
| 95 | }).then(() => { | ||
| 96 | deleteSysNotice({ "bsmNotice": item.bsmNotice }).then(res => { | ||
| 97 | if (res.code == 200) { | ||
| 98 | this.$message.success('删除成功') | ||
| 99 | this.queryClick(); | ||
| 100 | } else { | ||
| 101 | this.$message.error(res.message) | ||
| 102 | } | ||
| 103 | }) | ||
| 104 | }).catch(() => { | ||
| 105 | this.$message({ | ||
| 106 | type: 'info', | ||
| 107 | message: '已取消删除' | ||
| 108 | }); | ||
| 109 | }); | ||
| 110 | }, | ||
| 111 | //发布 | ||
| 112 | toPublish(item){ | ||
| 113 | this.$confirm('是否确定发布', '提示', { | ||
| 114 | confirmButtonText: '确定', | ||
| 115 | cancelButtonText: '取消', | ||
| 116 | type: 'warning' | ||
| 117 | }).then(() => { | ||
| 118 | publishNotice({ "bsmNotice": item.bsmNotice }).then(res => { | ||
| 119 | if (res.code == 200) { | ||
| 120 | this.$message.success('发布成功') | ||
| 121 | this.queryClick(); | ||
| 122 | } else { | ||
| 123 | this.$message.error(res.message) | ||
| 124 | } | ||
| 125 | }) | ||
| 126 | }).catch(() => { | ||
| 127 | this.$message({ | ||
| 128 | type: 'info', | ||
| 129 | message: '操作取消' | ||
| 130 | }); | ||
| 131 | }); | ||
| 132 | }, | ||
| 133 | //取消发布 | ||
| 134 | toUnPublish(item){ | ||
| 135 | this.$confirm('是否确定取消发布', '提示', { | ||
| 136 | confirmButtonText: '确定', | ||
| 137 | cancelButtonText: '取消', | ||
| 138 | type: 'warning' | ||
| 139 | }).then(() => { | ||
| 140 | unPublishNotice({ "bsmNotice": item.bsmNotice }).then(res => { | ||
| 141 | if (res.code == 200) { | ||
| 142 | this.$message.success('删除成功') | ||
| 143 | this.queryClick(); | ||
| 144 | } else { | ||
| 145 | this.$message.error(res.message) | ||
| 146 | } | ||
| 147 | }) | ||
| 148 | }).catch(() => { | ||
| 149 | this.$message({ | ||
| 150 | type: 'info', | ||
| 151 | message: '操作取消' | ||
| 152 | }); | ||
| 153 | }); | ||
| 154 | }, | ||
| 155 | downloadFile(item){ | ||
| 156 | const href = item.noticeFileUrl | ||
| 157 | window.open(href, '_blank'); | ||
| 158 | }, | ||
| 159 | viewDetail(e){ | ||
| 160 | this.$popup("错误日志", "system/xttz/components/viewDialog", { | ||
| 161 | formData: { | ||
| 162 | item: e | ||
| 163 | } | ||
| 164 | }) | ||
| 165 | } | ||
| 166 | }, | ||
| 167 | }; | ||
| 168 | </script> | ||
| 169 | <style scoped lang="scss"> | ||
| 170 | @import "~@/styles/public.scss"; | ||
| 171 | </style> |
src/views/system/xttz/xttzdata.js
0 → 100644
| 1 | import filter from '@/utils/filter.js' | ||
| 2 | let vm = null | ||
| 3 | const sendThis = (_this) => { | ||
| 4 | vm = _this | ||
| 5 | } | ||
| 6 | class data extends filter { | ||
| 7 | constructor() { | ||
| 8 | super() | ||
| 9 | } | ||
| 10 | columns () { | ||
| 11 | return [ | ||
| 12 | { | ||
| 13 | label: '序号', | ||
| 14 | type: 'index', | ||
| 15 | width: '50', | ||
| 16 | render: (h, scope) => { | ||
| 17 | return ( | ||
| 18 | <div> | ||
| 19 | {(vm.pageData.currentPage - 1) * vm.pageData.pageSize + scope.$index + 1} | ||
| 20 | </div> | ||
| 21 | ) | ||
| 22 | } | ||
| 23 | }, | ||
| 24 | { | ||
| 25 | prop: "noticeTitle", | ||
| 26 | label: "通知标题", | ||
| 27 | }, | ||
| 28 | { | ||
| 29 | label: "通知内容", | ||
| 30 | render: (h, scope) => { | ||
| 31 | return <div class="item-cwnr">{scope.row.noticeContent}</div> | ||
| 32 | } | ||
| 33 | }, | ||
| 34 | { | ||
| 35 | prop: "noticeFileName", | ||
| 36 | label: "通知附件", | ||
| 37 | render: (h, scope) => { | ||
| 38 | return <div class="pointer" onClick={() => { vm.downloadFile(scope.row) }}>{scope.row.noticeFileName}</div> | ||
| 39 | } | ||
| 40 | }, | ||
| 41 | { | ||
| 42 | label: "发布状态", | ||
| 43 | width: '80', | ||
| 44 | render: (h, scope) => { | ||
| 45 | switch (scope.row.noticeStatus) { | ||
| 46 | case '1': | ||
| 47 | return <div class='prohibit'>未发布</div> | ||
| 48 | case '2': | ||
| 49 | return <div class='allow'>已发布</div> | ||
| 50 | } | ||
| 51 | } | ||
| 52 | }, | ||
| 53 | { | ||
| 54 | prop: "creater", | ||
| 55 | width: '120', | ||
| 56 | label: "创建人", | ||
| 57 | }, | ||
| 58 | { | ||
| 59 | prop: "createtime", | ||
| 60 | label: "创建时间", | ||
| 61 | }, | ||
| 62 | { | ||
| 63 | label: '操作', | ||
| 64 | align: 'center', | ||
| 65 | fixed: 'right', | ||
| 66 | render: (h, scope) => { | ||
| 67 | switch (scope.row.noticeStatus) { | ||
| 68 | case '1': | ||
| 69 | return <div> | ||
| 70 | <el-button type="text" icon="el-icon-edit-outline" onClick={() => { vm.toPublish(scope.row) }}>发布</el-button> | ||
| 71 | <el-button type="text" onClick={() => { vm.viewDetail(scope.row) }}>查看</el-button> | ||
| 72 | <el-button type="text" icon="el-icon-delete" onClick={() => { vm.delNotice(scope.row) }}>删除</el-button> | ||
| 73 | </div> | ||
| 74 | case '2': | ||
| 75 | return <div> | ||
| 76 | <el-button type="text" onClick={() => { vm.viewDetail(scope.row) }}>查看</el-button> | ||
| 77 | <el-button type="text" icon="el-icon-edit-outline" onClick={() => { vm.toUnPublish(scope.row) }}>取消发布</el-button> | ||
| 78 | </div> | ||
| 79 | } | ||
| 80 | } | ||
| 81 | } | ||
| 82 | ] | ||
| 83 | } | ||
| 84 | |||
| 85 | ywlys () { | ||
| 86 | return [ | ||
| 87 | { value: 1, label: "办事大厅" }, | ||
| 88 | { value: 2, label: "微信小程序" }, | ||
| 89 | { value: 3, label: "法院端" }, | ||
| 90 | { value: 4, label: "银行端" }, | ||
| 91 | ] | ||
| 92 | } | ||
| 93 | |||
| 94 | } | ||
| 95 | let datas = new data() | ||
| 96 | export { | ||
| 97 | datas, | ||
| 98 | sendThis | ||
| 99 | } |
| ... | @@ -138,7 +138,8 @@ export default { | ... | @@ -138,7 +138,8 @@ export default { |
| 138 | }, | 138 | }, |
| 139 | methods: { | 139 | methods: { |
| 140 | updateDetail (value) { | 140 | updateDetail (value) { |
| 141 | this.tableDataList[this.dataIndex] = value | 141 | this.tableDataList[this.dataIndex] = value; |
| 142 | console.log(this.tableDataList); | ||
| 142 | this.key++ | 143 | this.key++ |
| 143 | this.$emit('upDateQlrxxList', this.tableDataList) | 144 | this.$emit('upDateQlrxxList', this.tableDataList) |
| 144 | }, | 145 | }, | ... | ... |
| ... | @@ -4,7 +4,7 @@ | ... | @@ -4,7 +4,7 @@ |
| 4 | <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="120px"> | 4 | <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="120px"> |
| 5 | <el-row> | 5 | <el-row> |
| 6 | <el-col :span="8"> | 6 | <el-col :span="8"> |
| 7 | <el-form-item label="权利人类型" prop="qlrlx"> | 7 | <el-form-item label="权利人类型" prop="sqrlx"> |
| 8 | <el-select clearable v-model="ruleForm.sqrlx" class="width100" placeholder="请选择"> | 8 | <el-select clearable v-model="ruleForm.sqrlx" class="width100" placeholder="请选择"> |
| 9 | <el-option v-for="item in dictData['A36']" :key="item.dcode" :label="item.dname" :value="item.dcode"> | 9 | <el-option v-for="item in dictData['A36']" :key="item.dcode" :label="item.dname" :value="item.dcode"> |
| 10 | </el-option> | 10 | </el-option> |
| ... | @@ -151,7 +151,7 @@ export default { | ... | @@ -151,7 +151,7 @@ export default { |
| 151 | return { | 151 | return { |
| 152 | myValue: this.value, | 152 | myValue: this.value, |
| 153 | ruleForm: { | 153 | ruleForm: { |
| 154 | qlrlx: '', | 154 | sqrlx: '', |
| 155 | sqrmc: '', | 155 | sqrmc: '', |
| 156 | zjzl: '', | 156 | zjzl: '', |
| 157 | zjh: '', | 157 | zjh: '', |
| ... | @@ -172,7 +172,7 @@ export default { | ... | @@ -172,7 +172,7 @@ export default { |
| 172 | dlrzjh: '' | 172 | dlrzjh: '' |
| 173 | }, | 173 | }, |
| 174 | rules: { | 174 | rules: { |
| 175 | qlrlx: [ | 175 | sqrlx: [ |
| 176 | { required: true, message: '权利人类型', trigger: 'change' } | 176 | { required: true, message: '权利人类型', trigger: 'change' } |
| 177 | ], | 177 | ], |
| 178 | sqrmc: [ | 178 | sqrmc: [ | ... | ... |
| ... | @@ -46,6 +46,10 @@ | ... | @@ -46,6 +46,10 @@ |
| 46 | </el-form-item> | 46 | </el-form-item> |
| 47 | </el-col> | 47 | </el-col> |
| 48 | </el-row> | 48 | </el-row> |
| 49 | <el-row style="text-align:center"> | ||
| 50 | <el-button type="primary" @click="onSubmit">确定</el-button> | ||
| 51 | <el-button>取消</el-button> | ||
| 52 | </el-row> | ||
| 49 | </el-form> | 53 | </el-form> |
| 50 | </div> | 54 | </div> |
| 51 | </template> | 55 | </template> |
| ... | @@ -97,10 +101,13 @@ export default { | ... | @@ -97,10 +101,13 @@ export default { |
| 97 | this.loadGrid(); | 101 | this.loadGrid(); |
| 98 | }, | 102 | }, |
| 99 | methods: { | 103 | methods: { |
| 104 | onSubmit () { | ||
| 105 | |||
| 106 | }, | ||
| 100 | fetchData () { }, | 107 | fetchData () { }, |
| 101 | //列表初始化 | 108 | //列表初始化 |
| 102 | loadGrid () { | 109 | loadGrid () { |
| 103 | getUnclaimedBdcqz({bsmSlsq:this.formData.bsmSlsq}).then(res => { | 110 | getUnclaimedBdcqz({ bsmSlsq: this.formData.bsmSlsq }).then(res => { |
| 104 | if (res.code === 200) { | 111 | if (res.code === 200) { |
| 105 | this.tableData.data = res.result; | 112 | this.tableData.data = res.result; |
| 106 | } | 113 | } | ... | ... |
| ... | @@ -2,7 +2,8 @@ export default { | ... | @@ -2,7 +2,8 @@ export default { |
| 2 | data () { | 2 | data () { |
| 3 | return { | 3 | return { |
| 4 | isSearch: false, | 4 | isSearch: false, |
| 5 | searchList: [] | 5 | searchList: [], |
| 6 | otherForm: {} | ||
| 6 | } | 7 | } |
| 7 | }, | 8 | }, |
| 8 | methods: { | 9 | methods: { |
| ... | @@ -10,14 +11,24 @@ export default { | ... | @@ -10,14 +11,24 @@ export default { |
| 10 | this.isSearch = true | 11 | this.isSearch = true |
| 11 | }, | 12 | }, |
| 12 | getSearch (val) { | 13 | getSearch (val) { |
| 14 | console.log(val, 222222222222); | ||
| 15 | this.otherForm = val | ||
| 13 | let obj = { ywlymc: '业务来源', qllxmc: '权利类型', djlxmc: '登记类型', ywh: '业务号', sqywmc: '申请业务名称', qlrmc: '权利人', ywrmc: '义务人', slsj: '受理时间' } | 16 | let obj = { ywlymc: '业务来源', qllxmc: '权利类型', djlxmc: '登记类型', ywh: '业务号', sqywmc: '申请业务名称', qlrmc: '权利人', ywrmc: '义务人', slsj: '受理时间' } |
| 14 | this.searchList = Object.entries(val).map((item) => { | 17 | this.searchList = Object.entries({ ...this.searchForm, ...val }).map((item) => { |
| 15 | const [name, value] = item | 18 | const [name, value] = item |
| 16 | if (value) return { name: obj[name], value } | 19 | if (value) return { name: obj[name], value } |
| 17 | }).filter(Boolean) | 20 | }).filter(Boolean) |
| 18 | }, | 21 | }, |
| 19 | hanldeCleanAll () { | 22 | hanldeCleanAll () { |
| 23 | this.searchForm = {} | ||
| 24 | this.queryForm = { | ||
| 25 | ywly: "", | ||
| 26 | qllx: "", | ||
| 27 | djlx: "", | ||
| 28 | ywh: "" | ||
| 29 | } | ||
| 20 | this.searchList = [] | 30 | this.searchList = [] |
| 31 | this.queryClick() | ||
| 21 | } | 32 | } |
| 22 | } | 33 | } |
| 23 | } | 34 | } | ... | ... |
| ... | @@ -71,8 +71,9 @@ export default { | ... | @@ -71,8 +71,9 @@ export default { |
| 71 | }, | 71 | }, |
| 72 | submitForm () { | 72 | submitForm () { |
| 73 | this.$emit('getSearch', this.ruleForm) | 73 | this.$emit('getSearch', this.ruleForm) |
| 74 | this.$refs['ruleForm'].resetFields() | 74 | console.log(this.ruleForm); |
| 75 | this.$emit('input', false) | 75 | this.$emit('input', false) |
| 76 | this.$refs['ruleForm'].resetFields() | ||
| 76 | } | 77 | } |
| 77 | } | 78 | } |
| 78 | } | 79 | } | ... | ... |
| ... | @@ -5,7 +5,8 @@ | ... | @@ -5,7 +5,8 @@ |
| 5 | <el-row> | 5 | <el-row> |
| 6 | <el-col :span="5"> | 6 | <el-col :span="5"> |
| 7 | <el-form-item label="业务来源"> | 7 | <el-form-item label="业务来源"> |
| 8 | <el-select v-model="queryForm.ywly" class="width100" filterable clearable placeholder="请选择业务来源"> | 8 | <el-select v-model="queryForm.ywly" class="width100" filterable |
| 9 | @change="handleSelect('ywly', 'ywlymc', 'ywly')" clearable placeholder="请选择业务来源"> | ||
| 9 | <el-option v-for="item in dictData['ywly']" :key="item.dcode" :label="item.dname" :value="item.dcode"> | 10 | <el-option v-for="item in dictData['ywly']" :key="item.dcode" :label="item.dname" :value="item.dcode"> |
| 10 | </el-option> | 11 | </el-option> |
| 11 | </el-select> | 12 | </el-select> |
| ... | @@ -13,7 +14,8 @@ | ... | @@ -13,7 +14,8 @@ |
| 13 | </el-col> | 14 | </el-col> |
| 14 | <el-col :span="5"> | 15 | <el-col :span="5"> |
| 15 | <el-form-item label="权利类型"> | 16 | <el-form-item label="权利类型"> |
| 16 | <el-select v-model="queryForm.qllx" class="width100" filterable clearable placeholder="请选择权利类型"> | 17 | <el-select v-model="queryForm.qllx" class="width100" @change="handleSelect('A8', 'qllxmc', 'qllx')" |
| 18 | filterable clearable placeholder="请选择权利类型"> | ||
| 17 | <el-option v-for="item in dictData['A8']" :key="item.dcode" :label="item.dname" :value="item.dcode"> | 19 | <el-option v-for="item in dictData['A8']" :key="item.dcode" :label="item.dname" :value="item.dcode"> |
| 18 | </el-option> | 20 | </el-option> |
| 19 | </el-select> | 21 | </el-select> |
| ... | @@ -21,7 +23,8 @@ | ... | @@ -21,7 +23,8 @@ |
| 21 | </el-col> | 23 | </el-col> |
| 22 | <el-col :span="5"> | 24 | <el-col :span="5"> |
| 23 | <el-form-item label="登记类型"> | 25 | <el-form-item label="登记类型"> |
| 24 | <el-select v-model="queryForm.djlx" class="width100" filterable clearable placeholder="请选择登记类型"> | 26 | <el-select v-model="queryForm.djlx" class="width100" @change="handleSelect('A21', 'djlxmc', 'djlx')" |
| 27 | filterable clearable placeholder="请选择登记类型"> | ||
| 25 | <el-option v-for="item in dictData['A21']" :key="item.dcode" :label="item.dname" :value="item.dcode"> | 28 | <el-option v-for="item in dictData['A21']" :key="item.dcode" :label="item.dname" :value="item.dcode"> |
| 26 | </el-option> | 29 | </el-option> |
| 27 | </el-select> | 30 | </el-select> |
| ... | @@ -86,6 +89,12 @@ export default { | ... | @@ -86,6 +89,12 @@ export default { |
| 86 | djlx: "", | 89 | djlx: "", |
| 87 | ywh: "", | 90 | ywh: "", |
| 88 | }, | 91 | }, |
| 92 | searchForm: { | ||
| 93 | ywlymc: '', | ||
| 94 | qllxmc: '', | ||
| 95 | djlxmc: '', | ||
| 96 | ywh: '' | ||
| 97 | }, | ||
| 89 | tableData: { | 98 | tableData: { |
| 90 | total: 0, | 99 | total: 0, |
| 91 | columns: datas.columns(), | 100 | columns: datas.columns(), |
| ... | @@ -105,9 +114,19 @@ export default { | ... | @@ -105,9 +114,19 @@ export default { |
| 105 | } | 114 | } |
| 106 | }, | 115 | }, |
| 107 | methods: { | 116 | methods: { |
| 117 | handleSelect (bs, mc, code) { | ||
| 118 | let that = this | ||
| 119 | this.dictData[bs].forEach(item => { | ||
| 120 | if (item.dcode == this.queryForm[code]) { | ||
| 121 | this.searchForm[mc] = item.dname | ||
| 122 | } | ||
| 123 | }) | ||
| 124 | }, | ||
| 108 | // 列表渲染接口 | 125 | // 列表渲染接口 |
| 109 | queryClick () { | 126 | queryClick () { |
| 110 | this.$startLoading() | 127 | this.$startLoading() |
| 128 | this.searchForm.ywh = this.queryForm.ywh | ||
| 129 | this.getSearch() | ||
| 111 | searchTaskToDo({ ...this.queryForm, ...this.pageData }).then(res => { | 130 | searchTaskToDo({ ...this.queryForm, ...this.pageData }).then(res => { |
| 112 | this.$endLoading() | 131 | this.$endLoading() |
| 113 | if (res.code === 200) { | 132 | if (res.code === 200) { |
| ... | @@ -125,8 +144,8 @@ export default { | ... | @@ -125,8 +144,8 @@ export default { |
| 125 | } | 144 | } |
| 126 | }) | 145 | }) |
| 127 | }, | 146 | }, |
| 147 | |||
| 128 | handelItem (index) { | 148 | handelItem (index) { |
| 129 | console.log(index); | ||
| 130 | this.searchList.splice(index, 1) | 149 | this.searchList.splice(index, 1) |
| 131 | }, | 150 | }, |
| 132 | handleSort (val) { | 151 | handleSort (val) { | ... | ... |
| ... | @@ -145,7 +145,7 @@ | ... | @@ -145,7 +145,7 @@ |
| 145 | </el-form-item> | 145 | </el-form-item> |
| 146 | </el-col> | 146 | </el-col> |
| 147 | </el-row> | 147 | </el-row> |
| 148 | <InformationTable :tableData="ruleForm.qlrList" :viewtype="$route.query.viewtype" :gyfs="ruleForm.slywxx.gyfs" /> | 148 | <InformationTable :tableData="ruleForm.qlrList" @upDateQlrxxList='upDateQlrxxList' :viewtype="$route.query.viewtype" :gyfs="ruleForm.slywxx.gyfs" /> |
| 149 | <div class="slxx_title title-block"> | 149 | <div class="slxx_title title-block"> |
| 150 | 登记原因 | 150 | 登记原因 |
| 151 | <div class="triangle"></div> | 151 | <div class="triangle"></div> | ... | ... |
| ... | @@ -82,6 +82,9 @@ export default { | ... | @@ -82,6 +82,9 @@ export default { |
| 82 | closeDialog () { | 82 | closeDialog () { |
| 83 | this.$emit("closeDialog"); | 83 | this.$emit("closeDialog"); |
| 84 | }, | 84 | }, |
| 85 | queryClick () { | ||
| 86 | this.fetchData() | ||
| 87 | }, | ||
| 85 | fetchData () { | 88 | fetchData () { |
| 86 | this.queryForm.sqywbm = this.djywbm; | 89 | this.queryForm.sqywbm = this.djywbm; |
| 87 | selectZdjbxx({ ...this.queryForm, ...this.pageData }).then((res) => { | 90 | selectZdjbxx({ ...this.queryForm, ...this.pageData }).then((res) => { | ... | ... |
-
Please register or sign in to post a comment