Merge branch 'master' into dev
Showing
21 changed files
with
2483 additions
and
1644 deletions
| ... | @@ -4,6 +4,6 @@ | ... | @@ -4,6 +4,6 @@ |
| 4 | "CODE": "BDCJGPT", | 4 | "CODE": "BDCJGPT", |
| 5 | "SERVERAPI": "/bdcsjsb", | 5 | "SERVERAPI": "/bdcsjsb", |
| 6 | "calcHeight": 160, | 6 | "calcHeight": 160, |
| 7 | "echartTextColor": "#FFFFFF", | 7 | "echartTextColor": "#4A4A4A", |
| 8 | "MANAGEMENTAPI": "http://192.168.2.38:8090/management" | 8 | "MANAGEMENTAPI": "http://192.168.2.38:8090/management" |
| 9 | } | 9 | } | ... | ... |
| 1 | .itemForm { | ||
| 2 | position: relative; | ||
| 3 | padding: 10px; | ||
| 4 | |||
| 5 | /deep/.el-select { | ||
| 6 | width: 100%; | ||
| 7 | } | ||
| 8 | |||
| 9 | /deep/.el-form-item__error { | ||
| 10 | right: 25px; | ||
| 11 | top: 15px; | ||
| 12 | text-align: right; | ||
| 13 | pointer-events: none; | ||
| 14 | } | ||
| 15 | |||
| 16 | /deep/.el-date-editor { | ||
| 17 | width: 100%; | ||
| 18 | } | ||
| 19 | |||
| 20 | /deep/.el-date-editor--date { | ||
| 21 | width: 100%; | ||
| 22 | } | ||
| 23 | |||
| 24 | /deep/.el-cascader { | ||
| 25 | width: 100%; | ||
| 26 | } | ||
| 27 | |||
| 28 | // table 样式 | ||
| 29 | /deep/.el-form-item__label { | ||
| 30 | border-right: none; | ||
| 31 | text-align: center; | ||
| 32 | padding: 0; | ||
| 33 | color: #05bbdb; | ||
| 34 | line-height: 16px; | ||
| 35 | font-size: 12px; | ||
| 36 | margin-top: 8px !important; | ||
| 37 | } | ||
| 38 | |||
| 39 | /deep/.el-form-item__content { | ||
| 40 | display: flex; | ||
| 41 | margin-right: -1px; | ||
| 42 | } | ||
| 43 | |||
| 44 | .obligee-item-name, | ||
| 45 | .receivingInfo-item-name, | ||
| 46 | .auditInfo-item-name { | ||
| 47 | background: url("~@/image/itembg.png") no-repeat; | ||
| 48 | background-size: 100% 100%; | ||
| 49 | color: #FFFFFF; | ||
| 50 | } | ||
| 51 | |||
| 52 | /deep/.el-textarea__inner { | ||
| 53 | margin: 5px; | ||
| 54 | width: 96%; | ||
| 55 | background: none; | ||
| 56 | color: #FFFFFF; | ||
| 57 | border-radius: 2px; | ||
| 58 | border: 1px solid #6BC1FC; | ||
| 59 | } | ||
| 60 | |||
| 61 | /deep/.el-input-number { | ||
| 62 | width: 100%; | ||
| 63 | } | ||
| 64 | |||
| 65 | /deep/.el-input-number__increase { | ||
| 66 | background: #05275B; | ||
| 67 | color: #FFFFFF; | ||
| 68 | border: none; | ||
| 69 | right: 7px; | ||
| 70 | top: 2px; | ||
| 71 | } | ||
| 72 | |||
| 73 | /deep/.el-input-number__decrease { | ||
| 74 | background: #05275B; | ||
| 75 | color: #FFFFFF; | ||
| 76 | border: none; | ||
| 77 | right: 7px; | ||
| 78 | bottom: 10px; | ||
| 79 | } | ||
| 80 | |||
| 81 | /deep/.el-input__inner { | ||
| 82 | margin: 5px; | ||
| 83 | width: 96%; | ||
| 84 | background: #05275B; | ||
| 85 | border-radius: 2px; | ||
| 86 | border: 1px solid #6BC1FC; | ||
| 87 | text-align: left; | ||
| 88 | |||
| 89 | } | ||
| 90 | |||
| 91 | /deep/.el-form-item { | ||
| 92 | margin-bottom: 0; | ||
| 93 | margin-top: -1px; | ||
| 94 | } | ||
| 95 | |||
| 96 | .item-label { | ||
| 97 | display: flex; | ||
| 98 | align-items: flex-end; | ||
| 99 | flex-direction: column; | ||
| 100 | font-size: 12px; | ||
| 101 | flex: 0 0 90px; | ||
| 102 | margin-right: 3px; | ||
| 103 | |||
| 104 | p { | ||
| 105 | line-height: 16px; | ||
| 106 | white-space: nowrap; | ||
| 107 | text-align: right; | ||
| 108 | } | ||
| 109 | |||
| 110 | p:nth-child(1) { | ||
| 111 | position: relative; | ||
| 112 | right: 5px; | ||
| 113 | } | ||
| 114 | } | ||
| 115 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1 | <!-- | 1 | <!-- |
| 2 | * @Description: | 2 | * @Description: |
| 3 | * @Autor: renchao | 3 | * @Autor: renchao |
| 4 | * @LastEditTime: 2023-03-17 10:25:19 | 4 | * @LastEditTime: 2023-03-17 10:25:19 |
| 5 | --> | 5 | --> |
| ... | @@ -18,65 +18,29 @@ | ... | @@ -18,65 +18,29 @@ |
| 18 | </div> | 18 | </div> |
| 19 | </template> | 19 | </template> |
| 20 | <script> | 20 | <script> |
| 21 | import { getReceiveDataReportResult } from "@/api/dataReport.js"; | 21 | import { getReceiveDataReportResult } from "@/api/dataReport.js"; |
| 22 | export default { | 22 | export default { |
| 23 | components: {}, | 23 | components: {}, |
| 24 | props: { | 24 | props: { |
| 25 | formData: { | 25 | formData: { |
| 26 | type: Object, | 26 | type: Object, |
| 27 | default: {} | 27 | default: {} |
| 28 | } | ||
| 29 | }, | ||
| 30 | data () { | ||
| 31 | return { | ||
| 32 | REPMSGXML: '', | ||
| 33 | ERRORINFO: '', | ||
| 34 | } | ||
| 35 | }, | ||
| 36 | created () { | ||
| 37 | getReceiveDataReportResult(this.formData.bsmReport).then(res => { | ||
| 38 | let data = res.result | ||
| 39 | this.REPMSGXML = data.REPMSGXML | ||
| 40 | this.ERRORINFO = data.ERRORINFO | ||
| 41 | }) | ||
| 28 | } | 42 | } |
| 29 | }, | ||
| 30 | data () { | ||
| 31 | return { | ||
| 32 | REPMSGXML: '', | ||
| 33 | ERRORINFO: '', | ||
| 34 | } | ||
| 35 | }, | ||
| 36 | created () { | ||
| 37 | getReceiveDataReportResult(this.formData.bsmReport).then(res => { | ||
| 38 | let data = res.result | ||
| 39 | this.REPMSGXML = data.REPMSGXML | ||
| 40 | this.ERRORINFO = data.ERRORINFO | ||
| 41 | }) | ||
| 42 | } | 43 | } |
| 43 | } | ||
| 44 | </script> | 44 | </script> |
| 45 | <style scoped lang='scss'> | 45 | <style scoped lang='scss'> |
| 46 | .result { | ||
| 47 | padding: 15px; | ||
| 48 | height: 100%; | ||
| 49 | |||
| 50 | /deep/.el-textarea__inner { | ||
| 51 | height: 50%; | ||
| 52 | color: #ffffff; | ||
| 53 | border: none !important; | ||
| 54 | color: #ffffff; | ||
| 55 | } | ||
| 56 | |||
| 57 | &-con { | ||
| 58 | background: #04275B; | ||
| 59 | border-radius: 2px; | ||
| 60 | padding: 10px; | ||
| 61 | box-sizing: border-box; | ||
| 62 | height: 49%; | ||
| 63 | |||
| 64 | p { | ||
| 65 | color: #2997E8; | ||
| 66 | font-size: 14px; | ||
| 67 | position: relative; | ||
| 68 | padding-left: 10px; | ||
| 69 | } | ||
| 70 | |||
| 71 | p::before { | ||
| 72 | position: absolute; | ||
| 73 | content: ''; | ||
| 74 | width: 3px; | ||
| 75 | height: 10px; | ||
| 76 | background-color: #2997E8; | ||
| 77 | left: 0; | ||
| 78 | top: 3px; | ||
| 79 | } | ||
| 80 | } | ||
| 81 | } | ||
| 82 | </style> | 46 | </style> | ... | ... |
| 1 | <template> | 1 | <template> |
| 2 | <el-dialog :close-on-click-modal="false" top="0" @close="closeDialog" custom-class="dialogBox dataReporting editDialogBox mainCenter" | 2 | <el-dialog :close-on-click-modal="false" top="0" @close="closeDialog" |
| 3 | :visible.sync="dialogVisible" width="92%"> | 3 | custom-class="dialogBox dataReporting editDialogBox sbdialog commonDialog mainCenter" :visible.sync="dialogVisible" |
| 4 | width="92%"> | ||
| 4 | <div slot="title" class="dialog_title" ref="dialogTitle"> | 5 | <div slot="title" class="dialog_title" ref="dialogTitle"> |
| 5 | {{ title || '详情' }} | 6 | {{ title || '详情' }} |
| 6 | </div> | 7 | </div> |
| ... | @@ -111,7 +112,7 @@ | ... | @@ -111,7 +112,7 @@ |
| 111 | </div> | 112 | </div> |
| 112 | </div> | 113 | </div> |
| 113 | <div class="editDialogBox-box JsonEditor" v-if="titleName == 'xml'"> | 114 | <div class="editDialogBox-box JsonEditor" v-if="titleName == 'xml'"> |
| 114 | <JsonEditor :resultInfo="resultInfo" /> | 115 | <JsonEditor class="editXML" :resultInfo="resultInfo" /> |
| 115 | </div> | 116 | </div> |
| 116 | <div class="editDialogBox-box JsonEditor" v-if="titleName == 'xyjg'"> | 117 | <div class="editDialogBox-box JsonEditor" v-if="titleName == 'xyjg'"> |
| 117 | <Xyjg :form-data='dataReport'></Xyjg> | 118 | <Xyjg :form-data='dataReport'></Xyjg> |
| ... | @@ -128,218 +129,209 @@ | ... | @@ -128,218 +129,209 @@ |
| 128 | </template> | 129 | </template> |
| 129 | 130 | ||
| 130 | <script> | 131 | <script> |
| 131 | import axios from "axios"; | 132 | import axios from "axios"; |
| 132 | import SERVER from '@/api/config' | 133 | import SERVER from '@/api/config' |
| 133 | const urlHeader = SERVER.SERVERAPI + '/rest/sjsb/DataReport/' | 134 | const urlHeader = SERVER.SERVERAPI + '/rest/sjsb/DataReport/' |
| 134 | import { mapGetters } from "vuex"; | 135 | import { mapGetters } from "vuex"; |
| 135 | import JsonEditor from "@/components/JsonEditor.vue"; | 136 | import JsonEditor from "@/components/JsonEditor.vue"; |
| 136 | import Xyjg from "./Result"; | 137 | import Xyjg from "./Result"; |
| 137 | import { getTabsDetail, getXml, getReportDetail, restartGenerateXml, edit } from "@/api/dataReport.js"; | 138 | import { getTabsDetail, getXml, getReportDetail, restartGenerateXml, edit } from "@/api/dataReport.js"; |
| 138 | export default { | 139 | export default { |
| 139 | components: { JsonEditor, Xyjg }, | 140 | components: { JsonEditor, Xyjg }, |
| 140 | props: { | 141 | props: { |
| 141 | title: { | 142 | title: { |
| 142 | type: String, | 143 | type: String, |
| 143 | default: '' | 144 | default: '' |
| 144 | }, | 145 | }, |
| 145 | tabsActiveName: { | 146 | tabsActiveName: { |
| 146 | type: String, | 147 | type: String, |
| 147 | default: '' | 148 | default: '' |
| 149 | }, | ||
| 150 | visiableXml: { | ||
| 151 | type: Boolean, | ||
| 152 | default: false | ||
| 153 | } | ||
| 154 | }, | ||
| 155 | |||
| 156 | computed: { | ||
| 157 | ...mapGetters(["dicData"]), | ||
| 158 | }, | ||
| 159 | data () { | ||
| 160 | return { | ||
| 161 | key: 0, | ||
| 162 | resultInfo: '', | ||
| 163 | |||
| 164 | titleName: 'sjmx', | ||
| 165 | // 报文list | ||
| 166 | bwoptions: [], | ||
| 167 | dataReport: {}, | ||
| 168 | index: 0, | ||
| 169 | bsmYwsjb: "", | ||
| 170 | ruleFormList: { | ||
| 171 | BizMsgId: "", // 业务报文ID | ||
| 172 | ASID: "", // ASID | ||
| 173 | AreaCode: "", //行政区划编码 | ||
| 174 | PreEstateNum: "", //上次不动产单元号 | ||
| 175 | RecType: "", // 业务编码 | ||
| 176 | RightType: "", // 权利类型 | ||
| 177 | RegType: "", //登记类型 | ||
| 178 | CertCount: "", //不动产权证书数量 | ||
| 179 | createDate: "", //创建时间 | ||
| 180 | RecFlowID: "", // 业务流水号 | ||
| 181 | ParcelID: "", //宗地/宗海代码 | ||
| 182 | ProofCount: "", //证明数量 | ||
| 183 | EstateNum: "", // 不动产单元号 | ||
| 184 | RegOrgID: "", // 登记机构 | ||
| 185 | PreCertID: "", //次不动产权证号/不动产登记证明 | ||
| 148 | }, | 186 | }, |
| 149 | visiableXml: { | 187 | images: require("./images/success.gif"), |
| 150 | type: Boolean, | 188 | dialogVisible: false, |
| 151 | default: false | 189 | activeName: undefined, |
| 190 | editItem: "", | ||
| 191 | headerList: [], | ||
| 192 | dataTable: "", | ||
| 193 | }; | ||
| 194 | }, | ||
| 195 | methods: { | ||
| 196 | dicStatus (val, code) { | ||
| 197 | let data = this.dicData[code], | ||
| 198 | name = '' | ||
| 199 | if (data) { | ||
| 200 | data.map((item) => { | ||
| 201 | if (item.DCODE == val) { | ||
| 202 | name = item.DNAME | ||
| 203 | } | ||
| 204 | }) | ||
| 205 | return name | ||
| 152 | } | 206 | } |
| 153 | }, | 207 | }, |
| 154 | 208 | handleTitleTab (val) { | |
| 155 | computed: { | ||
| 156 | ...mapGetters(["dicData"]), | ||
| 157 | }, | 209 | }, |
| 158 | data () { | 210 | isShow (item) { |
| 159 | return { | 211 | this.$set(this.bwoptions, 0, { |
| 160 | key: 0, | 212 | value: item.bizMsgid, |
| 161 | resultInfo: '', | 213 | label: item.bizMsgid, |
| 162 | 214 | }) | |
| 163 | titleName: 'sjmx', | 215 | this.$set(this.bwoptions, 1, { |
| 164 | // 报文list | 216 | value: item.bizMsgid + 'CBXZ', |
| 165 | bwoptions: [], | 217 | label: item.bizMsgid + 'CBXZ', |
| 166 | dataReport: {}, | 218 | }) |
| 167 | index: 0, | 219 | this.$set(this.bwoptions, 2, { |
| 168 | bsmYwsjb: "", | 220 | value: item.bizMsgid + 'BBXZ', |
| 169 | ruleFormList: { | 221 | label: item.bizMsgid + 'BBXZ', |
| 170 | BizMsgId: "", // 业务报文ID | 222 | }) |
| 171 | ASID: "", // ASID | 223 | this.titleName = 'sjmx'; |
| 172 | AreaCode: "", //行政区划编码 | 224 | this.dialogVisible = true; |
| 173 | PreEstateNum: "", //上次不动产单元号 | 225 | //获取表头列表 |
| 174 | RecType: "", // 业务编码 | 226 | this._getList(item) |
| 175 | RightType: "", // 权利类型 | 227 | //不动产数据查询上报详情 |
| 176 | RegType: "", //登记类型 | 228 | getReportDetail({ bsmReport: item.bsmSjsb || item.bsmReport }).then((res) => { |
| 177 | CertCount: "", //不动产权证书数量 | 229 | if (res.code == 200) { |
| 178 | createDate: "", //创建时间 | 230 | this.dataReport = res.result; |
| 179 | RecFlowID: "", // 业务流水号 | 231 | } |
| 180 | ParcelID: "", //宗地/宗海代码 | 232 | }) |
| 181 | ProofCount: "", //证明数量 | 233 | // 获取xml |
| 182 | EstateNum: "", // 不动产单元号 | 234 | if (this.visiableXml) { |
| 183 | RegOrgID: "", // 登记机构 | 235 | getXml(item.bizMsgid).then((res) => { |
| 184 | PreCertID: "", //次不动产权证号/不动产登记证明 | 236 | this.resultInfo = res.message |
| 185 | }, | 237 | }) |
| 186 | images: require("./images/success.gif"), | 238 | } |
| 187 | dialogVisible: false, | 239 | }, |
| 188 | activeName: undefined, | 240 | // 获取列表接口 |
| 189 | editItem: "", | 241 | _getList (data) { |
| 190 | headerList: [], | 242 | getTabsDetail({ bsmReport: data.bsmReport || data.bsmSjsb }).then((res) => { |
| 191 | dataTable: "", | 243 | if (res.code == 200) { |
| 192 | }; | 244 | this.headerList = res.result; |
| 245 | this.activeName = this.tabsActiveName == '' ? res.result[0].soleurl : this.tabsActiveName | ||
| 246 | this.bsmYwsjb = this.headerList[0].bsmYwsjb; | ||
| 247 | this.editItem = this.loadView(this.activeName); | ||
| 248 | } | ||
| 249 | }); | ||
| 250 | }, | ||
| 251 | changeList (val) { | ||
| 252 | let _index = val.index; | ||
| 253 | if (_index > this.index) { | ||
| 254 | } | ||
| 255 | this.index = _index; | ||
| 256 | this.bsmYwsjb = this.headerList[val.index].bsmYwsjb; | ||
| 257 | this.editItem = this.loadView(this.activeName); | ||
| 258 | // this.diaData.list.forEach((item) => { | ||
| 259 | // if (item.soleurl == this.activeName) { | ||
| 260 | // this.dataTable = item.dataTable; | ||
| 261 | // } | ||
| 262 | // }); | ||
| 263 | }, | ||
| 264 | loadView (view) { | ||
| 265 | return (r) => | ||
| 266 | require.ensure([], () => r(require(`@/components/Business/${view}.vue`))); | ||
| 193 | }, | 267 | }, |
| 194 | methods: { | 268 | closeDialog () { |
| 195 | dicStatus (val, code) { | 269 | this.dialogVisible = false; |
| 196 | let data = this.dicData[code], | 270 | //关闭弹框时将tabs项置空 |
| 197 | name = '' | 271 | this.editItem = ""; |
| 198 | if (data) { | 272 | this.headerList = []; |
| 199 | data.map((item) => { | 273 | }, |
| 200 | if (item.DCODE == val) { | 274 | /** |
| 201 | name = item.DNAME | 275 | * @description: 提交 |
| 276 | * @author: renchao | ||
| 277 | */ | ||
| 278 | submitForm: _.debounce(async function () { | ||
| 279 | let _this = this | ||
| 280 | // 上报请求头修改 | ||
| 281 | try { | ||
| 282 | var headRes = await axios.post('/api' + urlHeader + 'edit', this.dataReport, | ||
| 283 | { | ||
| 284 | headers: { | ||
| 285 | 'Authorization': sessionStorage.getItem("token") || "" | ||
| 202 | } | 286 | } |
| 203 | }) | 287 | }) |
| 204 | return name | 288 | if (headRes.code == 200) { |
| 289 | _this._getList(_this.dataReport) | ||
| 205 | } | 290 | } |
| 206 | }, | 291 | } catch (error) { |
| 207 | handleTitleTab (val) { | 292 | this.$message({ |
| 208 | }, | 293 | message: '报文头修改出错', |
| 209 | isShow (item) { | 294 | type: 'error' |
| 210 | this.$set(this.bwoptions, 0, { | ||
| 211 | value: item.bizMsgid, | ||
| 212 | label: item.bizMsgid, | ||
| 213 | }) | 295 | }) |
| 214 | this.$set(this.bwoptions, 1, { | 296 | } |
| 215 | value: item.bizMsgid + 'CBXZ', | 297 | let listRes = await this.$refs["editItem"].handleUpdateForm() |
| 216 | label: item.bizMsgid + 'CBXZ', | 298 | if (headRes.data?.code == 200 && listRes == 200) { |
| 217 | }) | 299 | this.$message({ |
| 218 | this.$set(this.bwoptions, 2, { | 300 | message: '修改成功', |
| 219 | value: item.bizMsgid + 'BBXZ', | 301 | type: 'success' |
| 220 | label: item.bizMsgid + 'BBXZ', | ||
| 221 | }) | 302 | }) |
| 222 | this.titleName = 'sjmx'; | 303 | } |
| 223 | this.dialogVisible = true; | 304 | }, 500), |
| 224 | //获取表头列表 | 305 | /** |
| 225 | this._getList(item) | 306 | * @description: 重新上报 |
| 226 | //不动产数据查询上报详情 | 307 | * @author: renchao |
| 227 | getReportDetail({ bsmReport: item.bsmSjsb || item.bsmReport }).then((res) => { | 308 | */ |
| 228 | if (res.code == 200) { | 309 | handleResubmit () { |
| 229 | this.dataReport = res.result; | 310 | let _this = this |
| 230 | } | 311 | this.$confirm('重新生成报文,是否上报省厅?', '提示', { |
| 312 | confirmButtonText: '确定', | ||
| 313 | cancelButtonText: '取消', | ||
| 314 | type: 'warning' | ||
| 315 | }).then(() => { | ||
| 316 | createXml() | ||
| 317 | }).catch(() => { | ||
| 318 | this.$message({ | ||
| 319 | type: 'info', | ||
| 320 | message: '已取消删除' | ||
| 231 | }) | 321 | }) |
| 232 | // 获取xml | 322 | }) |
| 233 | if (this.visiableXml) { | 323 | function createXml () { |
| 234 | getXml(item.bizMsgid).then((res) => { | 324 | restartGenerateXml(_this.dataReport.bsmSjsb || _this.dataReport.bsmReport).then((res) => { |
| 235 | this.resultInfo = res.message | ||
| 236 | }) | ||
| 237 | } | ||
| 238 | }, | ||
| 239 | // 获取列表接口 | ||
| 240 | _getList (data) { | ||
| 241 | getTabsDetail({ bsmReport: data.bsmReport || data.bsmSjsb }).then((res) => { | ||
| 242 | if (res.code == 200) { | 325 | if (res.code == 200) { |
| 243 | this.headerList = res.result; | 326 | _this.resultInfo = res.message |
| 244 | this.activeName = this.tabsActiveName == '' ? res.result[0].soleurl : this.tabsActiveName | 327 | _this.$message({ |
| 245 | this.bsmYwsjb = this.headerList[0].bsmYwsjb; | 328 | message: '修改成功', |
| 246 | this.editItem = this.loadView(this.activeName); | 329 | type: 'success' |
| 247 | } | ||
| 248 | }); | ||
| 249 | }, | ||
| 250 | changeList (val) { | ||
| 251 | let _index = val.index; | ||
| 252 | if (_index > this.index) { | ||
| 253 | } | ||
| 254 | this.index = _index; | ||
| 255 | this.bsmYwsjb = this.headerList[val.index].bsmYwsjb; | ||
| 256 | this.editItem = this.loadView(this.activeName); | ||
| 257 | // this.diaData.list.forEach((item) => { | ||
| 258 | // if (item.soleurl == this.activeName) { | ||
| 259 | // this.dataTable = item.dataTable; | ||
| 260 | // } | ||
| 261 | // }); | ||
| 262 | }, | ||
| 263 | loadView (view) { | ||
| 264 | return (r) => | ||
| 265 | require.ensure([], () => r(require(`@/components/Business/${view}.vue`))); | ||
| 266 | }, | ||
| 267 | closeDialog () { | ||
| 268 | this.dialogVisible = false; | ||
| 269 | //关闭弹框时将tabs项置空 | ||
| 270 | this.editItem = ""; | ||
| 271 | this.headerList = []; | ||
| 272 | }, | ||
| 273 | /** | ||
| 274 | * @description: 提交 | ||
| 275 | * @author: renchao | ||
| 276 | */ | ||
| 277 | submitForm: _.debounce(async function () { | ||
| 278 | let _this = this | ||
| 279 | // 上报请求头修改 | ||
| 280 | try { | ||
| 281 | var headRes = await axios.post('/api' + urlHeader + 'edit', this.dataReport, | ||
| 282 | { | ||
| 283 | headers: { | ||
| 284 | 'Authorization': sessionStorage.getItem("token") || "" | ||
| 285 | } | ||
| 286 | }) | 330 | }) |
| 287 | if (headRes.code == 200) { | ||
| 288 | _this._getList(_this.dataReport) | ||
| 289 | } | 331 | } |
| 290 | } catch (error) { | ||
| 291 | this.$message({ | ||
| 292 | message: '报文头修改出错', | ||
| 293 | type: 'error' | ||
| 294 | }) | ||
| 295 | } | ||
| 296 | let listRes = await this.$refs["editItem"].handleUpdateForm() | ||
| 297 | if (headRes.data?.code == 200 && listRes == 200) { | ||
| 298 | this.$message({ | ||
| 299 | message: '修改成功', | ||
| 300 | type: 'success' | ||
| 301 | }) | ||
| 302 | } | ||
| 303 | }, 500), | ||
| 304 | /** | ||
| 305 | * @description: 重新上报 | ||
| 306 | * @author: renchao | ||
| 307 | */ | ||
| 308 | handleResubmit () { | ||
| 309 | let _this = this | ||
| 310 | this.$confirm('重新生成报文,是否上报省厅?', '提示', { | ||
| 311 | confirmButtonText: '确定', | ||
| 312 | cancelButtonText: '取消', | ||
| 313 | type: 'warning' | ||
| 314 | }).then(() => { | ||
| 315 | createXml() | ||
| 316 | }).catch(() => { | ||
| 317 | this.$message({ | ||
| 318 | type: 'info', | ||
| 319 | message: '已取消删除' | ||
| 320 | }) | ||
| 321 | }) | 332 | }) |
| 322 | function createXml () { | ||
| 323 | restartGenerateXml(_this.dataReport.bsmSjsb || _this.dataReport.bsmReport).then((res) => { | ||
| 324 | if (res.code == 200) { | ||
| 325 | _this.resultInfo = res.message | ||
| 326 | _this.$message({ | ||
| 327 | message: '修改成功', | ||
| 328 | type: 'success' | ||
| 329 | }) | ||
| 330 | } | ||
| 331 | }) | ||
| 332 | } | ||
| 333 | } | 333 | } |
| 334 | } | 334 | } |
| 335 | } | 335 | } |
| 336 | } | ||
| 336 | </script> | 337 | </script> |
| 337 | <style scoped lang="scss"> | ||
| 338 | /deep/.editDialogBox { | ||
| 339 | .el-dialog__header { | ||
| 340 | display: flex; | ||
| 341 | margin-bottom: 10px; | ||
| 342 | } | ||
| 343 | } | ||
| 344 | </style> | ||
| 345 | ... | ... |
| ... | @@ -12,15 +12,4 @@ export default { | ... | @@ -12,15 +12,4 @@ export default { |
| 12 | } | 12 | } |
| 13 | } | 13 | } |
| 14 | } | 14 | } |
| 15 | |||
| 16 | </script> | ||
| 17 | |||
| 18 | <style scoped lang="scss"> | ||
| 19 | /deep/.el-textarea__inner { | ||
| 20 | height: 67vh !important; | ||
| 21 | border: none !important; | ||
| 22 | background-color: #08346F !important; | ||
| 23 | color: #ffffff; | ||
| 24 | border: none !important; | ||
| 25 | } | ||
| 26 | </style> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 15 | </script> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file | ... | ... |
| ... | @@ -526,6 +526,14 @@ | ... | @@ -526,6 +526,14 @@ |
| 526 | border-radius: 2px; | 526 | border-radius: 2px; |
| 527 | border: 1px solid #6BC1FC; | 527 | border: 1px solid #6BC1FC; |
| 528 | margin: 0 18px 10px 18px; | 528 | margin: 0 18px 10px 18px; |
| 529 | |||
| 530 | // .el-form-item__label { | ||
| 531 | // color: #fff; | ||
| 532 | // } | ||
| 533 | |||
| 534 | // .el-form-item__content { | ||
| 535 | // color: #fff; | ||
| 536 | // } | ||
| 529 | } | 537 | } |
| 530 | 538 | ||
| 531 | .item-content-input { | 539 | .item-content-input { |
| ... | @@ -666,6 +674,14 @@ | ... | @@ -666,6 +674,14 @@ |
| 666 | 674 | ||
| 667 | // 登簿日志弹出框 | 675 | // 登簿日志弹出框 |
| 668 | .entryJournal { | 676 | .entryJournal { |
| 677 | .el-textarea__inner { | ||
| 678 | height: 67vh !important; | ||
| 679 | border: none !important; | ||
| 680 | background-color: #08346F !important; | ||
| 681 | color: #ffffff; | ||
| 682 | border: none !important; | ||
| 683 | } | ||
| 684 | |||
| 669 | .el-tabs__header { | 685 | .el-tabs__header { |
| 670 | margin: 0; | 686 | margin: 0; |
| 671 | } | 687 | } |
| ... | @@ -1112,4 +1128,121 @@ | ... | @@ -1112,4 +1128,121 @@ |
| 1112 | padding: 0px 120px 0px; | 1128 | padding: 0px 120px 0px; |
| 1113 | text-align: center; | 1129 | text-align: center; |
| 1114 | } | 1130 | } |
| 1115 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 1131 | } | ||
| 1132 | |||
| 1133 | // 权利人信息样式 | ||
| 1134 | .itemForm { | ||
| 1135 | position: relative; | ||
| 1136 | padding: 10px; | ||
| 1137 | |||
| 1138 | /deep/.el-select { | ||
| 1139 | width: 100%; | ||
| 1140 | } | ||
| 1141 | |||
| 1142 | /deep/.el-form-item__error { | ||
| 1143 | right: 25px; | ||
| 1144 | top: 15px; | ||
| 1145 | text-align: right; | ||
| 1146 | pointer-events: none; | ||
| 1147 | } | ||
| 1148 | |||
| 1149 | /deep/.el-date-editor { | ||
| 1150 | width: 100%; | ||
| 1151 | } | ||
| 1152 | |||
| 1153 | /deep/.el-date-editor--date { | ||
| 1154 | width: 100%; | ||
| 1155 | } | ||
| 1156 | |||
| 1157 | /deep/.el-cascader { | ||
| 1158 | width: 100%; | ||
| 1159 | } | ||
| 1160 | |||
| 1161 | // table 样式 | ||
| 1162 | /deep/.el-form-item__label { | ||
| 1163 | border-right: none; | ||
| 1164 | text-align: center; | ||
| 1165 | padding: 0; | ||
| 1166 | color: #05bbdb; | ||
| 1167 | line-height: 16px; | ||
| 1168 | font-size: 12px; | ||
| 1169 | margin-top: 8px !important; | ||
| 1170 | } | ||
| 1171 | |||
| 1172 | /deep/.el-form-item__content { | ||
| 1173 | display: flex; | ||
| 1174 | margin-right: -1px; | ||
| 1175 | } | ||
| 1176 | |||
| 1177 | .obligee-item-name, | ||
| 1178 | .receivingInfo-item-name, | ||
| 1179 | .auditInfo-item-name { | ||
| 1180 | background: url("~@/image/itembg.png") no-repeat; | ||
| 1181 | background-size: 100% 100%; | ||
| 1182 | color: #FFFFFF; | ||
| 1183 | } | ||
| 1184 | |||
| 1185 | /deep/.el-textarea__inner { | ||
| 1186 | margin: 5px; | ||
| 1187 | width: 96%; | ||
| 1188 | background: none; | ||
| 1189 | color: #FFFFFF; | ||
| 1190 | border-radius: 2px; | ||
| 1191 | border: 1px solid #6BC1FC; | ||
| 1192 | } | ||
| 1193 | |||
| 1194 | /deep/.el-input-number { | ||
| 1195 | width: 100%; | ||
| 1196 | } | ||
| 1197 | |||
| 1198 | /deep/.el-input-number__increase { | ||
| 1199 | background: #05275B; | ||
| 1200 | color: #FFFFFF; | ||
| 1201 | border: none; | ||
| 1202 | right: 7px; | ||
| 1203 | top: 2px; | ||
| 1204 | } | ||
| 1205 | |||
| 1206 | /deep/.el-input-number__decrease { | ||
| 1207 | background: #05275B; | ||
| 1208 | color: #FFFFFF; | ||
| 1209 | border: none; | ||
| 1210 | right: 7px; | ||
| 1211 | bottom: 10px; | ||
| 1212 | } | ||
| 1213 | |||
| 1214 | /deep/.el-input__inner { | ||
| 1215 | margin: 5px; | ||
| 1216 | width: 96%; | ||
| 1217 | background: #05275B; | ||
| 1218 | border-radius: 2px; | ||
| 1219 | border: 1px solid #6BC1FC; | ||
| 1220 | text-align: left; | ||
| 1221 | |||
| 1222 | } | ||
| 1223 | |||
| 1224 | /deep/.el-form-item { | ||
| 1225 | margin-bottom: 0; | ||
| 1226 | margin-top: -1px; | ||
| 1227 | } | ||
| 1228 | |||
| 1229 | .item-label { | ||
| 1230 | display: flex; | ||
| 1231 | align-items: flex-end; | ||
| 1232 | flex-direction: column; | ||
| 1233 | font-size: 12px; | ||
| 1234 | flex: 0 0 90px; | ||
| 1235 | margin-right: 3px; | ||
| 1236 | |||
| 1237 | p { | ||
| 1238 | line-height: 16px; | ||
| 1239 | white-space: nowrap; | ||
| 1240 | text-align: right; | ||
| 1241 | } | ||
| 1242 | |||
| 1243 | p:nth-child(1) { | ||
| 1244 | position: relative; | ||
| 1245 | right: 5px; | ||
| 1246 | } | ||
| 1247 | } | ||
| 1248 | } | ... | ... |
| ... | @@ -85,9 +85,7 @@ input[type="number"] { | ... | @@ -85,9 +85,7 @@ input[type="number"] { |
| 85 | // to fixed https://github.com/ElemeFE/element/issues/2461 | 85 | // to fixed https://github.com/ElemeFE/element/issues/2461 |
| 86 | // refine element ui upload | 86 | // refine element ui upload |
| 87 | .el-input.is-disabled .el-input__inner { | 87 | .el-input.is-disabled .el-input__inner { |
| 88 | color: #FFFFFF !important; | ||
| 89 | background-color: transparent !important; | 88 | background-color: transparent !important; |
| 90 | border: 1px solid #224C7C !important; | ||
| 91 | } | 89 | } |
| 92 | 90 | ||
| 93 | .upload-container { | 91 | .upload-container { | ... | ... |
| ... | @@ -32,9 +32,9 @@ | ... | @@ -32,9 +32,9 @@ |
| 32 | padding: 15px; | 32 | padding: 15px; |
| 33 | } | 33 | } |
| 34 | 34 | ||
| 35 | .el-dialog__close { | 35 | // .el-dialog__close { |
| 36 | font-size: 0; | 36 | // font-size: 0; |
| 37 | } | 37 | // } |
| 38 | 38 | ||
| 39 | .el-form-item { | 39 | .el-form-item { |
| 40 | display: flex; | 40 | display: flex; |
| ... | @@ -150,8 +150,31 @@ | ... | @@ -150,8 +150,31 @@ |
| 150 | 150 | ||
| 151 | // 角色管理人员菜单配置弹框样式 | 151 | // 角色管理人员菜单配置弹框样式 |
| 152 | .roleconfiguration { | 152 | .roleconfiguration { |
| 153 | .el-dialog__close { | 153 | .el-tabs__item { |
| 154 | font-size: 16px !important; | 154 | color: #cef8ff !important; |
| 155 | // background: url("~@/image/tabitem.png") no-repeat; | ||
| 156 | // background-size: 100% 100%; | ||
| 157 | background-color: #3D59C4; | ||
| 158 | border-radius: 3px; | ||
| 159 | } | ||
| 160 | |||
| 161 | .el-dialog__headerbtn .el-dialog__close { | ||
| 162 | font-size: 20px; | ||
| 163 | color: white; | ||
| 164 | } | ||
| 165 | |||
| 166 | .el-dialog__header { | ||
| 167 | width: 100%; | ||
| 168 | display: flex; | ||
| 169 | justify-content: center; | ||
| 170 | font-size: 24px; | ||
| 171 | background-color: #3D59C4; | ||
| 172 | |||
| 173 | .dialog_title { | ||
| 174 | |||
| 175 | color: white; | ||
| 176 | margin-bottom: 10px; | ||
| 177 | } | ||
| 155 | } | 178 | } |
| 156 | 179 | ||
| 157 | } | 180 | } |
| ... | @@ -173,7 +196,6 @@ | ... | @@ -173,7 +196,6 @@ |
| 173 | width: 2px; | 196 | width: 2px; |
| 174 | position: relative; | 197 | position: relative; |
| 175 | left: 10px; | 198 | left: 10px; |
| 176 | color: #FFFFFF; | ||
| 177 | } | 199 | } |
| 178 | 200 | ||
| 179 | .el-breadcrumb__inner { | 201 | .el-breadcrumb__inner { |
| ... | @@ -204,233 +226,6 @@ | ... | @@ -204,233 +226,6 @@ |
| 204 | font-weight: normal; | 226 | font-weight: normal; |
| 205 | } | 227 | } |
| 206 | 228 | ||
| 207 | // .button { | ||
| 208 | // width: 76px; | ||
| 209 | // height: 32px; | ||
| 210 | // color: #ffffff; | ||
| 211 | // cursor: pointer; | ||
| 212 | // border: 0; | ||
| 213 | // font-size: 12px; | ||
| 214 | // } | ||
| 215 | |||
| 216 | // // 按钮样式 | ||
| 217 | // .cx { | ||
| 218 | // background: url("../image/btn.png") no-repeat 0 -34px; | ||
| 219 | // background-size: cover; | ||
| 220 | // } | ||
| 221 | |||
| 222 | // .cx:hover { | ||
| 223 | // background: url("../image/btn.png") no-repeat 0 -34px; | ||
| 224 | // background-size: cover; | ||
| 225 | // color: white; | ||
| 226 | // } | ||
| 227 | |||
| 228 | // .cz { | ||
| 229 | // background: url("../image/btn.png") no-repeat 0 0; | ||
| 230 | // background-size: cover; | ||
| 231 | // } | ||
| 232 | |||
| 233 | // .cz:hover { | ||
| 234 | // background: url("../image/btn.png") no-repeat 0 0; | ||
| 235 | // background-size: cover; | ||
| 236 | // color: white; | ||
| 237 | // } | ||
| 238 | |||
| 239 | // .el-button:focus { | ||
| 240 | // background: none; | ||
| 241 | // } | ||
| 242 | |||
| 243 | // .cx:focus { | ||
| 244 | // background: url("../image/btn.png") no-repeat 0 -34px; | ||
| 245 | // background-size: cover; | ||
| 246 | // color: white; | ||
| 247 | // } | ||
| 248 | |||
| 249 | // .cz:focus { | ||
| 250 | // background: url("../image/btn.png") no-repeat 0 0; | ||
| 251 | // background-size: cover; | ||
| 252 | // color: white; | ||
| 253 | // } | ||
| 254 | |||
| 255 | // 监管弹框样式 | ||
| 256 | .dialogBox { | ||
| 257 | overflow: hidden; | ||
| 258 | // min-height: 90vh; | ||
| 259 | |||
| 260 | .dialog_title { | ||
| 261 | // display: flex; | ||
| 262 | // position: relative; | ||
| 263 | // font-size: 22px; | ||
| 264 | // top: -10px; | ||
| 265 | // width: 38%; | ||
| 266 | // height: 40px; | ||
| 267 | // margin-left: 28px; | ||
| 268 | // justify-content: center; | ||
| 269 | // white-space: nowrap; | ||
| 270 | |||
| 271 | b { | ||
| 272 | // font-weight: 200; | ||
| 273 | // display: inline-block; | ||
| 274 | // position: relative; | ||
| 275 | font-size: 24px; | ||
| 276 | // top: -11px; | ||
| 277 | // width: 38%; | ||
| 278 | // height: 40px; | ||
| 279 | // margin-left: 28px; | ||
| 280 | // // @include flex-center; | ||
| 281 | display: flex; | ||
| 282 | justify-content: center; | ||
| 283 | } | ||
| 284 | } | ||
| 285 | |||
| 286 | .dialog_full { | ||
| 287 | position: absolute; | ||
| 288 | top: 0; | ||
| 289 | right: 30px; | ||
| 290 | } | ||
| 291 | |||
| 292 | .el-dialog__body { | ||
| 293 | max-height: 88vh; | ||
| 294 | overflow-x: hidden; | ||
| 295 | overflow-y: hidden; | ||
| 296 | } | ||
| 297 | |||
| 298 | .dialog_footer { | ||
| 299 | margin-bottom: 8px; | ||
| 300 | display: flex; | ||
| 301 | justify-content: center; | ||
| 302 | align-items: center; | ||
| 303 | } | ||
| 304 | |||
| 305 | .dialogBox-content { | ||
| 306 | height: auto | ||
| 307 | } | ||
| 308 | |||
| 309 | .editDialogBox-box { | ||
| 310 | border-radius: 3px; | ||
| 311 | border: 1px solid #6BC1FC; | ||
| 312 | |||
| 313 | .el-form-item__label { | ||
| 314 | color: #000000; | ||
| 315 | } | ||
| 316 | |||
| 317 | .el-form-item__content { | ||
| 318 | color: #000000; | ||
| 319 | } | ||
| 320 | } | ||
| 321 | |||
| 322 | .item-content-input { | ||
| 323 | .el-input__inner { | ||
| 324 | border: none !important; | ||
| 325 | text-align: right; | ||
| 326 | } | ||
| 327 | } | ||
| 328 | |||
| 329 | .regularHeight { | ||
| 330 | display: flex; | ||
| 331 | flex-direction: column; | ||
| 332 | height: 87vh; | ||
| 333 | |||
| 334 | .editDialogBox-con, | ||
| 335 | .JsonEditor { | ||
| 336 | flex: 1; | ||
| 337 | height: 100%; | ||
| 338 | } | ||
| 339 | } | ||
| 340 | |||
| 341 | .dialog-from { | ||
| 342 | padding: 13px; | ||
| 343 | border-radius: 2px; | ||
| 344 | box-sizing: border-box; | ||
| 345 | |||
| 346 | .el-row { | ||
| 347 | display: flex; | ||
| 348 | flex-wrap: nowrap; | ||
| 349 | } | ||
| 350 | |||
| 351 | .el-col { | ||
| 352 | line-height: 18px; | ||
| 353 | display: flex; | ||
| 354 | align-items: center; | ||
| 355 | margin-bottom: 3px; | ||
| 356 | color: #000000; | ||
| 357 | border-radius: 2px; | ||
| 358 | border: 1px solid #224C7C; | ||
| 359 | |||
| 360 | span { | ||
| 361 | display: inline-block; | ||
| 362 | padding: 3px; | ||
| 363 | border-radius: 3px; | ||
| 364 | overflow: hidden; | ||
| 365 | white-space: nowrap; | ||
| 366 | text-align: left; | ||
| 367 | color: #02D9FD; | ||
| 368 | } | ||
| 369 | |||
| 370 | p { | ||
| 371 | flex: 1; | ||
| 372 | width: 100%; | ||
| 373 | padding-left: 5px; | ||
| 374 | line-height: 20px; | ||
| 375 | color: #000307; | ||
| 376 | cursor: not-allowed; | ||
| 377 | white-space: nowrap; | ||
| 378 | margin-right: 5px; | ||
| 379 | text-align: right; | ||
| 380 | } | ||
| 381 | } | ||
| 382 | |||
| 383 | } | ||
| 384 | |||
| 385 | .el-textarea__inner { | ||
| 386 | // border: 1px solid #224C7C; | ||
| 387 | // margin: 0 0 10px 0 !important; | ||
| 388 | // width: 100% !important; | ||
| 389 | // color: #dadde3 !important; | ||
| 390 | // background: transparent !important; | ||
| 391 | } | ||
| 392 | |||
| 393 | .el-input__inner { | ||
| 394 | // border: 1px solid #224C7C !important; | ||
| 395 | // margin: 0 !important; | ||
| 396 | // width: 100% !important; | ||
| 397 | // color: #111111 !important; | ||
| 398 | // background: transparent !important; | ||
| 399 | } | ||
| 400 | |||
| 401 | .el-dialog__header { | ||
| 402 | color: #070000; | ||
| 403 | // height: 46px !important; | ||
| 404 | // width: 97%; | ||
| 405 | // margin: 0 auto; | ||
| 406 | // margin-top: 2px; | ||
| 407 | } | ||
| 408 | |||
| 409 | .el-dialog__body { | ||
| 410 | padding-top: 0; | ||
| 411 | padding-bottom: 0; | ||
| 412 | // height: 95vh; | ||
| 413 | } | ||
| 414 | |||
| 415 | // .el-dialog__headerbtn { | ||
| 416 | // right: 40px; | ||
| 417 | // top: 33px; | ||
| 418 | |||
| 419 | // &:hover { | ||
| 420 | // // background: rgb(4, 172, 250); | ||
| 421 | // right: 40px; | ||
| 422 | // top: 33px; | ||
| 423 | // } | ||
| 424 | // } | ||
| 425 | |||
| 426 | |||
| 427 | .el-form-item { | ||
| 428 | display: flex; | ||
| 429 | width: 100%; | ||
| 430 | } | ||
| 431 | |||
| 432 | } | ||
| 433 | |||
| 434 | .contentCenter { | 229 | .contentCenter { |
| 435 | position: absolute; | 230 | position: absolute; |
| 436 | top: 50%; | 231 | top: 50%; |
| ... | @@ -451,9 +246,24 @@ | ... | @@ -451,9 +246,24 @@ |
| 451 | } | 246 | } |
| 452 | 247 | ||
| 453 | // 登簿日志弹出框 | 248 | // 登簿日志弹出框 |
| 454 | .entryJournal { | 249 | .commonDialog { |
| 250 | /deep/.dialog-from_header { | ||
| 251 | margin: 0 !important; | ||
| 252 | } | ||
| 253 | |||
| 254 | .el-dialog__headerbtn .el-dialog__close { | ||
| 255 | font-size: 20px; | ||
| 256 | color: white; | ||
| 257 | } | ||
| 258 | |||
| 259 | .el-dialog__header { | ||
| 260 | text-align: center; | ||
| 261 | font-size: 24px; | ||
| 262 | background-color: #3D59C4; | ||
| 263 | } | ||
| 264 | |||
| 455 | .el-tabs__header { | 265 | .el-tabs__header { |
| 456 | margin: 0; | 266 | margin: 0 !important; |
| 457 | } | 267 | } |
| 458 | 268 | ||
| 459 | .el-dialog { | 269 | .el-dialog { |
| ... | @@ -464,6 +274,7 @@ | ... | @@ -464,6 +274,7 @@ |
| 464 | .el-dialog__body { | 274 | .el-dialog__body { |
| 465 | display: flex; | 275 | display: flex; |
| 466 | flex-direction: column; | 276 | flex-direction: column; |
| 277 | padding-top: 0px; | ||
| 467 | padding-bottom: 30px; | 278 | padding-bottom: 30px; |
| 468 | height: 100%; | 279 | height: 100%; |
| 469 | flex: 1; | 280 | flex: 1; |
| ... | @@ -473,30 +284,36 @@ | ... | @@ -473,30 +284,36 @@ |
| 473 | .regularHeight { | 284 | .regularHeight { |
| 474 | display: flex; | 285 | display: flex; |
| 475 | flex-direction: column; | 286 | flex-direction: column; |
| 476 | height: 87vh; | 287 | height: 80vh; |
| 477 | margin-bottom: 5px; | 288 | margin-bottom: 5px; |
| 478 | 289 | ||
| 479 | .editDialogBox-con, | 290 | .editDialogBox-con, |
| 480 | .JsonEditor { | 291 | .JsonEditor { |
| 481 | flex: 1; | 292 | flex: 1; |
| 482 | } | 293 | } |
| 483 | } | ||
| 484 | 294 | ||
| 485 | .d-center {} | 295 | .editXML { |
| 296 | border: 1px solid blue; | ||
| 297 | margin-top: 10px; | ||
| 298 | |||
| 299 | .el-textarea__inner { | ||
| 300 | height: 68vh !important; | ||
| 301 | } | ||
| 302 | } | ||
| 303 | } | ||
| 486 | 304 | ||
| 487 | .dialog_title { | 305 | .dialog_title { |
| 488 | top: -6px | 306 | color: white; |
| 307 | margin-bottom: 10px; | ||
| 489 | } | 308 | } |
| 490 | 309 | ||
| 491 | .el-tabs__item { | 310 | .el-tabs__item { |
| 492 | color: #CEF8FF !important; | 311 | color: #CEF8FF !important; |
| 493 | 312 | background-color: none; | |
| 494 | display: flex; | 313 | display: flex; |
| 495 | flex-direction: row; | 314 | flex-direction: row; |
| 496 | justify-content: center; | 315 | justify-content: center; |
| 497 | background: url("~@/image/tabitem.png") no-repeat; | 316 | border-radius: 3px; |
| 498 | background-size: 100% 100%; | ||
| 499 | border: none !important; | ||
| 500 | } | 317 | } |
| 501 | 318 | ||
| 502 | .el-tabs__nav { | 319 | .el-tabs__nav { |
| ... | @@ -513,8 +330,7 @@ | ... | @@ -513,8 +330,7 @@ |
| 513 | } | 330 | } |
| 514 | 331 | ||
| 515 | .el-tabs__item.is-active { | 332 | .el-tabs__item.is-active { |
| 516 | background: url("~@/image/tabitemse.png") no-repeat; | 333 | background-color: #3D59C4; |
| 517 | background-size: 100% 100%; | ||
| 518 | } | 334 | } |
| 519 | 335 | ||
| 520 | .from-clues-content { | 336 | .from-clues-content { |
| ... | @@ -526,13 +342,15 @@ | ... | @@ -526,13 +342,15 @@ |
| 526 | .editDialogBox-box { | 342 | .editDialogBox-box { |
| 527 | position: relative; | 343 | position: relative; |
| 528 | top: 10px; | 344 | top: 10px; |
| 529 | height: 100%; | ||
| 530 | } | 345 | } |
| 531 | 346 | ||
| 532 | .dialog-from { | 347 | .dialog-from { |
| 533 | padding-top: 0; | 348 | padding-top: 0; |
| 534 | 349 | ||
| 535 | .el-col { | 350 | .el-col { |
| 351 | height: 40px; | ||
| 352 | line-height: 40px; | ||
| 353 | display: flex; | ||
| 536 | justify-content: space-between; | 354 | justify-content: space-between; |
| 537 | } | 355 | } |
| 538 | 356 | ||
| ... | @@ -553,23 +371,62 @@ | ... | @@ -553,23 +371,62 @@ |
| 553 | } | 371 | } |
| 554 | 372 | ||
| 555 | &_header { | 373 | &_header { |
| 556 | margin: 0 -5px !important; | 374 | // margin: 0 -5px !important; |
| 557 | } | 375 | } |
| 558 | 376 | ||
| 559 | &_title { | 377 | &_title { |
| 560 | font-size: 14px; | 378 | font-size: 14px; |
| 561 | color: #d7eaee; | 379 | font-weight: 600; |
| 380 | color: #000000; | ||
| 562 | margin: 3px 0; | 381 | margin: 3px 0; |
| 563 | } | 382 | } |
| 564 | } | 383 | } |
| 565 | } | 384 | } |
| 566 | 385 | ||
| 386 | .entryJournal { | ||
| 387 | .el-textarea__inner { | ||
| 388 | height: 67vh !important; | ||
| 389 | border: none !important; | ||
| 390 | background-color: #ffffff !important; | ||
| 391 | color: #000000 !important; | ||
| 392 | } | ||
| 393 | } | ||
| 394 | |||
| 395 | // 上报日志弹出框 | ||
| 396 | .sbdialog { | ||
| 397 | .el-textarea__inner { | ||
| 398 | height: 30vh !important; | ||
| 399 | border: none !important; | ||
| 400 | background-color: #ffffff !important; | ||
| 401 | color: #000000 !important; | ||
| 402 | } | ||
| 403 | } | ||
| 404 | |||
| 567 | // 数据上报弹出框 | 405 | // 数据上报弹出框 |
| 568 | .dataReporting { | 406 | .dataReporting { |
| 407 | .el-dialog__header { | ||
| 408 | width: 100%; | ||
| 409 | display: flex; | ||
| 410 | justify-content: center; | ||
| 411 | font-size: 24px; | ||
| 412 | background-color: #3D59C4; | ||
| 413 | |||
| 414 | .dialog_title { | ||
| 415 | |||
| 416 | color: white; | ||
| 417 | margin-bottom: 10px; | ||
| 418 | } | ||
| 419 | } | ||
| 420 | |||
| 421 | .el-dialog__headerbtn .el-dialog__close { | ||
| 422 | font-size: 20px; | ||
| 423 | color: white; | ||
| 424 | } | ||
| 425 | |||
| 569 | .el-dialog__body { | 426 | .el-dialog__body { |
| 427 | padding-top: 0px; | ||
| 570 | display: flex; | 428 | display: flex; |
| 571 | flex-direction: column; | 429 | flex-direction: column; |
| 572 | padding-bottom: 30px; | ||
| 573 | } | 430 | } |
| 574 | 431 | ||
| 575 | .el-tabs { | 432 | .el-tabs { |
| ... | @@ -604,26 +461,63 @@ | ... | @@ -604,26 +461,63 @@ |
| 604 | 461 | ||
| 605 | .el-tabs__item { | 462 | .el-tabs__item { |
| 606 | color: #cef8ff !important; | 463 | color: #cef8ff !important; |
| 607 | |||
| 608 | display: flex; | 464 | display: flex; |
| 609 | flex-direction: row; | 465 | flex-direction: row; |
| 610 | justify-content: center; | 466 | justify-content: center; |
| 611 | background: url("~@/image/tabitem.png") no-repeat; | 467 | background-color: #3D59C4; |
| 612 | background-size: 100% 100%; | 468 | border-radius: 3px; |
| 613 | border: none !important; | ||
| 614 | } | 469 | } |
| 615 | 470 | ||
| 616 | .obligee-item-name { | 471 | .obligee-item-name { |
| 617 | background: #05275b; | 472 | // background: url("~@/image/itembg.png") no-repeat; |
| 618 | color: #ffffff; | 473 | // background-size: 100% 100%; |
| 619 | background: url("~@/image/itembg.png") no-repeat; | 474 | background-color: #3D59C4; |
| 620 | background-size: 100% 100%; | 475 | border-radius: 3px; |
| 476 | border: 1px solid blue !important; | ||
| 621 | } | 477 | } |
| 622 | 478 | ||
| 623 | .el-tabs__nav-scroll { | 479 | .el-tabs__nav-scroll { |
| 624 | background: none; | 480 | background: none; |
| 625 | } | 481 | } |
| 626 | 482 | ||
| 483 | .result { | ||
| 484 | padding: 15px; | ||
| 485 | height: 100%; | ||
| 486 | |||
| 487 | /deep/.el-textarea__inner { | ||
| 488 | height: 50%; | ||
| 489 | color: #ffffff; | ||
| 490 | border: none !important; | ||
| 491 | color: #ffffff; | ||
| 492 | } | ||
| 493 | |||
| 494 | &-con { | ||
| 495 | background: #ffffff; | ||
| 496 | border: 1px solid blue; | ||
| 497 | border-radius: 2px; | ||
| 498 | padding: 10px; | ||
| 499 | box-sizing: border-box; | ||
| 500 | height: 49%; | ||
| 501 | |||
| 502 | p { | ||
| 503 | color: #2997E8; | ||
| 504 | font-size: 14px; | ||
| 505 | position: relative; | ||
| 506 | padding-left: 10px; | ||
| 507 | } | ||
| 508 | |||
| 509 | p::before { | ||
| 510 | position: absolute; | ||
| 511 | content: ''; | ||
| 512 | width: 3px; | ||
| 513 | height: 10px; | ||
| 514 | background-color: #2997E8; | ||
| 515 | left: 0; | ||
| 516 | top: 3px; | ||
| 517 | } | ||
| 518 | } | ||
| 519 | } | ||
| 520 | |||
| 627 | .el-tabs__nav { | 521 | .el-tabs__nav { |
| 628 | display: flex; | 522 | display: flex; |
| 629 | border: none !important; | 523 | border: none !important; |
| ... | @@ -649,8 +543,8 @@ | ... | @@ -649,8 +543,8 @@ |
| 649 | } | 543 | } |
| 650 | 544 | ||
| 651 | .el-tabs__item.is-active { | 545 | .el-tabs__item.is-active { |
| 652 | background: url("~@/image/tabitemse.png") no-repeat; | 546 | background-color: #1c3294; |
| 653 | background-size: 100% 100%; | 547 | color: #FFFFFF; |
| 654 | } | 548 | } |
| 655 | 549 | ||
| 656 | .success-images { | 550 | .success-images { |
| ... | @@ -709,6 +603,9 @@ | ... | @@ -709,6 +603,9 @@ |
| 709 | padding-top: 0; | 603 | padding-top: 0; |
| 710 | 604 | ||
| 711 | .el-col { | 605 | .el-col { |
| 606 | height: 40px; | ||
| 607 | line-height: 40px; | ||
| 608 | display: flex; | ||
| 712 | justify-content: space-between; | 609 | justify-content: space-between; |
| 713 | } | 610 | } |
| 714 | 611 | ||
| ... | @@ -754,28 +651,34 @@ | ... | @@ -754,28 +651,34 @@ |
| 754 | } | 651 | } |
| 755 | } | 652 | } |
| 756 | 653 | ||
| 757 | // 人员管理上下移动按钮样式 | 654 | // // 人员管理上下移动按钮样式 |
| 758 | .el-button.is-disabled.el-button--text { | 655 | // .el-button.is-disabled.el-button--text { |
| 759 | width: 64px; | 656 | // width: 64px; |
| 760 | height: 28px; | 657 | // height: 28px; |
| 761 | background: rgba(255, 255, 255, 0.1); | 658 | // background: rgba(255, 255, 255, 0.1); |
| 762 | border-radius: 16px; | 659 | // border-radius: 16px; |
| 763 | } | 660 | // } |
| 764 | 661 | ||
| 765 | // 人员管理角色管理菜单管理修改新增弹框样式 | 662 | // 人员管理角色管理菜单管理修改新增弹框样式 |
| 766 | .PersonnelDialog { | 663 | .PersonnelDialog { |
| 664 | .el-dialog__headerbtn .el-dialog__close { | ||
| 665 | font-size: 20px; | ||
| 666 | color: white; | ||
| 667 | } | ||
| 767 | 668 | ||
| 768 | .el-dialog__header { | 669 | .el-dialog__header { |
| 769 | text-align: center; | 670 | text-align: center; |
| 770 | margin-bottom: 10px; | 671 | margin-bottom: 10px; |
| 672 | font-size: 24px; | ||
| 673 | background-color: #3D59C4; | ||
| 771 | 674 | ||
| 772 | .el-dialog__title { | 675 | .dialog_title { |
| 773 | color: rgb(0, 0, 0); | 676 | b { |
| 774 | } | 677 | color: white !important; |
| 775 | } | 678 | } |
| 776 | 679 | ||
| 777 | .el-form-item__label { | 680 | margin-bottom: 10px; |
| 778 | color: rgb(0, 0, 0); | 681 | } |
| 779 | } | 682 | } |
| 780 | 683 | ||
| 781 | .el-input__inner { | 684 | .el-input__inner { |
| ... | @@ -793,29 +696,8 @@ | ... | @@ -793,29 +696,8 @@ |
| 793 | // color: rgb(0, 0, 0); | 696 | // color: rgb(0, 0, 0); |
| 794 | } | 697 | } |
| 795 | 698 | ||
| 796 | .el-form-item__label { | ||
| 797 | color: rgb(2, 0, 0); | ||
| 798 | } | ||
| 799 | |||
| 800 | .el-dialog__header { | 699 | .el-dialog__header { |
| 801 | .dialog_title { | ||
| 802 | // display: -webkit-box; | ||
| 803 | // display: -ms-flexbox; | ||
| 804 | // display: flex; | ||
| 805 | // position: relative; | ||
| 806 | // top: -7px; | ||
| 807 | // width: 29%; | ||
| 808 | // height: 40px; | ||
| 809 | // margin-left: 28px; | ||
| 810 | // -webkit-box-pack: center; | ||
| 811 | // -ms-flex-pack: center; | ||
| 812 | // justify-content: center; | ||
| 813 | // white-space: nowrap; | ||
| 814 | 700 | ||
| 815 | b { | ||
| 816 | font-size: 16px; | ||
| 817 | } | ||
| 818 | } | ||
| 819 | 701 | ||
| 820 | .el-dialog__headerbtn { | 702 | .el-dialog__headerbtn { |
| 821 | right: 20px !important; | 703 | right: 20px !important; |
| ... | @@ -895,4 +777,144 @@ | ... | @@ -895,4 +777,144 @@ |
| 895 | padding: 0px 120px 0px; | 777 | padding: 0px 120px 0px; |
| 896 | text-align: center; | 778 | text-align: center; |
| 897 | } | 779 | } |
| 898 | } | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 780 | } | ||
| 781 | |||
| 782 | // 权利人信息样式 | ||
| 783 | .itemForm { | ||
| 784 | position: relative; | ||
| 785 | padding: 10px; | ||
| 786 | |||
| 787 | .el-select { | ||
| 788 | width: 100%; | ||
| 789 | } | ||
| 790 | |||
| 791 | .el-form-item__error { | ||
| 792 | right: 25px; | ||
| 793 | top: 15px; | ||
| 794 | text-align: right; | ||
| 795 | pointer-events: none; | ||
| 796 | } | ||
| 797 | |||
| 798 | .el-date-editor { | ||
| 799 | width: 100%; | ||
| 800 | } | ||
| 801 | |||
| 802 | .el-date-editor--date { | ||
| 803 | width: 100%; | ||
| 804 | } | ||
| 805 | |||
| 806 | .el-cascader { | ||
| 807 | width: 100%; | ||
| 808 | } | ||
| 809 | |||
| 810 | // table 样式 | ||
| 811 | .el-form-item__label { | ||
| 812 | border-right: none; | ||
| 813 | text-align: center; | ||
| 814 | padding: 0; | ||
| 815 | line-height: 16px; | ||
| 816 | font-size: 12px; | ||
| 817 | text-align: right; | ||
| 818 | margin-top: 8px !important; | ||
| 819 | } | ||
| 820 | |||
| 821 | .el-form-item__content { | ||
| 822 | display: flex; | ||
| 823 | margin-right: -1px; | ||
| 824 | } | ||
| 825 | |||
| 826 | .obligee-item-name, | ||
| 827 | .receivingInfo-item-name, | ||
| 828 | .auditInfo-item-name { | ||
| 829 | background-color: #3D59C4; | ||
| 830 | border-radius: 3px; | ||
| 831 | border: 1px solid blue !important; | ||
| 832 | color: #FFFFFF; | ||
| 833 | } | ||
| 834 | |||
| 835 | .el-textarea__inner { | ||
| 836 | margin: 5px; | ||
| 837 | width: 96%; | ||
| 838 | background: none; | ||
| 839 | color: #FFFFFF; | ||
| 840 | border-radius: 2px; | ||
| 841 | border: 1px solid #6BC1FC; | ||
| 842 | } | ||
| 843 | |||
| 844 | .el-input-number { | ||
| 845 | width: 100%; | ||
| 846 | } | ||
| 847 | |||
| 848 | .el-input-number__increase { | ||
| 849 | // background: #05275B; | ||
| 850 | color: #FFFFFF; | ||
| 851 | border: none; | ||
| 852 | right: 7px; | ||
| 853 | top: 2px; | ||
| 854 | } | ||
| 855 | |||
| 856 | .el-input-number__decrease { | ||
| 857 | // background: #05275B; | ||
| 858 | color: #FFFFFF; | ||
| 859 | border: none; | ||
| 860 | right: 7px; | ||
| 861 | bottom: 10px; | ||
| 862 | } | ||
| 863 | |||
| 864 | .el-input__inner { | ||
| 865 | margin: 5px; | ||
| 866 | width: 96%; | ||
| 867 | // background: #05275B; | ||
| 868 | border-radius: 2px; | ||
| 869 | border: 1px solid #6BC1FC; | ||
| 870 | text-align: left; | ||
| 871 | |||
| 872 | } | ||
| 873 | |||
| 874 | .el-form-item { | ||
| 875 | margin-bottom: 0; | ||
| 876 | margin-top: -1px; | ||
| 877 | } | ||
| 878 | |||
| 879 | .item-label { | ||
| 880 | display: flex; | ||
| 881 | align-items: flex-end; | ||
| 882 | flex-direction: column; | ||
| 883 | font-size: 12px; | ||
| 884 | flex: 0 0 90px; | ||
| 885 | margin-right: 3px; | ||
| 886 | |||
| 887 | p { | ||
| 888 | line-height: 16px; | ||
| 889 | white-space: nowrap; | ||
| 890 | text-align: right; | ||
| 891 | } | ||
| 892 | |||
| 893 | p:nth-child(1) { | ||
| 894 | position: relative; | ||
| 895 | right: 5px; | ||
| 896 | } | ||
| 897 | } | ||
| 898 | } | ||
| 899 | |||
| 900 | // 字典管理弹框 | ||
| 901 | .dictionary { | ||
| 902 | .el-dialog__header { | ||
| 903 | width: 100%; | ||
| 904 | display: flex; | ||
| 905 | justify-content: center; | ||
| 906 | font-size: 24px; | ||
| 907 | background-color: #3D59C4; | ||
| 908 | |||
| 909 | .dialog_title { | ||
| 910 | |||
| 911 | color: white; | ||
| 912 | margin-bottom: 10px; | ||
| 913 | } | ||
| 914 | } | ||
| 915 | |||
| 916 | .el-dialog__headerbtn .el-dialog__close { | ||
| 917 | font-size: 20px; | ||
| 918 | color: white; | ||
| 919 | } | ||
| 920 | } | ... | ... |
| 1 | <!-- | 1 | <!-- |
| 2 | * @Description: | 2 | * @Description: |
| 3 | * @Autor: renchao | 3 | * @Autor: renchao |
| 4 | * @LastEditTime: 2023-03-20 14:45:57 | 4 | * @LastEditTime: 2023-03-28 14:11:01 |
| 5 | --> | 5 | --> |
| 6 | <!-- | 6 | <!-- |
| 7 | 功能:结果 | 7 | 功能:结果 |
| ... | @@ -18,45 +18,45 @@ | ... | @@ -18,45 +18,45 @@ |
| 18 | </div> | 18 | </div> |
| 19 | </template> | 19 | </template> |
| 20 | <script> | 20 | <script> |
| 21 | import { getReceiveDataReportResult } from "@/api/dataReport.js"; | 21 | import { getReceiveDataReportResult } from "@/api/dataReport.js"; |
| 22 | export default { | 22 | export default { |
| 23 | components: {}, | 23 | components: {}, |
| 24 | props: { | 24 | props: { |
| 25 | formData: { | 25 | formData: { |
| 26 | type: Object, | 26 | type: Object, |
| 27 | default: {} | 27 | default: {} |
| 28 | } | ||
| 29 | }, | ||
| 30 | data () { | ||
| 31 | return { | ||
| 32 | REPMSGXML: '', | ||
| 33 | ERRORINFO: '', | ||
| 34 | } | ||
| 35 | }, | ||
| 36 | created () { | ||
| 37 | getReceiveDataReportResult(this.formData.bsmReport).then(res => { | ||
| 38 | let data = res.result | ||
| 39 | this.REPMSGXML = data.REPMSGXML | ||
| 40 | this.ERRORINFO = data.ERRORINFO | ||
| 41 | }) | ||
| 28 | } | 42 | } |
| 29 | }, | ||
| 30 | data () { | ||
| 31 | return { | ||
| 32 | REPMSGXML: '', | ||
| 33 | ERRORINFO: '', | ||
| 34 | } | ||
| 35 | }, | ||
| 36 | created () { | ||
| 37 | getReceiveDataReportResult(this.formData.bsmReport).then(res => { | ||
| 38 | let data = res.result | ||
| 39 | this.REPMSGXML = data.REPMSGXML | ||
| 40 | this.ERRORINFO = data.ERRORINFO | ||
| 41 | }) | ||
| 42 | } | 43 | } |
| 43 | } | ||
| 44 | </script> | 44 | </script> |
| 45 | <style scoped lang='scss'> | 45 | <style scoped lang='scss'> |
| 46 | .result { | 46 | .result { |
| 47 | padding: 15px; | 47 | padding: 15px; |
| 48 | 48 | ||
| 49 | p { | 49 | p { |
| 50 | color: #ffffff; | 50 | color: #ffffff; |
| 51 | line-height: 26px; | 51 | line-height: 26px; |
| 52 | font-size: 18px; | 52 | font-size: 18px; |
| 53 | } | ||
| 53 | } | 54 | } |
| 54 | } | ||
| 55 | 55 | ||
| 56 | /deep/.el-textarea__inner { | ||
| 57 | min-height: 33vh !important; | ||
| 58 | background-color: #08346F !important; | ||
| 59 | color: #ffffff; | ||
| 60 | border: none !important; | ||
| 61 | } | ||
| 62 | </style> | ||
| ... | \ No newline at end of file | ... | \ No newline at end of file |
| 56 | /deep/.el-textarea__inner { | ||
| 57 | min-height: 33vh !important; | ||
| 58 | background-color: #08346f !important; | ||
| 59 | color: #ffffff; | ||
| 60 | border: none !important; | ||
| 61 | } | ||
| 62 | </style> | ... | ... |
| 1 | <template> | 1 | <template> |
| 2 | <el-dialog :close-on-click-modal="false" top="0" @close="closeDialog" custom-class="dialogBox entryJournal editDialogBox mainCenter" | 2 | <el-dialog :close-on-click-modal="false" top="0" @close="closeDialog" |
| 3 | :visible.sync="dialogVisible" width="90%"> | 3 | custom-class="dialogBox entryJournal commonDialog editDialogBox mainCenter" :visible.sync="dialogVisible" width="90%"> |
| 4 | <div slot="title" class="dialog_title" ref="dialogTitle"> | 4 | <div slot="title" class="dialog_title" ref="dialogTitle"> |
| 5 | {{ title || '登薄日志' }} | 5 | {{ title || '登薄日志' }} |
| 6 | </div> | 6 | </div> |
| ... | @@ -193,270 +193,269 @@ | ... | @@ -193,270 +193,269 @@ |
| 193 | </template> | 193 | </template> |
| 194 | 194 | ||
| 195 | <script> | 195 | <script> |
| 196 | import { sbdata, sendThis } from './data/sbdata' | 196 | import { sbdata, sendThis } from './data/sbdata' |
| 197 | import { dbdata, sendThis1 } from './data/dbdata' | 197 | import { dbdata, sendThis1 } from './data/dbdata' |
| 198 | import { getDetail, edit, regenerateDbXml } from "@/api/recordLog.js" | 198 | import { getDetail, edit, regenerateDbXml } from "@/api/recordLog.js" |
| 199 | import JsonEditor from "@/components/JsonEditor.vue"; | 199 | import JsonEditor from "@/components/JsonEditor.vue"; |
| 200 | import { judgeListComplete } from "@/utils/tools.js" | 200 | import { judgeListComplete } from "@/utils/tools.js" |
| 201 | export default { | 201 | export default { |
| 202 | components: { JsonEditor }, | 202 | components: { JsonEditor }, |
| 203 | data () { | 203 | data () { |
| 204 | return { | 204 | return { |
| 205 | key: 0, | 205 | key: 0, |
| 206 | title: '', | 206 | title: '', |
| 207 | dialogVisible: false, | 207 | dialogVisible: false, |
| 208 | titleName: 'sjmx', | 208 | titleName: 'sjmx', |
| 209 | titleName2: 'drdbxd', | 209 | titleName2: 'drdbxd', |
| 210 | dbBsm: '', | 210 | dbBsm: '', |
| 211 | // 头部信息 | 211 | // 头部信息 |
| 212 | accessLog: { | 212 | accessLog: { |
| 213 | AREACODE: '', | 213 | AREACODE: '', |
| 214 | AREANAME: '', | 214 | AREANAME: '', |
| 215 | ACCESSDATE: '', | 215 | ACCESSDATE: '', |
| 216 | REMARK: '' | 216 | REMARK: '' |
| 217 | }, | 217 | }, |
| 218 | // 当日登薄信息记录数 | 218 | // 当日登薄信息记录数 |
| 219 | registerInfo: { | ||
| 220 | TOTALNUM: '', // 总数量 | ||
| 221 | FIRSTREG: '', // 首次登记数量 | ||
| 222 | TRANSFERREG: '', // 转移登记数量 | ||
| 223 | CHANGEREG: '', // 变更登记数量 | ||
| 224 | LOGOUTREG: '', // 注销登记数量 | ||
| 225 | RIVISEREG: '', // 更正登记数量 | ||
| 226 | DISSENTINGREG: '', // 异议登记数量 | ||
| 227 | ADVANCEREG: '', // 预告登记数量 | ||
| 228 | SEIZEREG: '', // 查封登记数量 | ||
| 229 | EASEMENTREG: '', // 地役权登记数量 | ||
| 230 | otherReg: '', // 其他登记数量 | ||
| 231 | BUSINESSTYPECOUNT: '', // 业务类型总数 | ||
| 232 | }, | ||
| 233 | // 当日上报记录数 | ||
| 234 | accessInfo: { | ||
| 235 | TOTALNUM: '', // 总数量 | ||
| 236 | FIRSTREG: '', // 首次登记数量 | ||
| 237 | TRANSFERREG: '', // 转移登记数量 | ||
| 238 | CHANGEREG: '', // 变更登记数量 | ||
| 239 | LOGOUTREG: '', // 注销登记数量 | ||
| 240 | RIVISEREG: '', // 更正登记数量 | ||
| 241 | DISSENTINGREG: '', // 异议登记数量 | ||
| 242 | ADVANCEREG: '', // 预告登记数量 | ||
| 243 | SEIZEREG: '', // 查封登记数量 | ||
| 244 | EASEMENTREG: '', // 地役权登记数量 | ||
| 245 | otherReg: '', // 其他登记数量 | ||
| 246 | BUSINESSTYPECOUNT: '', // 业务类型总数 | ||
| 247 | }, | ||
| 248 | // 当日登薄详单 | ||
| 249 | tableDBData: { | ||
| 250 | data: [], | ||
| 251 | column: dbdata.columns() | ||
| 252 | }, | ||
| 253 | // 当日上报详单 | ||
| 254 | tableSBData: { | ||
| 255 | data: [], | ||
| 256 | column: sbdata.columns() | ||
| 257 | }, | ||
| 258 | // XML详情 | ||
| 259 | resultInfo: '', | ||
| 260 | dataReport: {} | ||
| 261 | } | ||
| 262 | }, | ||
| 263 | mounted () { | ||
| 264 | sendThis(this); | ||
| 265 | sendThis1(this); | ||
| 266 | }, | ||
| 267 | watch: { | ||
| 268 | registerInfo: { | 219 | registerInfo: { |
| 269 | handler: function (newVal, oldVal) { | 220 | TOTALNUM: '', // 总数量 |
| 270 | this.registerInfo.TOTALNUM = (newVal.FIRSTREG - 0) + (newVal.TRANSFERREG - 0) + | 221 | FIRSTREG: '', // 首次登记数量 |
| 271 | (newVal.CHANGEREG - 0) + (newVal.LOGOUTREG - 0) + (newVal.RIVISEREG - 0) + (newVal.DISSENTINGREG - 0) | 222 | TRANSFERREG: '', // 转移登记数量 |
| 272 | + (newVal.ADVANCEREG - 0) + (newVal.SEIZEREG - 0) + (newVal.otherReg - 0) | 223 | CHANGEREG: '', // 变更登记数量 |
| 273 | }, | 224 | LOGOUTREG: '', // 注销登记数量 |
| 274 | deep: true | 225 | RIVISEREG: '', // 更正登记数量 |
| 226 | DISSENTINGREG: '', // 异议登记数量 | ||
| 227 | ADVANCEREG: '', // 预告登记数量 | ||
| 228 | SEIZEREG: '', // 查封登记数量 | ||
| 229 | EASEMENTREG: '', // 地役权登记数量 | ||
| 230 | otherReg: '', // 其他登记数量 | ||
| 231 | BUSINESSTYPECOUNT: '', // 业务类型总数 | ||
| 275 | }, | 232 | }, |
| 233 | // 当日上报记录数 | ||
| 276 | accessInfo: { | 234 | accessInfo: { |
| 277 | handler: function (newVal, oldVal) { | 235 | TOTALNUM: '', // 总数量 |
| 278 | this.accessInfo.TOTALNUM = (newVal.FIRSTREG - 0) + (newVal.TRANSFERREG - 0) + | 236 | FIRSTREG: '', // 首次登记数量 |
| 279 | (newVal.CHANGEREG - 0) + (newVal.LOGOUTREG - 0) + (newVal.RIVISEREG - 0) + (newVal.DISSENTINGREG - 0) | 237 | TRANSFERREG: '', // 转移登记数量 |
| 280 | + (newVal.ADVANCEREG - 0) + (newVal.SEIZEREG - 0) + (newVal.otherReg - 0) | 238 | CHANGEREG: '', // 变更登记数量 |
| 281 | }, | 239 | LOGOUTREG: '', // 注销登记数量 |
| 282 | deep: true | 240 | RIVISEREG: '', // 更正登记数量 |
| 283 | } | 241 | DISSENTINGREG: '', // 异议登记数量 |
| 284 | }, | 242 | ADVANCEREG: '', // 预告登记数量 |
| 285 | methods: { | 243 | SEIZEREG: '', // 查封登记数量 |
| 286 | closeDialog () { | 244 | EASEMENTREG: '', // 地役权登记数量 |
| 287 | this.dialogVisible = false; | 245 | otherReg: '', // 其他登记数量 |
| 246 | BUSINESSTYPECOUNT: '', // 业务类型总数 | ||
| 288 | }, | 247 | }, |
| 289 | isShow (item) { | 248 | // 当日登薄详单 |
| 290 | this.title = '登薄日志(' + item.ACCESSDATE + ')' | 249 | tableDBData: { |
| 291 | this.titleName = 'sjmx' | 250 | data: [], |
| 292 | this.dialogVisible = true | 251 | column: dbdata.columns() |
| 293 | this.dbBsm = item.dbBsm | ||
| 294 | this._getDetails(item.dbBsm) | ||
| 295 | }, | 252 | }, |
| 296 | /** | 253 | // 当日上报详单 |
| 297 | * @description: 获取列表接口 | 254 | tableSBData: { |
| 298 | * @author: renchao | 255 | data: [], |
| 299 | */ | 256 | column: sbdata.columns() |
| 300 | _getDetails (data) { | ||
| 301 | getDetail(data).then(res => { | ||
| 302 | let { accessLog, registerInfo, accessInfo, accessList, registerList | ||
| 303 | } = res.result | ||
| 304 | this.accessLog = accessLog | ||
| 305 | this.resultInfo = accessLog.LOGSXML | ||
| 306 | this.registerInfo = registerInfo | ||
| 307 | this.accessInfo = accessInfo | ||
| 308 | this.tableDBData.data = _.cloneDeep(registerList) | ||
| 309 | this.tableSBData.data = _.cloneDeep(accessList) | ||
| 310 | this.tableDBData.data.forEach((item, index) => { | ||
| 311 | this.$set(item, 'index', index) | ||
| 312 | }) | ||
| 313 | this.tableSBData.data.forEach((item, index) => { | ||
| 314 | this.$set(item, 'index', index) | ||
| 315 | }) | ||
| 316 | }) | ||
| 317 | }, | 257 | }, |
| 318 | // 当日登薄详单 | 258 | // XML详情 |
| 319 | handleDBAdd () { | 259 | resultInfo: '', |
| 320 | this.tableDBData.data.push({ | 260 | dataReport: {} |
| 321 | YWH: '', | 261 | } |
| 322 | DJLX: '', | 262 | }, |
| 323 | QLLX: '', | 263 | mounted () { |
| 324 | BDCDYH: '', | 264 | sendThis(this); |
| 325 | ZSZMH: '', | 265 | sendThis1(this); |
| 326 | SFSB: '', | 266 | }, |
| 327 | BWID: '', | 267 | watch: { |
| 328 | BSM_DBLOG: this.accessLog.bsmDblog | 268 | registerInfo: { |
| 269 | handler: function (newVal, oldVal) { | ||
| 270 | this.registerInfo.TOTALNUM = (newVal.FIRSTREG - 0) + (newVal.TRANSFERREG - 0) + | ||
| 271 | (newVal.CHANGEREG - 0) + (newVal.LOGOUTREG - 0) + (newVal.RIVISEREG - 0) + (newVal.DISSENTINGREG - 0) | ||
| 272 | + (newVal.ADVANCEREG - 0) + (newVal.SEIZEREG - 0) + (newVal.otherReg - 0) | ||
| 273 | }, | ||
| 274 | deep: true | ||
| 275 | }, | ||
| 276 | accessInfo: { | ||
| 277 | handler: function (newVal, oldVal) { | ||
| 278 | this.accessInfo.TOTALNUM = (newVal.FIRSTREG - 0) + (newVal.TRANSFERREG - 0) + | ||
| 279 | (newVal.CHANGEREG - 0) + (newVal.LOGOUTREG - 0) + (newVal.RIVISEREG - 0) + (newVal.DISSENTINGREG - 0) | ||
| 280 | + (newVal.ADVANCEREG - 0) + (newVal.SEIZEREG - 0) + (newVal.otherReg - 0) | ||
| 281 | }, | ||
| 282 | deep: true | ||
| 283 | } | ||
| 284 | }, | ||
| 285 | methods: { | ||
| 286 | closeDialog () { | ||
| 287 | this.dialogVisible = false; | ||
| 288 | }, | ||
| 289 | isShow (item) { | ||
| 290 | this.title = '登薄日志(' + item.ACCESSDATE + ')' | ||
| 291 | this.titleName = 'sjmx' | ||
| 292 | this.dialogVisible = true | ||
| 293 | this.dbBsm = item.dbBsm | ||
| 294 | this._getDetails(item.dbBsm) | ||
| 295 | }, | ||
| 296 | /** | ||
| 297 | * @description: 获取列表接口 | ||
| 298 | * @author: renchao | ||
| 299 | */ | ||
| 300 | _getDetails (data) { | ||
| 301 | getDetail(data).then(res => { | ||
| 302 | let { accessLog, registerInfo, accessInfo, accessList, registerList | ||
| 303 | } = res.result | ||
| 304 | this.accessLog = accessLog | ||
| 305 | this.resultInfo = accessLog.LOGSXML | ||
| 306 | this.registerInfo = registerInfo | ||
| 307 | this.accessInfo = accessInfo | ||
| 308 | this.tableDBData.data = _.cloneDeep(registerList) | ||
| 309 | this.tableSBData.data = _.cloneDeep(accessList) | ||
| 310 | this.tableDBData.data.forEach((item, index) => { | ||
| 311 | this.$set(item, 'index', index) | ||
| 312 | }) | ||
| 313 | this.tableSBData.data.forEach((item, index) => { | ||
| 314 | this.$set(item, 'index', index) | ||
| 315 | }) | ||
| 316 | }) | ||
| 317 | }, | ||
| 318 | // 当日登薄详单 | ||
| 319 | handleDBAdd () { | ||
| 320 | this.tableDBData.data.push({ | ||
| 321 | YWH: '', | ||
| 322 | DJLX: '', | ||
| 323 | QLLX: '', | ||
| 324 | BDCDYH: '', | ||
| 325 | ZSZMH: '', | ||
| 326 | SFSB: '', | ||
| 327 | BWID: '', | ||
| 328 | BSM_DBLOG: this.accessLog.bsmDblog | ||
| 329 | }) | ||
| 330 | this.tableDBData.data.forEach((item, index) => { | ||
| 331 | this.$set(item, 'index', index) | ||
| 332 | }) | ||
| 333 | }, | ||
| 334 | handleDBMinus (row) { | ||
| 335 | this.$confirm('此操作将删除列表, 是否继续?', '提示', { | ||
| 336 | confirmButtonText: '确定', | ||
| 337 | cancelButtonText: '取消', | ||
| 338 | type: 'warning' | ||
| 339 | }).then(() => { | ||
| 340 | this.tableDBData.data.splice(row.index, 1) | ||
| 341 | this.$message({ | ||
| 342 | type: 'success', | ||
| 343 | message: '删除成功!' | ||
| 329 | }) | 344 | }) |
| 330 | this.tableDBData.data.forEach((item, index) => { | 345 | this.tableDBData.data.forEach((item, index) => { |
| 331 | this.$set(item, 'index', index) | 346 | this.$set(item, 'index', index) |
| 332 | }) | 347 | }) |
| 333 | }, | 348 | }).catch(() => { |
| 334 | handleDBMinus (row) { | 349 | this.$message({ |
| 335 | this.$confirm('此操作将删除列表, 是否继续?', '提示', { | 350 | type: 'info', |
| 336 | confirmButtonText: '确定', | 351 | message: '已取消删除' |
| 337 | cancelButtonText: '取消', | ||
| 338 | type: 'warning' | ||
| 339 | }).then(() => { | ||
| 340 | this.tableDBData.data.splice(row.index, 1) | ||
| 341 | this.$message({ | ||
| 342 | type: 'success', | ||
| 343 | message: '删除成功!' | ||
| 344 | }) | ||
| 345 | this.tableDBData.data.forEach((item, index) => { | ||
| 346 | this.$set(item, 'index', index) | ||
| 347 | }) | ||
| 348 | }).catch(() => { | ||
| 349 | this.$message({ | ||
| 350 | type: 'info', | ||
| 351 | message: '已取消删除' | ||
| 352 | }) | ||
| 353 | }) | 352 | }) |
| 354 | }, | 353 | }) |
| 355 | // 当日上报详单 | 354 | }, |
| 356 | handleSBAdd () { | 355 | // 当日上报详单 |
| 357 | this.tableSBData.data.push({ | 356 | handleSBAdd () { |
| 358 | YWH: '', | 357 | this.tableSBData.data.push({ |
| 359 | BDCDYH: '', | 358 | YWH: '', |
| 360 | BWID: '', | 359 | BDCDYH: '', |
| 361 | BSM_DBLOG: this.accessLog.bsmDblog | 360 | BWID: '', |
| 361 | BSM_DBLOG: this.accessLog.bsmDblog | ||
| 362 | }) | ||
| 363 | this.tableSBData.data.forEach((item, index) => { | ||
| 364 | this.$set(item, 'index', index) | ||
| 365 | }) | ||
| 366 | }, | ||
| 367 | handleSBMinus (row) { | ||
| 368 | this.$confirm('此操作将删除列表, 是否继续?', '提示', { | ||
| 369 | confirmButtonText: '确定', | ||
| 370 | cancelButtonText: '取消', | ||
| 371 | type: 'warning' | ||
| 372 | }).then(() => { | ||
| 373 | this.tableSBData.data.splice(row.index, 1) | ||
| 374 | this.$message({ | ||
| 375 | type: 'success', | ||
| 376 | message: '删除成功!' | ||
| 362 | }) | 377 | }) |
| 363 | this.tableSBData.data.forEach((item, index) => { | 378 | this.tableSBData.data.forEach((item, index) => { |
| 364 | this.$set(item, 'index', index) | 379 | this.$set(item, 'index', index) |
| 365 | }) | 380 | }) |
| 366 | }, | 381 | }).catch(() => { |
| 367 | handleSBMinus (row) { | 382 | this.$message({ |
| 368 | this.$confirm('此操作将删除列表, 是否继续?', '提示', { | 383 | type: 'info', |
| 369 | confirmButtonText: '确定', | 384 | message: '已取消删除' |
| 370 | cancelButtonText: '取消', | ||
| 371 | type: 'warning' | ||
| 372 | }).then(() => { | ||
| 373 | this.tableSBData.data.splice(row.index, 1) | ||
| 374 | this.$message({ | ||
| 375 | type: 'success', | ||
| 376 | message: '删除成功!' | ||
| 377 | }) | ||
| 378 | this.tableSBData.data.forEach((item, index) => { | ||
| 379 | this.$set(item, 'index', index) | ||
| 380 | }) | ||
| 381 | }).catch(() => { | ||
| 382 | this.$message({ | ||
| 383 | type: 'info', | ||
| 384 | message: '已取消删除' | ||
| 385 | }) | ||
| 386 | }) | 385 | }) |
| 387 | }, | 386 | }) |
| 388 | /** | 387 | }, |
| 389 | * @description: 确定修改详情 | 388 | /** |
| 390 | * @param {*} function | 389 | * @description: 确定修改详情 |
| 391 | * @author: renchao | 390 | * @param {*} function |
| 392 | */ | 391 | * @author: renchao |
| 393 | submitForm: _.debounce(function () { | 392 | */ |
| 394 | let _this = this | 393 | submitForm: _.debounce(function () { |
| 395 | if (_verify(this.tableDBData.data, '当日登薄详单列表必填') && _verify(this.tableSBData.data, '当日上报详单列表必填')) { | 394 | let _this = this |
| 396 | _editDetail() | 395 | if (_verify(this.tableDBData.data, '当日登薄详单列表必填') && _verify(this.tableSBData.data, '当日上报详单列表必填')) { |
| 396 | _editDetail() | ||
| 397 | } | ||
| 398 | function _verify (data, msg) { | ||
| 399 | let flag = true | ||
| 400 | if (!judgeListComplete(data)) { | ||
| 401 | _this.$message({ | ||
| 402 | message: msg, | ||
| 403 | type: 'warning' | ||
| 404 | }) | ||
| 405 | flag = false | ||
| 397 | } | 406 | } |
| 398 | function _verify (data, msg) { | 407 | return flag |
| 399 | let flag = true | 408 | } |
| 400 | if (!judgeListComplete(data)) { | 409 | function _editDetail () { |
| 410 | edit({ | ||
| 411 | accessLog: _this.accessLog, registerInfo: _this.registerInfo, | ||
| 412 | accessInfo: _this.accessInfo, | ||
| 413 | accessList: _this.tableSBData.data, | ||
| 414 | registerList: _this.tableDBData.data | ||
| 415 | }).then(res => { | ||
| 416 | if (res.code == 200) { | ||
| 401 | _this.$message({ | 417 | _this.$message({ |
| 402 | message: msg, | 418 | message: '保存成功', |
| 403 | type: 'warning' | 419 | type: 'success' |
| 404 | }) | 420 | }) |
| 405 | flag = false | 421 | _this._getDetails(_this.dbBsm) |
| 422 | } | ||
| 423 | }) | ||
| 424 | } | ||
| 425 | }, 600), | ||
| 426 | /** | ||
| 427 | * @description: 登薄日志重新生成报文 | ||
| 428 | * @param {*} function | ||
| 429 | * @author: renchao | ||
| 430 | */ | ||
| 431 | handleResubmit () { | ||
| 432 | let _this = this | ||
| 433 | this.$confirm('重新生成报文,是否上报省厅?', '提示', { | ||
| 434 | confirmButtonText: '确定', | ||
| 435 | cancelButtonText: '取消', | ||
| 436 | type: 'warning' | ||
| 437 | }).then(() => { | ||
| 438 | createXml() | ||
| 439 | }).catch(() => { | ||
| 440 | this.$message({ | ||
| 441 | type: 'info', | ||
| 442 | message: '已取消删除' | ||
| 443 | }) | ||
| 444 | }) | ||
| 445 | function createXml () { | ||
| 446 | regenerateDbXml(_this.dbBsm).then(res => { | ||
| 447 | if (res.code == 200) { | ||
| 448 | _this.$message({ | ||
| 449 | message: '生成成功', | ||
| 450 | type: 'success' | ||
| 451 | }) | ||
| 452 | _this.resultInfo = res.message | ||
| 406 | } | 453 | } |
| 407 | return flag | ||
| 408 | } | ||
| 409 | function _editDetail () { | ||
| 410 | edit({ | ||
| 411 | accessLog: _this.accessLog, registerInfo: _this.registerInfo, | ||
| 412 | accessInfo: _this.accessInfo, | ||
| 413 | accessList: _this.tableSBData.data, | ||
| 414 | registerList: _this.tableDBData.data | ||
| 415 | }).then(res => { | ||
| 416 | if (res.code == 200) { | ||
| 417 | _this.$message({ | ||
| 418 | message: '保存成功', | ||
| 419 | type: 'success' | ||
| 420 | }) | ||
| 421 | _this._getDetails(_this.dbBsm) | ||
| 422 | } | ||
| 423 | }) | ||
| 424 | } | ||
| 425 | }, 600), | ||
| 426 | /** | ||
| 427 | * @description: 登薄日志重新生成报文 | ||
| 428 | * @param {*} function | ||
| 429 | * @author: renchao | ||
| 430 | */ | ||
| 431 | handleResubmit () { | ||
| 432 | let _this = this | ||
| 433 | this.$confirm('重新生成报文,是否上报省厅?', '提示', { | ||
| 434 | confirmButtonText: '确定', | ||
| 435 | cancelButtonText: '取消', | ||
| 436 | type: 'warning' | ||
| 437 | }).then(() => { | ||
| 438 | createXml() | ||
| 439 | }).catch(() => { | ||
| 440 | this.$message({ | ||
| 441 | type: 'info', | ||
| 442 | message: '已取消删除' | ||
| 443 | }) | ||
| 444 | }) | 454 | }) |
| 445 | function createXml () { | ||
| 446 | regenerateDbXml(_this.dbBsm).then(res => { | ||
| 447 | if (res.code == 200) { | ||
| 448 | _this.$message({ | ||
| 449 | message: '生成成功', | ||
| 450 | type: 'success' | ||
| 451 | }) | ||
| 452 | _this.resultInfo = res.message | ||
| 453 | } | ||
| 454 | }) | ||
| 455 | } | ||
| 456 | } | 455 | } |
| 457 | } | 456 | } |
| 458 | } | 457 | } |
| 458 | } | ||
| 459 | </script> | 459 | </script> |
| 460 | <style scoped lang="scss"> | 460 | |
| 461 | </style> | ||
| 462 | 461 | ... | ... |
src/views/sthj/ywjr/data/index.js
0 → 100644
| 1 | import filter from '@/utils/filter.js' | ||
| 2 | class data extends filter { | ||
| 3 | constructor() { | ||
| 4 | super() | ||
| 5 | } | ||
| 6 | columns () { | ||
| 7 | return [ | ||
| 8 | { | ||
| 9 | prop: "name", | ||
| 10 | label: "区县代码", | ||
| 11 | width: 130 | ||
| 12 | }, | ||
| 13 | { | ||
| 14 | prop: "description", | ||
| 15 | label: "业务号" | ||
| 16 | }, | ||
| 17 | { | ||
| 18 | prop: "description", | ||
| 19 | label: "受理业务名称" | ||
| 20 | }, | ||
| 21 | { | ||
| 22 | prop: "description", | ||
| 23 | label: "受理业务编码" | ||
| 24 | }, | ||
| 25 | { | ||
| 26 | prop: "description", | ||
| 27 | label: "受理时间" | ||
| 28 | }, | ||
| 29 | { | ||
| 30 | prop: "description", | ||
| 31 | label: "登记时间" | ||
| 32 | }, | ||
| 33 | { | ||
| 34 | prop: "description", | ||
| 35 | label: "接收时间" | ||
| 36 | }, | ||
| 37 | { | ||
| 38 | prop: "description", | ||
| 39 | label: "读取时间" | ||
| 40 | } | ||
| 41 | ] | ||
| 42 | } | ||
| 43 | } | ||
| 44 | export default new data() |
src/views/sthj/ywjr/edit-dialog.vue
0 → 100644
| 1 | <!-- 新增 & 修改角色 --> | ||
| 2 | <template> | ||
| 3 | <dialogBox | ||
| 4 | class="PersonnelDialog" | ||
| 5 | :title="title" | ||
| 6 | :width="'567px'" | ||
| 7 | :isMain="true" | ||
| 8 | @closeDialog="close" | ||
| 9 | @submitForm="submitForm" | ||
| 10 | v-model="myValue"> | ||
| 11 | <div class="dialogCon"> | ||
| 12 | <el-form ref="form" :model="dialogForm" :rules="rules" label-width="82px"> | ||
| 13 | <el-row :gutter="24"> | ||
| 14 | <el-col :span="23"> | ||
| 15 | <el-form-item label="角色名称:" prop="roleName"> | ||
| 16 | <el-input | ||
| 17 | v-model="dialogForm.roleName" | ||
| 18 | clearable | ||
| 19 | placeholder="角色名称" /> | ||
| 20 | </el-form-item> | ||
| 21 | </el-col> | ||
| 22 | </el-row> | ||
| 23 | <el-row> | ||
| 24 | <el-col :span="23"> | ||
| 25 | <el-form-item label="备注:" class="form-item-mb0"> | ||
| 26 | <el-input | ||
| 27 | v-model="dialogForm.roleTextArea" | ||
| 28 | clearable | ||
| 29 | :rows="10" | ||
| 30 | type="textarea" | ||
| 31 | placeholder="备注" /> | ||
| 32 | </el-form-item> | ||
| 33 | </el-col> | ||
| 34 | </el-row> | ||
| 35 | </el-form> | ||
| 36 | </div> | ||
| 37 | <!-- <template slot="footer"> | ||
| 38 | <el-button | ||
| 39 | class="cancel-button" | ||
| 40 | @click="handleCloseDialog">取消</el-button> | ||
| 41 | |||
| 42 | <el-button | ||
| 43 | type="primary" | ||
| 44 | @click="handleSaveRole()">保存</el-button> | ||
| 45 | </template> --> | ||
| 46 | </dialogBox> | ||
| 47 | </template> | ||
| 48 | |||
| 49 | <script> | ||
| 50 | import Dialog from "@/components/Dialog/"; | ||
| 51 | import { api, httpAction } from '@/api/manageApi' | ||
| 52 | export default { | ||
| 53 | components: { | ||
| 54 | Dialog | ||
| 55 | }, | ||
| 56 | props: { | ||
| 57 | value: { type: Boolean, default: false }, | ||
| 58 | }, | ||
| 59 | data () { | ||
| 60 | return { | ||
| 61 | myValue: this.value, | ||
| 62 | title: '', | ||
| 63 | showAddEditDialog: false, | ||
| 64 | menuType: '', | ||
| 65 | roleId: '', | ||
| 66 | sort: 0, | ||
| 67 | dialogForm: { | ||
| 68 | roleName: '', | ||
| 69 | roleType: '', | ||
| 70 | roleTextArea: '' | ||
| 71 | }, | ||
| 72 | rules: { | ||
| 73 | roleName: [ | ||
| 74 | { required: true, message: '请输入角色名称', trigger: 'blur' } | ||
| 75 | ], | ||
| 76 | }, | ||
| 77 | roleTypeOptions: [ | ||
| 78 | { name: '定制', value: '定制' }, | ||
| 79 | { name: '其他', value: '其他' } | ||
| 80 | ] | ||
| 81 | } | ||
| 82 | }, | ||
| 83 | watch: { | ||
| 84 | value (val) { | ||
| 85 | this.myValue = val | ||
| 86 | } | ||
| 87 | }, | ||
| 88 | methods: { | ||
| 89 | // 保存新增或关闭事件 | ||
| 90 | submitForm () { | ||
| 91 | this.$refs.form.validate((valid) => { | ||
| 92 | if (valid) { | ||
| 93 | try { | ||
| 94 | const params = { | ||
| 95 | category: 2, | ||
| 96 | description: this.dialogForm.roleTextArea, | ||
| 97 | name: this.dialogForm.roleName, | ||
| 98 | sort: this.sort, | ||
| 99 | type: this.dialogForm.roleType | ||
| 100 | } | ||
| 101 | if (this.roleId) { | ||
| 102 | params.id = this.roleId | ||
| 103 | httpAction(`${api.roles}/${params.id}`, params, 'post').then( | ||
| 104 | (res) => { | ||
| 105 | if (res.status === 1) { | ||
| 106 | this.$message.success({ | ||
| 107 | message: '修改成功', | ||
| 108 | showClose: true | ||
| 109 | }) | ||
| 110 | this.dialogForm = { | ||
| 111 | roleName: '', | ||
| 112 | } | ||
| 113 | // this.showAddEditDialog = val | ||
| 114 | this.$emit('ok') | ||
| 115 | } else { | ||
| 116 | this.$message.error({ | ||
| 117 | message: res.message, | ||
| 118 | showClose: true | ||
| 119 | }) | ||
| 120 | } | ||
| 121 | } | ||
| 122 | ) | ||
| 123 | } else { | ||
| 124 | httpAction(api.roles, params, 'post').then((res) => { | ||
| 125 | if (res.status === 1) { | ||
| 126 | this.$message.success({ | ||
| 127 | message: '新增成功', | ||
| 128 | showClose: true | ||
| 129 | }) | ||
| 130 | this.close() | ||
| 131 | |||
| 132 | this.$emit('ok') | ||
| 133 | // this.showAddEditDialog = val | ||
| 134 | this.$emit('ok', this.menuType) | ||
| 135 | } else { | ||
| 136 | this.$message.error({ | ||
| 137 | message: res.message, | ||
| 138 | showClose: true | ||
| 139 | }) | ||
| 140 | } | ||
| 141 | }) | ||
| 142 | } | ||
| 143 | } catch (e) { | ||
| 144 | console.error(e) | ||
| 145 | } | ||
| 146 | } | ||
| 147 | }) | ||
| 148 | }, | ||
| 149 | resetForm () { | ||
| 150 | this.dialogForm = { | ||
| 151 | roleName: '', | ||
| 152 | } | ||
| 153 | this.$refs.form.resetFields() | ||
| 154 | }, | ||
| 155 | close () { | ||
| 156 | this.resetForm() | ||
| 157 | this.$emit('input', false) | ||
| 158 | } | ||
| 159 | } | ||
| 160 | } | ||
| 161 | </script> | ||
| 162 | <style scoped lang="scss"> | ||
| 163 | </style> |
src/views/sthj/ywjr/index.vue
0 → 100644
| 1 | <template> | ||
| 2 | <div class="timedTask from-clues"> | ||
| 3 | <div class="from-clues-header"> | ||
| 4 | <el-form ref="ruleForm" :model="form" label-width="100px"> | ||
| 5 | <el-form-item v-if="BASE_API.THEME=='jg'"> | ||
| 6 | <Breadcrumb /> | ||
| 7 | </el-form-item> | ||
| 8 | <el-row class="mb-5"> | ||
| 9 | <el-col :span="4"> | ||
| 10 | <el-form-item label="业务号:" prop="ywh"> | ||
| 11 | <el-input v-model="form.ywh" class="width100" clearable placeholder="业务号"></el-input> | ||
| 12 | </el-form-item> | ||
| 13 | </el-col> | ||
| 14 | <el-col :span="4"> | ||
| 15 | <el-form-item label="业务名称" prop="ywmc"> | ||
| 16 | <el-input v-model.trim="form.rolesName" class="width100" clearable placeholder="业务名称"></el-input> | ||
| 17 | </el-form-item> | ||
| 18 | </el-col> | ||
| 19 | <el-col :span="6"> | ||
| 20 | <el-form-item label="开始日期" prop="startTime"> | ||
| 21 | <el-date-picker type="date" class="width100" placeholder="开始日期" :picker-options="pickerOptionsStart" | ||
| 22 | clearable v-model="form.startTime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker> | ||
| 23 | </el-form-item> | ||
| 24 | </el-col> | ||
| 25 | <el-col :span="6"> | ||
| 26 | <el-form-item label="结束日期" prop="endTime"> | ||
| 27 | <el-date-picker type="date" class="width100" placeholder="结束日期" :picker-options="pickerOptionsEnd" clearable | ||
| 28 | v-model="form.endTime" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker> | ||
| 29 | </el-form-item> | ||
| 30 | </el-col> | ||
| 31 | <!-- 操作按钮 --> | ||
| 32 | <el-col :span="4" class="btnColRight"> | ||
| 33 | <btn nativeType="cz" @click="resetForm">重置</btn> | ||
| 34 | <btn nativeType="cx" @click="handleSearch">查询</btn> | ||
| 35 | </el-col> | ||
| 36 | </el-row> | ||
| 37 | </el-form> | ||
| 38 | </div> | ||
| 39 | <div class="from-clues-content"> | ||
| 40 | <lb-table :pagination="false" @size-change="handleSizeChange" :calcHeight="200" | ||
| 41 | @p-current-change="handleCurrentChange" :column="tableData.columns" :data="listdata" :expand-row-keys="keyList" | ||
| 42 | row-key="dictid"> | ||
| 43 | </lb-table> | ||
| 44 | </div> | ||
| 45 | </div> | ||
| 46 | </template> | ||
| 47 | <script> | ||
| 48 | import { | ||
| 49 | getUuid, | ||
| 50 | judgeSort, | ||
| 51 | realMove, | ||
| 52 | findParents, | ||
| 53 | removeTreeListItem, | ||
| 54 | } from "@/utils/operation"; | ||
| 55 | import { getRolesById, getAuthorityListAction } from "@/api/authorityManage"; | ||
| 56 | import { getUserRoles } from "@/api/personnelManage"; | ||
| 57 | import data from "./data"; | ||
| 58 | import { getMenuInfo } from "@/api/user"; | ||
| 59 | import { api, getAction, deleteAction } from "@/api/manageApi"; | ||
| 60 | import tableMixin from "@/mixins/tableMixin.js"; | ||
| 61 | import EditDialog from "./edit-dialog.vue"; | ||
| 62 | import Roleslistdiglog from "./roleslistdiglog.vue"; | ||
| 63 | import { mapGetters } from "vuex"; | ||
| 64 | import { updateOrder } from "@/api/orders" | ||
| 65 | export default { | ||
| 66 | name: "menus", | ||
| 67 | mixins: [tableMixin], | ||
| 68 | components: { | ||
| 69 | EditDialog, | ||
| 70 | Roleslistdiglog, | ||
| 71 | }, | ||
| 72 | data () { | ||
| 73 | return { | ||
| 74 | // 开始结束日期限制 | ||
| 75 | pickerOptionsStart: { | ||
| 76 | disabledDate: (time) => { | ||
| 77 | if (this.form.endTime) { | ||
| 78 | return time.getTime() >= new Date(this.form.endTime).getTime() | ||
| 79 | } | ||
| 80 | } | ||
| 81 | }, | ||
| 82 | // 结束日期限制 | ||
| 83 | pickerOptionsEnd: { | ||
| 84 | disabledDate: (time) => { | ||
| 85 | if (this.form.startTime) { | ||
| 86 | return time.getTime() < new Date(this.form.startTime).getTime() | ||
| 87 | } | ||
| 88 | } | ||
| 89 | }, | ||
| 90 | listdata: [], | ||
| 91 | setlistdata: [], | ||
| 92 | // 表单 | ||
| 93 | form: { | ||
| 94 | ywh: '', | ||
| 95 | ywmc: '', | ||
| 96 | startTime: '', | ||
| 97 | endTime: '', | ||
| 98 | currentPage: 1 | ||
| 99 | }, | ||
| 100 | tableData: { | ||
| 101 | columns: [ | ||
| 102 | { | ||
| 103 | label: "序号", | ||
| 104 | type: "index", | ||
| 105 | width: "50", | ||
| 106 | index: this.indexMethod, | ||
| 107 | }, | ||
| 108 | ] | ||
| 109 | .concat(data.columns()) | ||
| 110 | .concat({ | ||
| 111 | prop: "state", | ||
| 112 | label: "状态", | ||
| 113 | width: '120', | ||
| 114 | render: (h, scope) => { | ||
| 115 | return ( | ||
| 116 | <div> | ||
| 117 | <span class='adopt' v-show={scope.row.state == 3}>上报失败</span> | ||
| 118 | <span class='adopt' v-show={scope.row.state == 2}>上报成功</span> | ||
| 119 | <span class='warehousing' v-show={scope.row.state == 1}>接入上报异常</span> | ||
| 120 | </div> | ||
| 121 | ) | ||
| 122 | } | ||
| 123 | }) | ||
| 124 | .concat([]), | ||
| 125 | }, | ||
| 126 | data: [], | ||
| 127 | } | ||
| 128 | }, | ||
| 129 | created () { | ||
| 130 | this.getTableData(); | ||
| 131 | }, | ||
| 132 | mounted () { }, | ||
| 133 | methods: { | ||
| 134 | //查询 | ||
| 135 | searchQuery () { | ||
| 136 | if (this.form.rolesName) { | ||
| 137 | this.listdata = this.childrenFn(this.setlistdata, this.form.rolesName); | ||
| 138 | } else { | ||
| 139 | this.getTableData() | ||
| 140 | } | ||
| 141 | }, | ||
| 142 | childrenFn (arr, key) { | ||
| 143 | let searchTree = []; | ||
| 144 | arr.forEach((item, index) => { | ||
| 145 | if (item.name.indexOf(key) != -1) { | ||
| 146 | |||
| 147 | searchTree.push(item); | ||
| 148 | } | ||
| 149 | }); | ||
| 150 | if (searchTree != undefined && searchTree.length != 0) { | ||
| 151 | return judgeSort(searchTree); | ||
| 152 | } | ||
| 153 | }, | ||
| 154 | // 获取角色列表 | ||
| 155 | getTableData () { | ||
| 156 | getRolesById([1, 2]) | ||
| 157 | .then((res) => { | ||
| 158 | this.listdata = res.content; | ||
| 159 | this.listdata = judgeSort(this.listdata); | ||
| 160 | this.setlistdata = res.content; | ||
| 161 | }) | ||
| 162 | .catch((e) => console.error(e)); | ||
| 163 | }, | ||
| 164 | |||
| 165 | |||
| 166 | }, | ||
| 167 | }; | ||
| 168 | </script> | ||
| 169 | <style scoped lang="scss"> | ||
| 170 | @import "~@/styles/mixin.scss"; | ||
| 171 | // @import "~@/styles/public.scss"; | ||
| 172 | |||
| 173 | /deep/.el-button.is-disabled.el-button--text { | ||
| 174 | width: 64px; | ||
| 175 | height: 28px; | ||
| 176 | background: rgba(255, 255, 255, 0.1); | ||
| 177 | border-radius: 16px; | ||
| 178 | } | ||
| 179 | </style> |
src/views/sthj/ywjr/roleslistdiglog.vue
0 → 100644
| 1 | <template> | ||
| 2 | <el-dialog | ||
| 3 | :close-on-click-modal="false" | ||
| 4 | top="0" | ||
| 5 | @click="close()" | ||
| 6 | class="roleconfiguration" | ||
| 7 | custom-class="dialogBox editDialogBox mainCenter" | ||
| 8 | :visible.sync="visible" | ||
| 9 | width="85%"> | ||
| 10 | <div slot="title" class="dialog_title" ref="dialogTitle"> | ||
| 11 | {{ title || "标题" }} | ||
| 12 | </div> | ||
| 13 | <div class="editDialogBox-box"> | ||
| 14 | <el-tabs v-model="activeName" type="card" @tab-click="handleClick"> | ||
| 15 | <el-tab-pane label="人员配置" name="first"></el-tab-pane> | ||
| 16 | <el-tab-pane label="菜单配置" name="second"></el-tab-pane> | ||
| 17 | </el-tabs> | ||
| 18 | <lb-table | ||
| 19 | v-if="activeName == 'first'" | ||
| 20 | ref="multipleTable" | ||
| 21 | :pagination="false" | ||
| 22 | :column="usertableData.column" | ||
| 23 | :data="lastuserList" | ||
| 24 | @selection-change="handleSelectionChange" | ||
| 25 | @row-click="handleClickTableRow"> | ||
| 26 | > | ||
| 27 | </lb-table> | ||
| 28 | <lb-table | ||
| 29 | :key="menukey" | ||
| 30 | v-if="activeName == 'second'" | ||
| 31 | :pagination="false" | ||
| 32 | :column="menutableData.column" | ||
| 33 | :data="lastMenuList" | ||
| 34 | row-key="id" | ||
| 35 | default-expand-all | ||
| 36 | :tree-props="{children: 'children', hasChildren: 'hasChildren'}"> | ||
| 37 | </lb-table> | ||
| 38 | </div> | ||
| 39 | <template slot="footer"> | ||
| 40 | <btn nativeType="cx" type="primary" @click="handleSaveMember()">保存</btn> | ||
| 41 | <btn nativeType="cz" @click="close()">取消</btn> | ||
| 42 | </template> | ||
| 43 | </el-dialog> | ||
| 44 | </template> | ||
| 45 | |||
| 46 | <script> | ||
| 47 | import { api } from "@/api/manageApi"; | ||
| 48 | import { getRoleAuthorityList, roleAuthority } from "@/api/authorityManage"; | ||
| 49 | import { updateUser } from "@/api/personnelManage"; | ||
| 50 | export default { | ||
| 51 | name: "", | ||
| 52 | data () { | ||
| 53 | return { | ||
| 54 | title: "人员配置", | ||
| 55 | visible: false, | ||
| 56 | menutableData: { | ||
| 57 | column: [ | ||
| 58 | { | ||
| 59 | prop: "name", | ||
| 60 | width: 830, | ||
| 61 | label: "菜单名称", | ||
| 62 | } | ||
| 63 | ].concat([ | ||
| 64 | { | ||
| 65 | label: "权限", | ||
| 66 | render: (h, scope) => { | ||
| 67 | return ( | ||
| 68 | <div> | ||
| 69 | <el-checkbox v-model={scope.row.checkArr[0].value} | ||
| 70 | disabled={scope.row.checkArr[0].disabled} | ||
| 71 | label={scope.row.checkArr[0].name} onChange={(checked) => { | ||
| 72 | this.changeCheck(checked, scope.row.checkArr[0].id, scope); | ||
| 73 | }} /> | ||
| 74 | <el-checkbox v-model={scope.row.checkArr[1].value} | ||
| 75 | disabled={scope.row.checkArr[0].disabled} | ||
| 76 | label={scope.row.checkArr[1].name} | ||
| 77 | onChange={(checked) => { | ||
| 78 | this.changeCheck(checked, scope.row.checkArr[1].id, scope); | ||
| 79 | }} /> | ||
| 80 | </div> | ||
| 81 | ); | ||
| 82 | }, | ||
| 83 | }, | ||
| 84 | ]), | ||
| 85 | }, | ||
| 86 | usertableData: { | ||
| 87 | column: [ | ||
| 88 | { | ||
| 89 | type: "selection", | ||
| 90 | width: 330, | ||
| 91 | }, | ||
| 92 | { | ||
| 93 | prop: "name", | ||
| 94 | width: 330, | ||
| 95 | label: "姓名", | ||
| 96 | }, | ||
| 97 | { | ||
| 98 | prop: "loginName", | ||
| 99 | label: "用户名", | ||
| 100 | }, | ||
| 101 | ], | ||
| 102 | }, | ||
| 103 | // 角色id | ||
| 104 | roleId: "", | ||
| 105 | menuList: [], // 菜单列表 | ||
| 106 | menukey: 0, | ||
| 107 | activeName: "first", | ||
| 108 | lastuserList: [], // 人员表格数据 | ||
| 109 | lastMenuList: [], // 重构完成的菜单表格数据 | ||
| 110 | usermultipleSelection: [], | ||
| 111 | // 选中菜单列表 | ||
| 112 | checkArr: [], // 重构操作符列表 | ||
| 113 | authorityList: [], // 授权回显数组 | ||
| 114 | checklistbor: [], | ||
| 115 | // 授权对象数据 | ||
| 116 | menuprams: {}, | ||
| 117 | // 系统code | ||
| 118 | selectedSubsystemCode: "" | ||
| 119 | }; | ||
| 120 | }, | ||
| 121 | computed: {}, | ||
| 122 | |||
| 123 | created () { | ||
| 124 | }, | ||
| 125 | mounted () { | ||
| 126 | }, | ||
| 127 | methods: { | ||
| 128 | |||
| 129 | // 人员配置点击行勾选数据 | ||
| 130 | handleClickTableRow (row, event) { | ||
| 131 | this.checkNum = 0; | ||
| 132 | this.isCheck = false; | ||
| 133 | if (event.label == "操作") { | ||
| 134 | return; | ||
| 135 | } else { | ||
| 136 | if (row.status == "0") { | ||
| 137 | return; | ||
| 138 | } else { | ||
| 139 | if (this.usermultipleSelection.length > 0) { | ||
| 140 | if ( | ||
| 141 | JSON.stringify(this.usermultipleSelection).indexOf( | ||
| 142 | JSON.stringify(row) | ||
| 143 | ) == -1 | ||
| 144 | ) { | ||
| 145 | this.usermultipleSelection.push(row); | ||
| 146 | this.$refs.multipleTable.toggleRowSelection(row, true); | ||
| 147 | } else { | ||
| 148 | this.usermultipleSelection.map((item, index) => { | ||
| 149 | if (item.id == row.id) { | ||
| 150 | this.usermultipleSelection.splice(index, 1); | ||
| 151 | this.$refs.multipleTable.toggleRowSelection(row, false); | ||
| 152 | } | ||
| 153 | }); | ||
| 154 | } | ||
| 155 | } else { | ||
| 156 | this.usermultipleSelection.push(row); | ||
| 157 | this.$refs.multipleTable.toggleRowSelection(row, true); | ||
| 158 | } | ||
| 159 | } | ||
| 160 | } | ||
| 161 | if (this.usermultipleSelection.length > 0) { | ||
| 162 | this.checkNum = this.usermultipleSelection.length; | ||
| 163 | this.isCheck = true; | ||
| 164 | } else { | ||
| 165 | this.isCheck = false; | ||
| 166 | } | ||
| 167 | }, | ||
| 168 | // 获取授权主体的菜单权限 | ||
| 169 | // getMenuAuthorityList | ||
| 170 | menulist (operationList, id, Code, menutablelistData, operationCodes) { | ||
| 171 | this.selectedSubsystemCode = Code | ||
| 172 | this.menuList = menutablelistData; | ||
| 173 | getRoleAuthorityList( | ||
| 174 | id, | ||
| 175 | operationList.toString(), | ||
| 176 | Code + '_MENU' | ||
| 177 | ).then(res => { | ||
| 178 | if (res.status === 1) { | ||
| 179 | this.authorityList = res.content | ||
| 180 | this.getRecursionTreeData(this.menuList, this.authorityList, operationCodes) | ||
| 181 | this.getAuthorizedInfo() | ||
| 182 | // this.setCheckAllArr() | ||
| 183 | // this.getAuthorizedInfo() | ||
| 184 | } else { | ||
| 185 | this.$message.error({ message: res.message, showClose: true }) | ||
| 186 | } | ||
| 187 | }) | ||
| 188 | |||
| 189 | |||
| 190 | }, | ||
| 191 | /** | ||
| 192 | * 递归渲染列表数据 | ||
| 193 | * list:原始数组 | ||
| 194 | * authorityList:已授权数组 | ||
| 195 | */ | ||
| 196 | getRecursionTreeData (list, authorityList, operationCodes) { | ||
| 197 | ++this.menukey | ||
| 198 | this.checkArr = [] | ||
| 199 | for (const k in operationCodes) { | ||
| 200 | const obj = {} | ||
| 201 | obj.name = operationCodes[k] | ||
| 202 | obj.id = k | ||
| 203 | obj.value = false | ||
| 204 | obj.disabled = false | ||
| 205 | // obj.isAll = false; | ||
| 206 | this.checkArr.push(obj) | ||
| 207 | } | ||
| 208 | for (const [index, item] of Object.entries(list)) { | ||
| 209 | this.setAuthorizedConditions( | ||
| 210 | authorityList, | ||
| 211 | this.$deepCopy(this.checkArr), | ||
| 212 | item | ||
| 213 | ) | ||
| 214 | if ( | ||
| 215 | item.children && | ||
| 216 | item.children !== null && | ||
| 217 | item.children.length !== 0 | ||
| 218 | ) { | ||
| 219 | item.children.forEach((child, j) => { | ||
| 220 | this.setAuthorizedConditions( | ||
| 221 | authorityList, | ||
| 222 | this.$deepCopy(this.checkArr), | ||
| 223 | child | ||
| 224 | ) | ||
| 225 | }) | ||
| 226 | this.getRecursionTreeData(item.children, authorityList, operationCodes) | ||
| 227 | } | ||
| 228 | } | ||
| 229 | this.lastMenuList = list | ||
| 230 | // this.setCheckAllArr(list) | ||
| 231 | }, | ||
| 232 | // 授权条件 | ||
| 233 | setAuthorizedConditions (authorityList, checkArr, item) { | ||
| 234 | if (this.roleId === '') { | ||
| 235 | checkArr.forEach(ele => { | ||
| 236 | ele.disabled = true | ||
| 237 | ele.value = false | ||
| 238 | }) | ||
| 239 | } else { | ||
| 240 | if (authorityList.length !== 0) { | ||
| 241 | if (authorityList[0].superPermission === true) { | ||
| 242 | checkArr.forEach(ele => { | ||
| 243 | ele.value = true | ||
| 244 | ele.disabled = true | ||
| 245 | }) | ||
| 246 | } else { | ||
| 247 | const repeatArr = authorityList.filter(authorityItem => { | ||
| 248 | return authorityItem.resourceUri === item.id | ||
| 249 | }) | ||
| 250 | repeatArr.forEach(element => { | ||
| 251 | checkArr.forEach(ele => { | ||
| 252 | if (element.operationCode === ele.id) { | ||
| 253 | ele.value = true | ||
| 254 | if (this.roleId !== element.subjectId) { | ||
| 255 | ele.disabled = true | ||
| 256 | } | ||
| 257 | } | ||
| 258 | }) | ||
| 259 | }) | ||
| 260 | } | ||
| 261 | } | ||
| 262 | } | ||
| 263 | this.$set(item, 'checkArr', this.$deepCopy(checkArr)) | ||
| 264 | }, | ||
| 265 | // 获取拼接授权信息 | ||
| 266 | getAuthorizedInfo () { | ||
| 267 | const lastArr = [] | ||
| 268 | const authorizedList = [] | ||
| 269 | const wholeArr = this.$deepCopy(this.lastMenuList) | ||
| 270 | const arr = this.$treeConvertToArr(wholeArr) | ||
| 271 | arr.forEach(ele => { | ||
| 272 | ele.checkArr.forEach(val => { | ||
| 273 | if (val.value === true && val.disabled === false) { | ||
| 274 | const obj = { | ||
| 275 | operationCode: val.id, | ||
| 276 | name: ele.name, | ||
| 277 | id: ele.id | ||
| 278 | } | ||
| 279 | lastArr.push(obj) | ||
| 280 | } | ||
| 281 | }) | ||
| 282 | }) | ||
| 283 | lastArr.forEach(element => { | ||
| 284 | authorizedList.push({ | ||
| 285 | operationCode: element.operationCode, // 标识符 | ||
| 286 | productCode: this.selectedSubsystemCode, // 子系统code | ||
| 287 | resourceCategoryCode: this.selectedSubsystemCode + '_MENU', // 资源类别code默认为MENU | ||
| 288 | resourceName: element.name, | ||
| 289 | resourceUri: element.id, // 授权菜单id | ||
| 290 | subjectId: this.roleId, // 授权对象id | ||
| 291 | subjectType: 'ROLE' // 授权对象类别 | ||
| 292 | }) | ||
| 293 | }) | ||
| 294 | this.menuprams = { | ||
| 295 | subjectId: this.roleId, | ||
| 296 | authorizedList: authorizedList | ||
| 297 | } | ||
| 298 | }, | ||
| 299 | // 获取人员列表做筛选 | ||
| 300 | personlist (a, rid) { | ||
| 301 | this.roleId = rid; | ||
| 302 | this.visible = true; | ||
| 303 | this.lastuserList = a; | ||
| 304 | this.lastuserList.forEach((item, index) => { | ||
| 305 | if (item.selectStatus === 0) { | ||
| 306 | this.$nextTick(async () => { | ||
| 307 | await this.$refs.multipleTable | ||
| 308 | if (this.$refs.multipleTable) { | ||
| 309 | this.$refs.multipleTable.toggleRowSelection( | ||
| 310 | this.lastuserList[index], | ||
| 311 | true | ||
| 312 | ); | ||
| 313 | } | ||
| 314 | |||
| 315 | }); | ||
| 316 | } | ||
| 317 | }); | ||
| 318 | }, | ||
| 319 | // 关闭事件 | ||
| 320 | close () { | ||
| 321 | this.visible = false; | ||
| 322 | }, | ||
| 323 | // 保存事件 | ||
| 324 | handleSaveMember () { | ||
| 325 | // 人员授权 | ||
| 326 | const idList = this.usermultipleSelection.map((item) => { | ||
| 327 | return item.id; | ||
| 328 | }) | ||
| 329 | updateUser(this.roleId, idList).then((res) => { | ||
| 330 | if (res.status === 1) { | ||
| 331 | this.$message.success({ message: "保存成功", showClose: true }); | ||
| 332 | this.visible = false; | ||
| 333 | } else this.$message.error({ message: res.message, showClose: true }); | ||
| 334 | }); | ||
| 335 | // 菜单授权 | ||
| 336 | roleAuthority( | ||
| 337 | this.menuprams.subjectId, | ||
| 338 | this.menuprams.authorizedList | ||
| 339 | ).then((res) => { | ||
| 340 | if (res.status === 1) { | ||
| 341 | this.$message.success({ | ||
| 342 | message: res.message, | ||
| 343 | }) | ||
| 344 | // this.authorizedContChange() | ||
| 345 | } else { | ||
| 346 | this.$message.error({ message: res.message, showClose: true }) | ||
| 347 | } | ||
| 348 | }) | ||
| 349 | }, | ||
| 350 | // 勾选人员事件 | ||
| 351 | handleSelectionChange (val) { | ||
| 352 | this.lastuserList.forEach((element, index) => { | ||
| 353 | delete this.lastuserList[index].selectStatus | ||
| 354 | }); | ||
| 355 | this.usermultipleSelection = val; | ||
| 356 | this.lastuserList.forEach((element, index) => { | ||
| 357 | this.usermultipleSelection.forEach(element1 => { | ||
| 358 | if (element.id == element1.id) { | ||
| 359 | this.lastuserList[index].selectStatus = 0 | ||
| 360 | } | ||
| 361 | }); | ||
| 362 | }); | ||
| 363 | }, | ||
| 364 | // 数据筛选 | ||
| 365 | setarrdata (scope, arr) { | ||
| 366 | |||
| 367 | arr.forEach((item, index, arr) => { | ||
| 368 | if (item.id == scope.row.id) { | ||
| 369 | this.checklistbor = [...arr] | ||
| 370 | } else if (item.id !== scope.row.id && item.children) { | ||
| 371 | this.setarrdata(scope, item.children) | ||
| 372 | } | ||
| 373 | |||
| 374 | }) | ||
| 375 | |||
| 376 | }, | ||
| 377 | // 勾选菜单事件 | ||
| 378 | changeCheck (flag, checkId, scope) { | ||
| 379 | this.checklistbor = [] | ||
| 380 | this.setarrdata(scope, this.lastMenuList) | ||
| 381 | const parents = this.$findParent(this.lastMenuList, scope.row.parentId) | ||
| 382 | const childs = this.$findChildren(this.lastMenuList, scope.row.id) | ||
| 383 | this.$setChildArr( | ||
| 384 | this.lastMenuList, | ||
| 385 | scope.row.id, | ||
| 386 | checkId, | ||
| 387 | flag, | ||
| 388 | this.checklistbor, | ||
| 389 | parents, | ||
| 390 | childs | ||
| 391 | ) | ||
| 392 | this.getAuthorizedInfo() | ||
| 393 | }, | ||
| 394 | handleClick (tab, event) { | ||
| 395 | this.lastuserList.forEach((item, index) => { | ||
| 396 | if (item.selectStatus === 0) { | ||
| 397 | this.$nextTick(async () => { | ||
| 398 | await this.$refs.multipleTable | ||
| 399 | if (this.$refs.multipleTable) { | ||
| 400 | this.$refs.multipleTable.toggleRowSelection( | ||
| 401 | this.lastuserList[index], | ||
| 402 | true | ||
| 403 | ); | ||
| 404 | } | ||
| 405 | |||
| 406 | }); | ||
| 407 | } | ||
| 408 | }); | ||
| 409 | } | ||
| 410 | |||
| 411 | }, | ||
| 412 | }; | ||
| 413 | </script> | ||
| 414 | <style scoped lang="scss"> | ||
| 415 | /deep/.dialogBox .el-dialog__header { | ||
| 416 | height: 59px !important; | ||
| 417 | } | ||
| 418 | </style> |
| 1 | <template> | 1 | <template> |
| 2 | <!-- 编辑 --> | 2 | <!-- 编辑 --> |
| 3 | <dialogBox submitForm="submitForm" class="tableClass" @closeDialog="closeDialog" @submitForm="handleSubmit" width="60%" | 3 | <dialogBox submitForm="submitForm" class="tableClass dictionary" @closeDialog="closeDialog" @submitForm="handleSubmit" width="60%" |
| 4 | v-model="myValue" :isMain="true" title="字典信息"> | 4 | v-model="myValue" :isMain="true" title="字典信息"> |
| 5 | <div class="editDialogBox-box "> | 5 | <div class="editDialogBox-box "> |
| 6 | <el-form :model="ruleForm" ref="ruleForm" label-width="100px"> | 6 | <el-form :model="ruleForm" ref="ruleForm" label-width="100px"> |
| ... | @@ -159,13 +159,14 @@ | ... | @@ -159,13 +159,14 @@ |
| 159 | }, | 159 | }, |
| 160 | }, | 160 | }, |
| 161 | { | 161 | { |
| 162 | width: "130", | 162 | width: "200", |
| 163 | label: "移动", | 163 | label: "移动", |
| 164 | render: (h, scope) => { | 164 | render: (h, scope) => { |
| 165 | return ( | 165 | return ( |
| 166 | <div> | 166 | <div> |
| 167 | <el-button | 167 | <el-button |
| 168 | type="text" | 168 | type="text" |
| 169 | class='movebtnColor' | ||
| 169 | disabled={scope.row.isTop} | 170 | disabled={scope.row.isTop} |
| 170 | onClick={() => { | 171 | onClick={() => { |
| 171 | this.moveUpward(scope.$index, scope.row); | 172 | this.moveUpward(scope.$index, scope.row); |
| ... | @@ -175,6 +176,7 @@ | ... | @@ -175,6 +176,7 @@ |
| 175 | </el-button> | 176 | </el-button> |
| 176 | <el-button | 177 | <el-button |
| 177 | type="text" | 178 | type="text" |
| 179 | class='movebtnColor' | ||
| 178 | disabled={scope.row.isBottom} | 180 | disabled={scope.row.isBottom} |
| 179 | onClick={() => { | 181 | onClick={() => { |
| 180 | this.moveDown(scope.$index, scope.row); | 182 | this.moveDown(scope.$index, scope.row); |
| ... | @@ -187,13 +189,14 @@ | ... | @@ -187,13 +189,14 @@ |
| 187 | }, | 189 | }, |
| 188 | }, | 190 | }, |
| 189 | { | 191 | { |
| 190 | width: "100", | 192 | width: "200", |
| 191 | label: "操作", | 193 | label: "操作", |
| 192 | render: (h, scope) => { | 194 | render: (h, scope) => { |
| 193 | return ( | 195 | return ( |
| 194 | <div> | 196 | <div> |
| 195 | <el-button | 197 | <el-button |
| 196 | type="text" | 198 | type="text" |
| 199 | class='resetbtnColor' | ||
| 197 | style="margin-right:10px" | 200 | style="margin-right:10px" |
| 198 | onClick={() => { | 201 | onClick={() => { |
| 199 | this.handleAddSubordinate(scope.row); | 202 | this.handleAddSubordinate(scope.row); |
| ... | @@ -203,6 +206,7 @@ | ... | @@ -203,6 +206,7 @@ |
| 203 | </el-button> | 206 | </el-button> |
| 204 | <el-button | 207 | <el-button |
| 205 | type="text" | 208 | type="text" |
| 209 | class='delColor' | ||
| 206 | style="margin-left:0" | 210 | style="margin-left:0" |
| 207 | onClick={() => { | 211 | onClick={() => { |
| 208 | this.handleMinus(scope.$index, scope.row); | 212 | this.handleMinus(scope.$index, scope.row); | ... | ... |
| ... | @@ -208,9 +208,9 @@ | ... | @@ -208,9 +208,9 @@ |
| 208 | message: res.message, | 208 | message: res.message, |
| 209 | showClose: true | 209 | showClose: true |
| 210 | }) | 210 | }) |
| 211 | 211 | close() | |
| 212 | this.resetForm() | ||
| 213 | this.$emit('ok') | 212 | this.$emit('ok') |
| 213 | |||
| 214 | } else { | 214 | } else { |
| 215 | this.$message.error({ message: res.message, showClose: true }) | 215 | this.$message.error({ message: res.message, showClose: true }) |
| 216 | } | 216 | } | ... | ... |
| ... | @@ -29,181 +29,182 @@ | ... | @@ -29,181 +29,182 @@ |
| 29 | </div> | 29 | </div> |
| 30 | </template> | 30 | </template> |
| 31 | <script> | 31 | <script> |
| 32 | // 定时任务 | 32 | // 定时任务 |
| 33 | import data from "./data"; | 33 | import data from "./data"; |
| 34 | import { deleteAction, getAction, api } from "@/api/manageApi"; | 34 | import { deleteAction, getAction, api } from "@/api/manageApi"; |
| 35 | import EditDialog from "./edit-dialog.vue"; | 35 | import EditDialog from "./edit-dialog.vue"; |
| 36 | import { mapGetters } from "vuex"; | 36 | import { mapGetters } from "vuex"; |
| 37 | import { getMenuInfo } from "@/api/user"; | 37 | import { getMenuInfo } from "@/api/user"; |
| 38 | import { | 38 | import { |
| 39 | getUuid, | 39 | getUuid, |
| 40 | judgeSort, | 40 | judgeSort, |
| 41 | realMove, | 41 | realMove, |
| 42 | findParents, | 42 | findParents, |
| 43 | removeTreeListItem, | 43 | removeTreeListItem, |
| 44 | } from "@/utils/operation"; | 44 | } from "@/utils/operation"; |
| 45 | export default { | 45 | export default { |
| 46 | name: "menus", | 46 | name: "menus", |
| 47 | components: { | 47 | components: { |
| 48 | EditDialog, | 48 | EditDialog, |
| 49 | }, | 49 | }, |
| 50 | data () { | 50 | data () { |
| 51 | return { | 51 | return { |
| 52 | isDialog: false, | 52 | isDialog: false, |
| 53 | tablelistData: [], | 53 | tablelistData: [], |
| 54 | listData: [], | 54 | listData: [], |
| 55 | resourceCategoryId: "", | 55 | resourceCategoryId: "", |
| 56 | taskData: null, | 56 | taskData: null, |
| 57 | form: { | 57 | form: { |
| 58 | menuName: "", | 58 | menuName: "", |
| 59 | }, | 59 | }, |
| 60 | title: "", | 60 | title: "", |
| 61 | queryParam: {}, | 61 | queryParam: {}, |
| 62 | selectType: "0", | 62 | selectType: "0", |
| 63 | queryName: "", | 63 | queryName: "", |
| 64 | organizationId: "", // 组织机构ID | 64 | organizationId: "", // 组织机构ID |
| 65 | departmentId: "", // 部门ID | 65 | departmentId: "", // 部门ID |
| 66 | departmentList: [], // 部门列表 | 66 | departmentList: [], // 部门列表 |
| 67 | levelList: [], // 职务级别 | 67 | levelList: [], // 职务级别 |
| 68 | sexList: [], | 68 | sexList: [], |
| 69 | 69 | ||
| 70 | selectionList: [], | 70 | selectionList: [], |
| 71 | tableData: { | 71 | tableData: { |
| 72 | columns: [].concat(data.columns()).concat([ | 72 | columns: [].concat(data.columns()).concat([ |
| 73 | { | 73 | { |
| 74 | label: "操作", | 74 | label: "操作", |
| 75 | width: 380, | 75 | width: 380, |
| 76 | render: (h, scope) => { | 76 | render: (h, scope) => { |
| 77 | return ( | 77 | return ( |
| 78 | <div> | 78 | <div> |
| 79 | <el-button | 79 | <el-button |
| 80 | type="text" | 80 | type="text" |
| 81 | class='successColor' | 81 | class='successColor' |
| 82 | onClick={() => { | 82 | onClick={() => { |
| 83 | this.handleEdit(scope.row); | 83 | this.handleEdit(scope.row); |
| 84 | }} | 84 | }} |
| 85 | > | 85 | > |
| 86 | 修改 | 86 | 修改 |
| 87 | </el-button> | 87 | </el-button> |
| 88 | 88 | ||
| 89 | <el-button | 89 | <el-button |
| 90 | type="text" | 90 | type="text" |
| 91 | class='delColor' | 91 | class='delColor' |
| 92 | onClick={() => { | 92 | onClick={() => { |
| 93 | this.handleDelete(scope.row.id, scope.row.name); | 93 | this.handleDelete(scope.row.id, scope.row.name); |
| 94 | }} | 94 | }} |
| 95 | > | 95 | > |
| 96 | 删除 | 96 | 删除 |
| 97 | </el-button> | 97 | </el-button> |
| 98 | </div> | 98 | </div> |
| 99 | ); | 99 | ); |
| 100 | }, | ||
| 100 | }, | 101 | }, |
| 101 | }, | 102 | ]), |
| 102 | ]), | 103 | data: [], |
| 103 | data: [], | 104 | }, |
| 104 | }, | 105 | tableUrl: api.menus, // 菜单接口地址 |
| 105 | tableUrl: api.menus, // 菜单接口地址 | 106 | meumurlid: api.subsystem,// 项目id接口地址 |
| 106 | meumurlid: api.subsystem,// 项目id接口地址 | 107 | productId: ""//项目id |
| 107 | productId: ""//项目id | 108 | }; |
| 108 | }; | 109 | }, |
| 109 | }, | 110 | created () { |
| 110 | created () { | 111 | this.getTableList(); |
| 111 | this.getTableList(); | ||
| 112 | }, | ||
| 113 | computed: { | ||
| 114 | ...mapGetters(["products"]) | ||
| 115 | }, | ||
| 116 | methods: { | ||
| 117 | //查询 | ||
| 118 | searchQuery () { | ||
| 119 | if (this.form.menuName) { | ||
| 120 | this.tablelistData = this.childrenFn(this.listData, this.form.menuName); | ||
| 121 | } else { | ||
| 122 | this.getTableList() | ||
| 123 | } | ||
| 124 | }, | 112 | }, |
| 125 | childrenFn (arr, key) { | 113 | computed: { |
| 126 | const that = this; | 114 | ...mapGetters(["products"]) |
| 127 | let searchTree = []; | 115 | }, |
| 128 | arr.forEach((item, index) => { | 116 | methods: { |
| 129 | if (item.children != undefined && item.children.length != 0) { | 117 | //查询 |
| 130 | let leaf = that.childrenFn(item.children, key); | 118 | searchQuery () { |
| 131 | if (leaf != undefined) { | 119 | if (this.form.menuName) { |
| 132 | let { name, code, resourceCategoryId, id, iproductId, operations, metadata } = item; | 120 | this.tablelistData = this.childrenFn(this.listData, this.form.menuName); |
| 133 | let parentObj = { | 121 | } else { |
| 134 | code, name, resourceCategoryId, id, iproductId, operations, metadata, children: leaf | 122 | this.getTableList() |
| 135 | }; | 123 | } |
| 136 | searchTree.push(parentObj); | 124 | }, |
| 125 | childrenFn (arr, key) { | ||
| 126 | const that = this; | ||
| 127 | let searchTree = []; | ||
| 128 | arr.forEach((item, index) => { | ||
| 129 | if (item.children != undefined && item.children.length != 0) { | ||
| 130 | let leaf = that.childrenFn(item.children, key); | ||
| 131 | if (leaf != undefined) { | ||
| 132 | let { name, code, resourceCategoryId, id, iproductId, operations, metadata } = item; | ||
| 133 | let parentObj = { | ||
| 134 | code, name, resourceCategoryId, id, iproductId, operations, metadata, children: leaf | ||
| 135 | }; | ||
| 136 | searchTree.push(parentObj); | ||
| 137 | } else { | ||
| 138 | if (item.name.indexOf(key) != -1) { | ||
| 139 | searchTree.push(item); | ||
| 140 | } | ||
| 141 | } | ||
| 137 | } else { | 142 | } else { |
| 138 | if (item.name.indexOf(key) != -1) { | 143 | if (item.name.indexOf(key) != -1) { |
| 144 | |||
| 139 | searchTree.push(item); | 145 | searchTree.push(item); |
| 140 | } | 146 | } |
| 141 | } | 147 | } |
| 142 | } else { | 148 | }); |
| 143 | if (item.name.indexOf(key) != -1) { | 149 | if (searchTree != undefined && searchTree.length != 0) { |
| 144 | 150 | return searchTree; | |
| 145 | searchTree.push(item); | ||
| 146 | } | ||
| 147 | } | 151 | } |
| 148 | }); | 152 | }, |
| 149 | if (searchTree != undefined && searchTree.length != 0) { | 153 | // 加载表格数据 |
| 150 | return searchTree; | 154 | getTableList () { |
| 151 | } | 155 | getMenuInfo(this.BASE_API.CODE).then((res) => { |
| 152 | }, | 156 | console.log("/sthj", res); |
| 153 | // 加载表格数据 | 157 | if (res.code === 200) { |
| 154 | getTableList () { | 158 | this.tablelistData = judgeSort(res.result) |
| 155 | getMenuInfo(this.BASE_API.CODE).then((res) => { | 159 | this.listData = this.tablelistData |
| 156 | if (res.code === 200) { | 160 | } else { |
| 157 | this.tablelistData = judgeSort(res.result) | 161 | this.$message.error({ message: res.message, showClose: true }) |
| 158 | this.listData = this.tablelistData | 162 | } |
| 159 | } else { | ||
| 160 | this.$message.error({ message: res.message, showClose: true }) | ||
| 161 | } | ||
| 162 | }) | ||
| 163 | const queryOptionsid = { | ||
| 164 | conditionGroup: { | ||
| 165 | queryRelation: "AND", | ||
| 166 | conditions: [ | ||
| 167 | { | ||
| 168 | property: "code", | ||
| 169 | value: sessionStorage.getItem("products"), | ||
| 170 | operator: "EQ", | ||
| 171 | }, | ||
| 172 | ], | ||
| 173 | }, | ||
| 174 | }; | ||
| 175 | const params = { | ||
| 176 | queryOptions: queryOptionsid, | ||
| 177 | }; | ||
| 178 | // 获取系统id | ||
| 179 | getAction(this.meumurlid, params) | ||
| 180 | .then((res) => { | ||
| 181 | this.productId = res.content[0].id; | ||
| 182 | this.getAuthorityList(res.content[0].id, res.content[0].code) | ||
| 183 | this.selectedSubsystemCode = res.content[0].code | ||
| 184 | |||
| 185 | }) | ||
| 186 | .catch((error) => { | ||
| 187 | console.log("er", error); | ||
| 188 | }) | 163 | }) |
| 189 | }, | 164 | const queryOptionsid = { |
| 190 | // 新增菜单 | 165 | conditionGroup: { |
| 191 | handleAdd () { | 166 | queryRelation: "AND", |
| 192 | this.isDialog = true | 167 | conditions: [ |
| 193 | this.$refs.dialogForm.add(); | 168 | { |
| 194 | this.$refs.dialogForm.title = "新增"; | 169 | property: "code", |
| 195 | }, | 170 | value: this.BASE_API.CODE, |
| 171 | operator: "EQ", | ||
| 172 | }, | ||
| 173 | ], | ||
| 174 | }, | ||
| 175 | }; | ||
| 176 | const params = { | ||
| 177 | queryOptions: queryOptionsid, | ||
| 178 | }; | ||
| 179 | // 获取系统id | ||
| 180 | getAction(this.meumurlid, params) | ||
| 181 | .then((res) => { | ||
| 182 | this.productId = res.content[0].id; | ||
| 183 | this.getAuthorityList(res.content[0].id, res.content[0].code) | ||
| 184 | this.selectedSubsystemCode = res.content[0].code | ||
| 196 | 185 | ||
| 197 | // 修改 | 186 | }) |
| 198 | handleEdit (record) { | 187 | .catch((error) => { |
| 199 | this.isDialog = true | 188 | console.log("er", error); |
| 200 | this.$refs.dialogForm.edit(record); | 189 | }) |
| 201 | this.$refs.dialogForm.title = "修改"; | 190 | }, |
| 202 | }, | 191 | // 新增菜单 |
| 203 | // 删除 | 192 | handleAdd () { |
| 204 | handleDelete (id, content) { | 193 | this.isDialog = true |
| 205 | this.$confirm( | 194 | this.$refs.dialogForm.add(); |
| 206 | `<div class="customer-message-wrapper"> | 195 | this.$refs.dialogForm.title = "新增"; |
| 196 | }, | ||
| 197 | |||
| 198 | // 修改 | ||
| 199 | handleEdit (record) { | ||
| 200 | this.isDialog = true | ||
| 201 | this.$refs.dialogForm.edit(record); | ||
| 202 | this.$refs.dialogForm.title = "修改"; | ||
| 203 | }, | ||
| 204 | // 删除 | ||
| 205 | handleDelete (id, content) { | ||
| 206 | this.$confirm( | ||
| 207 | `<div class="customer-message-wrapper"> | ||
| 207 | <h5 class="title">您确认要执行该操作用于以下信息:</h5> | 208 | <h5 class="title">您确认要执行该操作用于以下信息:</h5> |
| 208 | <p class="content" aria-controls="${content}">${content} | 209 | <p class="content" aria-controls="${content}">${content} |
| 209 | </p> | 210 | </p> |
| ... | @@ -211,48 +212,48 @@ export default { | ... | @@ -211,48 +212,48 @@ export default { |
| 211 | <span >无法恢复</span> | 212 | <span >无法恢复</span> |
| 212 | </p> | 213 | </p> |
| 213 | </div>`, | 214 | </div>`, |
| 214 | '执行确认', | 215 | '执行确认', |
| 215 | { | 216 | { |
| 216 | dangerouslyUseHTMLString: true, | 217 | dangerouslyUseHTMLString: true, |
| 217 | customClass: 'customer-delete', | 218 | customClass: 'customer-delete', |
| 218 | confirmButtonText: '确定', | 219 | confirmButtonText: '确定', |
| 219 | cancelButtonText: '取消', | 220 | cancelButtonText: '取消', |
| 220 | type: 'warning' | 221 | type: 'warning' |
| 221 | } | ||
| 222 | ) | ||
| 223 | .then(() => { | ||
| 224 | if (!this.tableUrl) { | ||
| 225 | this.$message.error({ | ||
| 226 | message: '请设置tableUrl属性为接口地址!', | ||
| 227 | showClose: true | ||
| 228 | }) | ||
| 229 | return | ||
| 230 | } | 222 | } |
| 231 | const url = this.tableUrl + '/' + id | 223 | ) |
| 232 | deleteAction(url).then(res => { | 224 | .then(() => { |
| 233 | if (res.status === 1) { | 225 | if (!this.tableUrl) { |
| 234 | this.$message.success({ message: res.message, showClose: true }) | 226 | this.$message.error({ |
| 235 | this.reloadTableData() | 227 | message: '请设置tableUrl属性为接口地址!', |
| 236 | } else { | 228 | showClose: true |
| 237 | this.$message.error({ message: res.message, showClose: true }) | 229 | }) |
| 230 | return | ||
| 238 | } | 231 | } |
| 232 | const url = this.tableUrl + '/' + id | ||
| 233 | deleteAction(url).then(res => { | ||
| 234 | if (res.status === 1) { | ||
| 235 | this.$message.success({ message: res.message, showClose: true }) | ||
| 236 | this.reloadTableData() | ||
| 237 | } else { | ||
| 238 | this.$message.error({ message: res.message, showClose: true }) | ||
| 239 | } | ||
| 240 | }) | ||
| 239 | }) | 241 | }) |
| 240 | }) | 242 | .catch(() => { }) |
| 241 | .catch(() => { }) | 243 | }, |
| 242 | }, | 244 | // 新增、编辑回显 |
| 243 | // 新增、编辑回显 | 245 | reloadTableData () { |
| 244 | reloadTableData () { | 246 | this.getTableList() |
| 245 | this.getTableList() | 247 | }, |
| 246 | }, | 248 | }, |
| 247 | }, | 249 | }; |
| 248 | }; | ||
| 249 | </script> | 250 | </script> |
| 250 | <style scoped lang="scss"> | 251 | <style scoped lang="scss"> |
| 251 | @import "~@/styles/mixin.scss"; | 252 | @import "~@/styles/mixin.scss"; |
| 252 | 253 | ||
| 253 | // @import "~@/styles/public.scss"; | 254 | // @import "~@/styles/public.scss"; |
| 254 | 255 | ||
| 255 | /deep/.el-table__expand-icon { | 256 | /deep/.el-table__expand-icon { |
| 256 | color: #fff; | 257 | color: #fff; |
| 257 | } | 258 | } |
| 258 | </style> | 259 | </style> | ... | ... |
| ... | @@ -29,439 +29,439 @@ | ... | @@ -29,439 +29,439 @@ |
| 29 | </div> | 29 | </div> |
| 30 | </template> | 30 | </template> |
| 31 | <script> | 31 | <script> |
| 32 | import { | 32 | import { |
| 33 | getUuid, | 33 | getUuid, |
| 34 | judgeSort, | 34 | judgeSort, |
| 35 | realMove, | 35 | realMove, |
| 36 | findParents, | 36 | findParents, |
| 37 | removeTreeListItem, | 37 | removeTreeListItem, |
| 38 | } from "@/utils/operation"; | 38 | } from "@/utils/operation"; |
| 39 | import { getRolesById, getAuthorityListAction } from "@/api/authorityManage"; | 39 | import { getRolesById, getAuthorityListAction } from "@/api/authorityManage"; |
| 40 | import { getUserRoles } from "@/api/personnelManage"; | 40 | import { getUserRoles } from "@/api/personnelManage"; |
| 41 | import data from "./data"; | 41 | import data from "./data"; |
| 42 | import { getMenuInfo } from "@/api/user"; | 42 | import { getMenuInfo } from "@/api/user"; |
| 43 | import { api, getAction, deleteAction } from "@/api/manageApi"; | 43 | import { api, getAction, deleteAction } from "@/api/manageApi"; |
| 44 | import tableMixin from "@/mixins/tableMixin.js"; | 44 | import tableMixin from "@/mixins/tableMixin.js"; |
| 45 | import EditDialog from "./edit-dialog.vue"; | 45 | import EditDialog from "./edit-dialog.vue"; |
| 46 | import Roleslistdiglog from "./roleslistdiglog.vue"; | 46 | import Roleslistdiglog from "./roleslistdiglog.vue"; |
| 47 | import { mapGetters } from "vuex"; | 47 | import { mapGetters } from "vuex"; |
| 48 | import { updateOrder } from "@/api/orders" | 48 | import { updateOrder } from "@/api/orders" |
| 49 | export default { | 49 | export default { |
| 50 | name: "menus", | 50 | name: "menus", |
| 51 | mixins: [tableMixin], | 51 | mixins: [tableMixin], |
| 52 | components: { | 52 | components: { |
| 53 | EditDialog, | 53 | EditDialog, |
| 54 | Roleslistdiglog, | 54 | Roleslistdiglog, |
| 55 | }, | 55 | }, |
| 56 | data () { | 56 | data () { |
| 57 | return { | 57 | return { |
| 58 | isDialog: false, | 58 | isDialog: false, |
| 59 | personlist: null, | 59 | personlist: null, |
| 60 | waitMemberList: [], | 60 | waitMemberList: [], |
| 61 | keyList: [], | 61 | keyList: [], |
| 62 | listdata: [], | 62 | listdata: [], |
| 63 | setlistdata: [], | 63 | setlistdata: [], |
| 64 | tableUrlroles: api.roles, | 64 | tableUrlroles: api.roles, |
| 65 | form: { | 65 | form: { |
| 66 | rolesName: "", | 66 | rolesName: "", |
| 67 | }, | ||
| 68 | // 当前所选角色id | ||
| 69 | roleId: "", | ||
| 70 | title: "", | ||
| 71 | queryParam: {}, | ||
| 72 | multipleSelection: [], | ||
| 73 | // 菜单列表 | ||
| 74 | menutablelistData: [], | ||
| 75 | tableUrl: api.menus, // 菜单接口地址 | ||
| 76 | meumurlid: api.subsystem, // 项目id接口地址 | ||
| 77 | selectType: "0", | ||
| 78 | queryName: "", | ||
| 79 | organizationId: "", // 组织机构ID | ||
| 80 | departmentId: "", // 部门ID | ||
| 81 | departmentList: [], // 部门列表 | ||
| 82 | levelList: [], // 职务级别 | ||
| 83 | sexList: [], | ||
| 84 | operationCodes: null, // 操作符对象 | ||
| 85 | operationList: [], // 获取授权列表需要提交的操作符数组 | ||
| 86 | typeOptions: [ | ||
| 87 | { | ||
| 88 | value: "0", | ||
| 89 | label: "姓名", | ||
| 90 | }, | ||
| 91 | { | ||
| 92 | value: "1", | ||
| 93 | label: "工号", | ||
| 94 | }, | ||
| 95 | { | ||
| 96 | value: "2", | ||
| 97 | label: "部门", | ||
| 98 | }, | ||
| 99 | { | ||
| 100 | value: "3", | ||
| 101 | label: "机构", | ||
| 102 | }, | 67 | }, |
| 103 | ], | 68 | // 当前所选角色id |
| 104 | 69 | roleId: "", | |
| 105 | selectionList: [], | 70 | title: "", |
| 106 | tableData: { | 71 | queryParam: {}, |
| 107 | columns: [ | 72 | multipleSelection: [], |
| 73 | // 菜单列表 | ||
| 74 | menutablelistData: [], | ||
| 75 | tableUrl: api.menus, // 菜单接口地址 | ||
| 76 | meumurlid: api.subsystem, // 项目id接口地址 | ||
| 77 | selectType: "0", | ||
| 78 | queryName: "", | ||
| 79 | organizationId: "", // 组织机构ID | ||
| 80 | departmentId: "", // 部门ID | ||
| 81 | departmentList: [], // 部门列表 | ||
| 82 | levelList: [], // 职务级别 | ||
| 83 | sexList: [], | ||
| 84 | operationCodes: null, // 操作符对象 | ||
| 85 | operationList: [], // 获取授权列表需要提交的操作符数组 | ||
| 86 | typeOptions: [ | ||
| 108 | { | 87 | { |
| 109 | label: "序号", | 88 | value: "0", |
| 110 | type: "index", | 89 | label: "姓名", |
| 111 | width: "50", | ||
| 112 | index: this.indexMethod, | ||
| 113 | }, | 90 | }, |
| 114 | ] | 91 | { |
| 115 | .concat(data.columns()) | 92 | value: "1", |
| 116 | .concat([ | 93 | label: "工号", |
| 94 | }, | ||
| 95 | { | ||
| 96 | value: "2", | ||
| 97 | label: "部门", | ||
| 98 | }, | ||
| 99 | { | ||
| 100 | value: "3", | ||
| 101 | label: "机构", | ||
| 102 | }, | ||
| 103 | ], | ||
| 104 | |||
| 105 | selectionList: [], | ||
| 106 | tableData: { | ||
| 107 | columns: [ | ||
| 117 | { | 108 | { |
| 118 | label: "排序", | 109 | label: "序号", |
| 119 | width: 300, | 110 | type: "index", |
| 120 | render: (h, scope) => { | 111 | width: "50", |
| 121 | return ( | 112 | index: this.indexMethod, |
| 122 | <div> | ||
| 123 | <el-button | ||
| 124 | type="text" | ||
| 125 | class='movebtnColor' | ||
| 126 | disabled={scope.row.isTop} | ||
| 127 | onClick={() => { | ||
| 128 | this.updateOrder(scope.row, 'TOP'); | ||
| 129 | }} | ||
| 130 | > | ||
| 131 | 置顶 | ||
| 132 | </el-button> | ||
| 133 | <el-button | ||
| 134 | type="text" | ||
| 135 | class='movebtnColor' | ||
| 136 | disabled={scope.row.isTop} | ||
| 137 | onClick={() => { | ||
| 138 | this.updateOrder(scope.row, 'UP'); | ||
| 139 | }} | ||
| 140 | > | ||
| 141 | 上移 | ||
| 142 | </el-button> | ||
| 143 | <el-button | ||
| 144 | type="text" | ||
| 145 | class='movebtnColor' | ||
| 146 | disabled={scope.row.isBottom} | ||
| 147 | onClick={() => { | ||
| 148 | this.updateOrder(scope.row, 'DOWN'); | ||
| 149 | }} | ||
| 150 | > | ||
| 151 | 下移 | ||
| 152 | </el-button> | ||
| 153 | <el-button | ||
| 154 | type="text" | ||
| 155 | class='movebtnColor' | ||
| 156 | disabled={scope.row.isBottom} | ||
| 157 | onClick={() => { | ||
| 158 | this.updateOrder(scope.row, 'BOTTOM'); | ||
| 159 | }} | ||
| 160 | > | ||
| 161 | 置底 | ||
| 162 | </el-button> | ||
| 163 | </div> | ||
| 164 | ); | ||
| 165 | }, | ||
| 166 | }, | 113 | }, |
| 167 | ]) | 114 | ] |
| 168 | .concat([ | 115 | .concat(data.columns()) |
| 169 | { | 116 | .concat([ |
| 170 | label: "操作", | 117 | { |
| 171 | width: 280, | 118 | label: "排序", |
| 172 | render: (h, scope) => { | 119 | width: 300, |
| 173 | return ( | 120 | render: (h, scope) => { |
| 174 | <div> | 121 | return ( |
| 175 | <el-tooltip | 122 | <div> |
| 176 | class="item" | 123 | <el-button |
| 177 | effect="dark" | 124 | type="text" |
| 178 | disabled={scope.row.type !== "Everyone"} | 125 | class='movebtnColor' |
| 179 | content="没有点击的权限" | 126 | disabled={scope.row.isTop} |
| 180 | placement="top" | 127 | onClick={() => { |
| 181 | > | 128 | this.updateOrder(scope.row, 'TOP'); |
| 182 | <span> | 129 | }} |
| 183 | <el-button | 130 | > |
| 184 | disabled={scope.row.type === "Everyone"} | 131 | 置顶 |
| 185 | type="text" | 132 | </el-button> |
| 186 | size="mini" | 133 | <el-button |
| 187 | class="configurationbtnColor" | 134 | type="text" |
| 188 | onClick={() => { | 135 | class='movebtnColor' |
| 189 | this.getList(scope.row); | 136 | disabled={scope.row.isTop} |
| 190 | }} | 137 | onClick={() => { |
| 191 | > | 138 | this.updateOrder(scope.row, 'UP'); |
| 192 | 配置 | 139 | }} |
| 193 | </el-button> | 140 | > |
| 194 | </span> | 141 | 上移 |
| 195 | </el-tooltip> | 142 | </el-button> |
| 196 | <el-tooltip | 143 | <el-button |
| 197 | class="item" | 144 | type="text" |
| 198 | effect="dark" | 145 | class='movebtnColor' |
| 199 | disabled={scope.row.category !== 1} | 146 | disabled={scope.row.isBottom} |
| 200 | content="系统内置角色 不允许修改" | 147 | onClick={() => { |
| 201 | placement="top" | 148 | this.updateOrder(scope.row, 'DOWN'); |
| 202 | > | 149 | }} |
| 203 | <span> | 150 | > |
| 204 | <el-button | 151 | 下移 |
| 205 | disabled={scope.row.category === 1} | 152 | </el-button> |
| 206 | type="text" | 153 | <el-button |
| 207 | size="mini" | 154 | type="text" |
| 208 | class='successColor' | 155 | class='movebtnColor' |
| 209 | onClick={() => { | 156 | disabled={scope.row.isBottom} |
| 210 | this.handleAddEdit(scope.row); | 157 | onClick={() => { |
| 211 | }} | 158 | this.updateOrder(scope.row, 'BOTTOM'); |
| 212 | > | 159 | }} |
| 213 | 修改 | 160 | > |
| 214 | </el-button> | 161 | 置底 |
| 215 | </span> | 162 | </el-button> |
| 216 | </el-tooltip> | 163 | </div> |
| 217 | <el-tooltip | 164 | ); |
| 218 | class="item" | 165 | }, |
| 219 | effect="dark" | ||
| 220 | disabled={scope.row.category !== 1} | ||
| 221 | content="系统内置角色 不允许删除" | ||
| 222 | placement="top" | ||
| 223 | > | ||
| 224 | <span> | ||
| 225 | <el-button | ||
| 226 | type="text" | ||
| 227 | disabled={scope.row.category === 1} | ||
| 228 | size="mini" | ||
| 229 | class='delColor' | ||
| 230 | // style="color:#F56C6C" | ||
| 231 | onClick={() => { | ||
| 232 | this.handleDelete(scope.row.id, scope.row.name); | ||
| 233 | }} | ||
| 234 | > | ||
| 235 | 删除 | ||
| 236 | </el-button> | ||
| 237 | </span> | ||
| 238 | </el-tooltip> | ||
| 239 | </div> | ||
| 240 | ); | ||
| 241 | }, | 166 | }, |
| 167 | ]) | ||
| 168 | .concat([ | ||
| 169 | { | ||
| 170 | label: "操作", | ||
| 171 | width: 280, | ||
| 172 | render: (h, scope) => { | ||
| 173 | return ( | ||
| 174 | <div> | ||
| 175 | <el-tooltip | ||
| 176 | class="item" | ||
| 177 | effect="dark" | ||
| 178 | disabled={scope.row.type !== "Everyone"} | ||
| 179 | content="没有点击的权限" | ||
| 180 | placement="top" | ||
| 181 | > | ||
| 182 | <span> | ||
| 183 | <el-button | ||
| 184 | disabled={scope.row.type === "Everyone"} | ||
| 185 | type="text" | ||
| 186 | size="mini" | ||
| 187 | class="configurationbtnColor" | ||
| 188 | onClick={() => { | ||
| 189 | this.getList(scope.row); | ||
| 190 | }} | ||
| 191 | > | ||
| 192 | 配置 | ||
| 193 | </el-button> | ||
| 194 | </span> | ||
| 195 | </el-tooltip> | ||
| 196 | <el-tooltip | ||
| 197 | class="item" | ||
| 198 | effect="dark" | ||
| 199 | disabled={scope.row.category !== 1} | ||
| 200 | content="系统内置角色 不允许修改" | ||
| 201 | placement="top" | ||
| 202 | > | ||
| 203 | <span> | ||
| 204 | <el-button | ||
| 205 | disabled={scope.row.category === 1} | ||
| 206 | type="text" | ||
| 207 | size="mini" | ||
| 208 | class='successColor' | ||
| 209 | onClick={() => { | ||
| 210 | this.handleAddEdit(scope.row); | ||
| 211 | }} | ||
| 212 | > | ||
| 213 | 修改 | ||
| 214 | </el-button> | ||
| 215 | </span> | ||
| 216 | </el-tooltip> | ||
| 217 | <el-tooltip | ||
| 218 | class="item" | ||
| 219 | effect="dark" | ||
| 220 | disabled={scope.row.category !== 1} | ||
| 221 | content="系统内置角色 不允许删除" | ||
| 222 | placement="top" | ||
| 223 | > | ||
| 224 | <span> | ||
| 225 | <el-button | ||
| 226 | type="text" | ||
| 227 | disabled={scope.row.category === 1} | ||
| 228 | size="mini" | ||
| 229 | class='delColor' | ||
| 230 | // style="color:#F56C6C" | ||
| 231 | onClick={() => { | ||
| 232 | this.handleDelete(scope.row.id, scope.row.name); | ||
| 233 | }} | ||
| 234 | > | ||
| 235 | 删除 | ||
| 236 | </el-button> | ||
| 237 | </span> | ||
| 238 | </el-tooltip> | ||
| 239 | </div> | ||
| 240 | ); | ||
| 241 | }, | ||
| 242 | 242 | ||
| 243 | }]), | 243 | }]), |
| 244 | }, | 244 | }, |
| 245 | data: [], | 245 | data: [], |
| 246 | } | ||
| 247 | }, | ||
| 248 | created () { | ||
| 249 | this.getTableData(); | ||
| 250 | this.getTableList() | ||
| 251 | }, | ||
| 252 | computed: { | ||
| 253 | ...mapGetters(["products"]) | ||
| 254 | }, | ||
| 255 | mounted () { }, | ||
| 256 | methods: { | ||
| 257 | //查询 | ||
| 258 | searchQuery () { | ||
| 259 | if (this.form.rolesName) { | ||
| 260 | this.listdata = this.childrenFn(this.setlistdata, this.form.rolesName); | ||
| 261 | } else { | ||
| 262 | this.getTableData() | ||
| 263 | } | 246 | } |
| 264 | }, | 247 | }, |
| 265 | childrenFn (arr, key) { | 248 | created () { |
| 266 | let searchTree = []; | 249 | this.getTableData(); |
| 267 | arr.forEach((item, index) => { | 250 | this.getTableList() |
| 268 | if (item.name.indexOf(key) != -1) { | ||
| 269 | |||
| 270 | searchTree.push(item); | ||
| 271 | } | ||
| 272 | }); | ||
| 273 | if (searchTree != undefined && searchTree.length != 0) { | ||
| 274 | return judgeSort(searchTree); | ||
| 275 | } | ||
| 276 | }, | 251 | }, |
| 277 | // 获取角色列表 | 252 | computed: { |
| 278 | getTableData () { | 253 | ...mapGetters(["products"]) |
| 279 | getRolesById([1, 2]) | ||
| 280 | .then((res) => { | ||
| 281 | this.listdata = res.content; | ||
| 282 | this.listdata = judgeSort(this.listdata); | ||
| 283 | this.setlistdata = res.content; | ||
| 284 | }) | ||
| 285 | .catch((e) => console.error(e)); | ||
| 286 | }, | 254 | }, |
| 287 | 255 | mounted () { }, | |
| 288 | // 获取菜单列表 | 256 | methods: { |
| 289 | getTableList () { | 257 | //查询 |
| 290 | getMenuInfo(this.BASE_API.CODE).then((res) => { | 258 | searchQuery () { |
| 291 | if (res.code === 200) { | 259 | if (this.form.rolesName) { |
| 292 | this.menutablelistData = judgeSort(res.result) | 260 | this.listdata = this.childrenFn(this.setlistdata, this.form.rolesName); |
| 293 | } else { | 261 | } else { |
| 294 | this.$message.error({ message: res.message, showClose: true }) | 262 | this.getTableData() |
| 295 | } | 263 | } |
| 296 | }) | 264 | }, |
| 297 | const queryOptionsid = { | 265 | childrenFn (arr, key) { |
| 298 | conditionGroup: { | 266 | let searchTree = []; |
| 299 | queryRelation: "AND", | 267 | arr.forEach((item, index) => { |
| 300 | conditions: [ | 268 | if (item.name.indexOf(key) != -1) { |
| 301 | { | 269 | |
| 302 | property: "code", | 270 | searchTree.push(item); |
| 303 | value: this.products, | 271 | } |
| 304 | operator: "EQ", | ||
| 305 | }, | ||
| 306 | ], | ||
| 307 | }, | ||
| 308 | }; | ||
| 309 | const params = { | ||
| 310 | queryOptions: queryOptionsid, | ||
| 311 | }; | ||
| 312 | // 获取系统id | ||
| 313 | getAction(this.meumurlid, params) | ||
| 314 | .then((res) => { | ||
| 315 | this.productId = res.content[0].id; | ||
| 316 | this.getAuthorityList(res.content[0].id, res.content[0].code) | ||
| 317 | this.selectedSubsystemCode = res.content[0].code | ||
| 318 | // let queryOptions = { | ||
| 319 | // conditionGroup: { | ||
| 320 | // conditions: [ | ||
| 321 | // { | ||
| 322 | // property: "productId", | ||
| 323 | // value: this.productId, | ||
| 324 | // operator: "EQ", | ||
| 325 | // }, | ||
| 326 | // ], | ||
| 327 | // queryRelation: "AND", | ||
| 328 | // }, | ||
| 329 | // orderBys: [{ property: "sort", direction: "desc" }], | ||
| 330 | // }; | ||
| 331 | // if (!this.tableUrl) { | ||
| 332 | // console.log("请设置tableUrl属性为接口地址!"); | ||
| 333 | // return; | ||
| 334 | // } | ||
| 335 | // if (this.queryOptions !== "") { | ||
| 336 | // this.queryParam.queryOptions = JSON.stringify(queryOptions); | ||
| 337 | // } | ||
| 338 | // 查询系统菜单 | ||
| 339 | // getAction(this.tableUrl, this.queryParam) | ||
| 340 | // .then((res) => { | ||
| 341 | // if (res.status === 1) { | ||
| 342 | // this.loading = false; | ||
| 343 | // // this.menutablelistData = res.content; | ||
| 344 | // console.log("res.content菜单", res.content); | ||
| 345 | // } else { | ||
| 346 | // this.$message.error({ message: res.message, showClose: true }); | ||
| 347 | // this.loading = false; | ||
| 348 | // } | ||
| 349 | // }) | ||
| 350 | // .catch((error) => { | ||
| 351 | // console.log("er", error); | ||
| 352 | // this.loading = false; | ||
| 353 | // }); | ||
| 354 | }) | ||
| 355 | .catch((error) => { | ||
| 356 | console.log("er", error); | ||
| 357 | }); | 272 | }); |
| 358 | }, | 273 | if (searchTree != undefined && searchTree.length != 0) { |
| 359 | // 获取权限列表 | 274 | return judgeSort(searchTree); |
| 360 | getAuthorityList (productId, code) { | 275 | } |
| 361 | getAuthorityListAction(productId, code).then( | 276 | }, |
| 362 | res => { | 277 | // 获取角色列表 |
| 363 | if (res.status === 1) { | 278 | getTableData () { |
| 364 | if (res.content.length !== 0) { | 279 | getRolesById([1, 2]) |
| 365 | this.operationCodes = res.content[0].operations | 280 | .then((res) => { |
| 366 | this.operationList = [] | 281 | this.listdata = res.content; |
| 367 | for (var k in this.operationCodes) { | 282 | this.listdata = judgeSort(this.listdata); |
| 368 | this.operationList.push(k) | 283 | this.setlistdata = res.content; |
| 369 | } | 284 | }) |
| 370 | } | 285 | .catch((e) => console.error(e)); |
| 286 | }, | ||
| 287 | |||
| 288 | // 获取菜单列表 | ||
| 289 | getTableList () { | ||
| 290 | getMenuInfo(this.BASE_API.CODE).then((res) => { | ||
| 291 | if (res.code === 200) { | ||
| 292 | this.menutablelistData = judgeSort(res.result) | ||
| 371 | } else { | 293 | } else { |
| 372 | this.$message.error({ message: res.message, showClose: true }) | 294 | this.$message.error({ message: res.message, showClose: true }) |
| 373 | } | 295 | } |
| 374 | } | 296 | }) |
| 375 | ) | 297 | const queryOptionsid = { |
| 376 | }, | 298 | conditionGroup: { |
| 377 | 299 | queryRelation: "AND", | |
| 378 | // 配置 | 300 | conditions: [ |
| 379 | getList (row) { | 301 | { |
| 380 | this.getTableList() | 302 | property: "code", |
| 381 | const params = {}; | 303 | value: this.products, |
| 382 | const queryOptions = { | 304 | operator: "EQ", |
| 383 | conditionGroup: { | 305 | }, |
| 384 | conditions: [ | 306 | ], |
| 385 | { | 307 | }, |
| 386 | property: "organizationId", | 308 | }; |
| 387 | value: row.organizationId, | 309 | const params = { |
| 388 | operator: "EQ", | 310 | queryOptions: queryOptionsid, |
| 389 | }, | 311 | }; |
| 390 | { | 312 | // 获取系统id |
| 391 | property: "departmentId", | 313 | getAction(this.meumurlid, params) |
| 392 | value: row.departmentId, | 314 | .then((res) => { |
| 393 | operator: "EQ", | 315 | this.productId = res.content[0].id; |
| 394 | }, | 316 | this.getAuthorityList(res.content[0].id, res.content[0].code) |
| 395 | ], | 317 | this.selectedSubsystemCode = res.content[0].code |
| 396 | queryRelation: "AND", | 318 | // let queryOptions = { |
| 397 | }, | 319 | // conditionGroup: { |
| 398 | orderBys: [{ property: "sort", direction: "desc" }], | 320 | // conditions: [ |
| 399 | }; | 321 | // { |
| 400 | params.queryOptions = JSON.stringify(queryOptions); | 322 | // property: "productId", |
| 401 | 323 | // value: this.productId, | |
| 402 | getUserRoles(row.id).then((res) => { | 324 | // operator: "EQ", |
| 403 | if (res.status === 1) { | 325 | // }, |
| 404 | this.personlist = res.content; | 326 | // ], |
| 405 | getAction(api.users, params).then((res) => { | 327 | // queryRelation: "AND", |
| 328 | // }, | ||
| 329 | // orderBys: [{ property: "sort", direction: "desc" }], | ||
| 330 | // }; | ||
| 331 | // if (!this.tableUrl) { | ||
| 332 | // console.log("请设置tableUrl属性为接口地址!"); | ||
| 333 | // return; | ||
| 334 | // } | ||
| 335 | // if (this.queryOptions !== "") { | ||
| 336 | // this.queryParam.queryOptions = JSON.stringify(queryOptions); | ||
| 337 | // } | ||
| 338 | // 查询系统菜单 | ||
| 339 | // getAction(this.tableUrl, this.queryParam) | ||
| 340 | // .then((res) => { | ||
| 341 | // if (res.status === 1) { | ||
| 342 | // this.loading = false; | ||
| 343 | // // this.menutablelistData = res.content; | ||
| 344 | // console.log("res.content菜单", res.content); | ||
| 345 | // } else { | ||
| 346 | // this.$message.error({ message: res.message, showClose: true }); | ||
| 347 | // this.loading = false; | ||
| 348 | // } | ||
| 349 | // }) | ||
| 350 | // .catch((error) => { | ||
| 351 | // console.log("er", error); | ||
| 352 | // this.loading = false; | ||
| 353 | // }); | ||
| 354 | }) | ||
| 355 | .catch((error) => { | ||
| 356 | console.log("er", error); | ||
| 357 | }); | ||
| 358 | }, | ||
| 359 | // 获取权限列表 | ||
| 360 | getAuthorityList (productId, code) { | ||
| 361 | getAuthorityListAction(productId, code).then( | ||
| 362 | res => { | ||
| 406 | if (res.status === 1) { | 363 | if (res.status === 1) { |
| 407 | this.waitMemberList = res.content; | 364 | if (res.content.length !== 0) { |
| 408 | if (this.personlist) { | 365 | this.operationCodes = res.content[0].operations |
| 409 | this.waitMemberList.forEach((item, i) => { | 366 | this.operationList = [] |
| 410 | this.personlist.forEach((val) => { | 367 | for (var k in this.operationCodes) { |
| 411 | if (item.id === val.id) { | 368 | this.operationList.push(k) |
| 412 | this.waitMemberList[i].selectStatus = 0; | 369 | } |
| 413 | } | ||
| 414 | }); | ||
| 415 | }); | ||
| 416 | } | 370 | } |
| 417 | |||
| 418 | this.$refs.rolesForm.personlist(this.waitMemberList, row.id); | ||
| 419 | this.$refs.rolesForm.menulist(this.operationList, row.id, this.selectedSubsystemCode, this.menutablelistData, this.operationCodes); | ||
| 420 | } else { | 371 | } else { |
| 421 | this.$message.error({ message: res.message, showClose: true }); | 372 | this.$message.error({ message: res.message, showClose: true }) |
| 422 | } | 373 | } |
| 423 | }); | 374 | } |
| 424 | this.$refs.rolesForm.title = "人员配置"; | 375 | ) |
| 425 | } else this.$message.error({ message: res.message, showClose: true }); | 376 | }, |
| 426 | }); | ||
| 427 | }, | ||
| 428 | // 新增、修改角色 | ||
| 429 | handleAddEdit (value) { | ||
| 430 | this.isDialog = true | ||
| 431 | this.$refs.addEditDialog.menuType = this.menuType; | ||
| 432 | this.$refs.addEditDialog.roleId = value.id; | ||
| 433 | this.roleSort = value.sort ? value.sort : 0; | ||
| 434 | this.$refs.addEditDialog.dialogForm.roleType = sessionStorage.getItem("products"); | ||
| 435 | if (value.id) { | ||
| 436 | this.$refs.addEditDialog.dialogForm.roleName = value.name; | ||
| 437 | 377 | ||
| 438 | this.$refs.addEditDialog.dialogForm.roleTextArea = value.description; | 378 | // 配置 |
| 439 | } | 379 | getList (row) { |
| 440 | this.$refs.addEditDialog.showAddEditDialog = true; | 380 | this.getTableList() |
| 441 | this.$refs.addEditDialog.title = value.id ? "修改" : "新增"; | 381 | const params = {}; |
| 442 | }, | 382 | const queryOptions = { |
| 443 | //排序 | 383 | conditionGroup: { |
| 444 | updateOrder (record, operate) { | 384 | conditions: [ |
| 445 | const findIndex = this.listdata.findIndex(item => item.id === record.id) | 385 | { |
| 446 | let swapId = '' | 386 | property: "organizationId", |
| 447 | if (operate === 'UP') { | 387 | value: row.organizationId, |
| 448 | swapId = this.listdata[findIndex - 1].id | 388 | operator: "EQ", |
| 449 | } else if (operate === 'DOWN') { | 389 | }, |
| 450 | swapId = this.listdata[findIndex + 1].id | 390 | { |
| 451 | } | 391 | property: "departmentId", |
| 452 | updateOrder('/rest/roles', record, operate, swapId).then(res => { | 392 | value: row.departmentId, |
| 453 | if (res.status === 1) { | 393 | operator: "EQ", |
| 454 | this.$message.success({ message: res.message, showClose: true }) | 394 | }, |
| 455 | this.getTableData(); | 395 | ], |
| 456 | } else { | 396 | queryRelation: "AND", |
| 457 | this.$message.error({ message: res.message, showClose: true }) | 397 | }, |
| 398 | orderBys: [{ property: "sort", direction: "desc" }], | ||
| 399 | }; | ||
| 400 | params.queryOptions = JSON.stringify(queryOptions); | ||
| 401 | |||
| 402 | getUserRoles(row.id).then((res) => { | ||
| 403 | if (res.status === 1) { | ||
| 404 | this.personlist = res.content; | ||
| 405 | getAction(api.users, params).then((res) => { | ||
| 406 | if (res.status === 1) { | ||
| 407 | this.waitMemberList = res.content; | ||
| 408 | if (this.personlist) { | ||
| 409 | this.waitMemberList.forEach((item, i) => { | ||
| 410 | this.personlist.forEach((val) => { | ||
| 411 | if (item.id === val.id) { | ||
| 412 | this.waitMemberList[i].selectStatus = 0; | ||
| 413 | } | ||
| 414 | }); | ||
| 415 | }); | ||
| 416 | } | ||
| 417 | |||
| 418 | this.$refs.rolesForm.personlist(this.waitMemberList, row.id); | ||
| 419 | this.$refs.rolesForm.menulist(this.operationList, row.id, this.selectedSubsystemCode, this.menutablelistData, this.operationCodes); | ||
| 420 | } else { | ||
| 421 | this.$message.error({ message: res.message, showClose: true }); | ||
| 422 | } | ||
| 423 | }); | ||
| 424 | this.$refs.rolesForm.title = "人员配置"; | ||
| 425 | } else this.$message.error({ message: res.message, showClose: true }); | ||
| 426 | }); | ||
| 427 | }, | ||
| 428 | // 新增、修改角色 | ||
| 429 | handleAddEdit (value) { | ||
| 430 | this.isDialog = true | ||
| 431 | this.$refs.addEditDialog.menuType = this.menuType; | ||
| 432 | this.$refs.addEditDialog.roleId = value.id; | ||
| 433 | this.roleSort = value.sort ? value.sort : 0; | ||
| 434 | this.$refs.addEditDialog.dialogForm.roleType = this.BASE_API.CODE; | ||
| 435 | if (value.id) { | ||
| 436 | this.$refs.addEditDialog.dialogForm.roleName = value.name; | ||
| 437 | |||
| 438 | this.$refs.addEditDialog.dialogForm.roleTextArea = value.description; | ||
| 458 | } | 439 | } |
| 459 | }) | 440 | this.$refs.addEditDialog.showAddEditDialog = true; |
| 460 | }, | 441 | this.$refs.addEditDialog.title = value.id ? "修改" : "新增"; |
| 461 | // 删除 | 442 | }, |
| 462 | handleDelete: function (id, content = "") { | 443 | //排序 |
| 463 | this.$confirm( | 444 | updateOrder (record, operate) { |
| 464 | `<div class="customer-message-wrapper"> | 445 | const findIndex = this.listdata.findIndex(item => item.id === record.id) |
| 446 | let swapId = '' | ||
| 447 | if (operate === 'UP') { | ||
| 448 | swapId = this.listdata[findIndex - 1].id | ||
| 449 | } else if (operate === 'DOWN') { | ||
| 450 | swapId = this.listdata[findIndex + 1].id | ||
| 451 | } | ||
| 452 | updateOrder('/rest/roles', record, operate, swapId).then(res => { | ||
| 453 | if (res.status === 1) { | ||
| 454 | this.$message.success({ message: res.message, showClose: true }) | ||
| 455 | this.getTableData(); | ||
| 456 | } else { | ||
| 457 | this.$message.error({ message: res.message, showClose: true }) | ||
| 458 | } | ||
| 459 | }) | ||
| 460 | }, | ||
| 461 | // 删除 | ||
| 462 | handleDelete: function (id, content = "") { | ||
| 463 | this.$confirm( | ||
| 464 | `<div class="customer-message-wrapper"> | ||
| 465 | <h5 class="title">您确认要执行该操作用于以下信息:</h5> | 465 | <h5 class="title">您确认要执行该操作用于以下信息:</h5> |
| 466 | <p class="content" aria-controls="${content}">${content} | 466 | <p class="content" aria-controls="${content}">${content} |
| 467 | </p> | 467 | </p> |
| ... | @@ -469,50 +469,50 @@ export default { | ... | @@ -469,50 +469,50 @@ export default { |
| 469 | <span >无法恢复</span> | 469 | <span >无法恢复</span> |
| 470 | </p> | 470 | </p> |
| 471 | </div>`, | 471 | </div>`, |
| 472 | "执行确认", | 472 | "执行确认", |
| 473 | { | 473 | { |
| 474 | dangerouslyUseHTMLString: true, | 474 | dangerouslyUseHTMLString: true, |
| 475 | customClass: "customer-delete", | 475 | customClass: "customer-delete", |
| 476 | confirmButtonText: "确定", | 476 | confirmButtonText: "确定", |
| 477 | cancelButtonText: "取消", | 477 | cancelButtonText: "取消", |
| 478 | type: "warning", | 478 | type: "warning", |
| 479 | } | ||
| 480 | ) | ||
| 481 | .then(() => { | ||
| 482 | if (!this.tableUrlroles) { | ||
| 483 | this.$message.error({ | ||
| 484 | message: "请设置tableUrl属性为接口地址!", | ||
| 485 | showClose: true, | ||
| 486 | }); | ||
| 487 | return; | ||
| 488 | } | 479 | } |
| 489 | const url = this.tableUrlroles + "/" + id; | 480 | ) |
| 490 | deleteAction(url).then((res) => { | 481 | .then(() => { |
| 491 | if (res.status === 1) { | 482 | if (!this.tableUrlroles) { |
| 492 | this.$message.success({ message: res.message, showClose: true }); | 483 | this.$message.error({ |
| 493 | this.getTableData(); | 484 | message: "请设置tableUrl属性为接口地址!", |
| 494 | } else { | 485 | showClose: true, |
| 495 | this.$message.error({ message: res.message, showClose: true }); | 486 | }); |
| 487 | return; | ||
| 496 | } | 488 | } |
| 497 | }); | 489 | const url = this.tableUrlroles + "/" + id; |
| 498 | }) | 490 | deleteAction(url).then((res) => { |
| 499 | .catch(() => { }); | 491 | if (res.status === 1) { |
| 500 | }, | 492 | this.$message.success({ message: res.message, showClose: true }); |
| 501 | // 新增回显 | 493 | this.getTableData(); |
| 502 | reloadTableData () { | 494 | } else { |
| 503 | this.getTableData(); | 495 | this.$message.error({ message: res.message, showClose: true }); |
| 496 | } | ||
| 497 | }); | ||
| 498 | }) | ||
| 499 | .catch(() => { }); | ||
| 500 | }, | ||
| 501 | // 新增回显 | ||
| 502 | reloadTableData () { | ||
| 503 | this.getTableData(); | ||
| 504 | }, | ||
| 504 | }, | 505 | }, |
| 505 | }, | 506 | }; |
| 506 | }; | ||
| 507 | </script> | 507 | </script> |
| 508 | <style scoped lang="scss"> | 508 | <style scoped lang="scss"> |
| 509 | @import "~@/styles/mixin.scss"; | 509 | @import "~@/styles/mixin.scss"; |
| 510 | // @import "~@/styles/public.scss"; | 510 | // @import "~@/styles/public.scss"; |
| 511 | 511 | ||
| 512 | /deep/.el-button.is-disabled.el-button--text { | 512 | /deep/.el-button.is-disabled.el-button--text { |
| 513 | width: 64px; | 513 | width: 64px; |
| 514 | height: 28px; | 514 | height: 28px; |
| 515 | background: rgba(255, 255, 255, 0.1); | 515 | background: rgba(255, 255, 255, 0.1); |
| 516 | border-radius: 16px; | 516 | border-radius: 16px; |
| 517 | } | 517 | } |
| 518 | </style> | 518 | </style> | ... | ... |
| ... | @@ -29,24 +29,80 @@ | ... | @@ -29,24 +29,80 @@ |
| 29 | </div> | 29 | </div> |
| 30 | </template> | 30 | </template> |
| 31 | <script> | 31 | <script> |
| 32 | // 定时任务 | 32 | // 定时任务 |
| 33 | import data from "./data" | 33 | import data from "./data" |
| 34 | import sjsbTask from '@/api/sjsbTask.js' | 34 | import sjsbTask from '@/api/sjsbTask.js' |
| 35 | import tableMixin from '@/mixins/tableMixin.js' | 35 | import tableMixin from '@/mixins/tableMixin.js' |
| 36 | import addTask from '../components/addTask.vue' | 36 | import addTask from '../components/addTask.vue' |
| 37 | export default { | 37 | export default { |
| 38 | name: "timedTask", | 38 | name: "timedTask", |
| 39 | mixins: [tableMixin], | 39 | mixins: [tableMixin], |
| 40 | components: { | 40 | components: { |
| 41 | addTask | 41 | addTask |
| 42 | }, | 42 | }, |
| 43 | data () { | 43 | data () { |
| 44 | return { | 44 | return { |
| 45 | taskData: null, | 45 | taskData: null, |
| 46 | isDialog: false, | 46 | isDialog: false, |
| 47 | form: { | 47 | form: { |
| 48 | jobName: '', | 48 | jobName: '', |
| 49 | currentPage: 1 | 49 | currentPage: 1 |
| 50 | }, | ||
| 51 | selectionList: [], | ||
| 52 | tableData: { | ||
| 53 | columns: [{ | ||
| 54 | label: '序号', | ||
| 55 | type: 'index', | ||
| 56 | width: '50', | ||
| 57 | index: this.indexMethod, | ||
| 58 | }].concat(data.columns()).concat([ | ||
| 59 | { | ||
| 60 | label: "操作", | ||
| 61 | width: 380, | ||
| 62 | render: (h, scope) => { | ||
| 63 | return ( | ||
| 64 | <div> | ||
| 65 | <el-button type="text" | ||
| 66 | size="mini" | ||
| 67 | v-show={scope.row.jobStatus === 0} | ||
| 68 | class='btnColor' | ||
| 69 | onClick={() => { this.handleActive(scope.row) }}>激活 | ||
| 70 | </el-button> | ||
| 71 | <el-button type="text" | ||
| 72 | size="mini" | ||
| 73 | v-show={scope.row.jobStatus === -1} | ||
| 74 | class='btnColor' | ||
| 75 | onClick={() => { this.recover(scope.row) }}>恢复 | ||
| 76 | </el-button> | ||
| 77 | <el-button type="text" | ||
| 78 | size="mini" | ||
| 79 | class='successColor' | ||
| 80 | onClick={() => { this.handleEdit(scope.row) }}>编辑 | ||
| 81 | </el-button> | ||
| 82 | <el-button type="text" | ||
| 83 | size="mini" | ||
| 84 | class='successColor' | ||
| 85 | v-show={scope.row.jobStatus !== -1} | ||
| 86 | onClick={() => { this.handleDel(scope.row) }}>删除 | ||
| 87 | </el-button> | ||
| 88 | </div> | ||
| 89 | ); | ||
| 90 | }, | ||
| 91 | }, | ||
| 92 | ]), | ||
| 93 | data: [] | ||
| 94 | }, | ||
| 95 | pageData: { | ||
| 96 | total: 0, | ||
| 97 | pageSize: 15, | ||
| 98 | current: 1, | ||
| 99 | }, | ||
| 100 | } | ||
| 101 | }, | ||
| 102 | methods: { | ||
| 103 | handleAdd () { | ||
| 104 | this.taskData = null | ||
| 105 | this.isDialog = true | ||
| 50 | }, | 106 | }, |
| 51 | selectionList: [], | 107 | selectionList: [], |
| 52 | tableData: { | 108 | tableData: { |
| ... | @@ -97,8 +153,7 @@ export default { | ... | @@ -97,8 +153,7 @@ export default { |
| 97 | pageSize: 15, | 153 | pageSize: 15, |
| 98 | current: 1, | 154 | current: 1, |
| 99 | }, | 155 | }, |
| 100 | } | 156 | }, |
| 101 | }, | ||
| 102 | methods: { | 157 | methods: { |
| 103 | handleAdd () { | 158 | handleAdd () { |
| 104 | this.taskData = null | 159 | this.taskData = null | ... | ... |
-
Please register or sign in to post a comment