From bf3ea7cff7e99de79ad838a9d1451b6a9af3c40d Mon Sep 17 00:00:00 2001
From: wangting <675591594@qq.com>
Date: 星期一, 31 七月 2023 18:10:07 +0800
Subject: [PATCH] 增加批量设置switch,点击行选中checkbox
---
Source/UBCS-WEB/src/views/integration/applicationForm.vue | 175 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 175 insertions(+), 0 deletions(-)
diff --git a/Source/UBCS-WEB/src/views/integration/applicationForm.vue b/Source/UBCS-WEB/src/views/integration/applicationForm.vue
index e69de29..6cd1ac7 100644
--- a/Source/UBCS-WEB/src/views/integration/applicationForm.vue
+++ b/Source/UBCS-WEB/src/views/integration/applicationForm.vue
@@ -0,0 +1,175 @@
+<template>
+ <basic-container>
+ <avue-crud :table-loading="loading" :data="data" :option="option" :search.sync="searchParam" :page.sync="page"
+ ref="crud" @refresh-change="getDataList" @search-change="handleSearch" @search-reset="handleReset"
+ @size-change="handleSizePage" @current-change="handleCurrentPage" @on-load="getDataList"
+ @selection-change="selectionChange" @row-click="handleRowClick">
+ <template slot="menuLeft">
+ <el-button icon="el-icon-document" size="small" type="primary" @click="handleStatus">闆嗗洟鐢宠鐘舵��
+ </el-button>
+ </template>
+ </avue-crud>
+ </basic-container>
+</template>
+
+<script>
+import { getList, queryApplyStat } from '@/api/integration/application.js'
+import { dateFormat } from '@/util/date.js'
+export default {
+ data() {
+ return {
+ loading: false,
+ data: [],
+ page: {
+ pageSize: 10,
+ currentPage: 1,
+ total: 0
+ },
+ searchParam: {},
+ stateParam: {},
+ option: {
+ height: "auto",
+ index: true,
+ border: true,
+ addBtn: false,
+ columnBtn: false,
+ searchMenuSpan: 8,
+ highlightCurrentRow: true,
+ menu: false,
+ selection: true,
+ column: [
+ {
+ label: '鐢宠鍗曞彿',
+ prop: 'id',
+ width: 300,
+ fixed: true,
+ search: true,
+ }, {
+ label: '闆嗗洟鐮�',
+ width: 200,
+ prop: 'groupCode',
+ search: true,
+ }, {
+ label: '鎿嶄綔绫诲瀷',
+ width: 200,
+ prop: 'operationType',
+ type: 'select',
+ search: true,
+ dicData: [{
+ label: '鐢宠',
+ value: 1
+ }, {
+ label: '鏇存敼',
+ value: 2
+ }]
+ }, {
+ label: '鐢宠鍗曟暟鎹俊鎭�',
+ width: 300,
+ prop: 'description'
+ },
+ {
+ label: '鍒涘缓鏃堕棿',
+ width: 200,
+ prop: 'createTime',
+ type: 'datetime',
+ search: true,
+ },
+ {
+ label: '鏇存敼鏃堕棿',
+ width: 200,
+ prop: 'lastModifyTime',
+ type: 'datetime',
+ search: true,
+ }, {
+ label: '杩斿洖鏍囪瘑',
+ width: 100,
+ prop: 'code'
+ },
+ {
+ label: '杩斿洖淇℃伅',
+ width: 300,
+ prop: 'content'
+ },
+ {
+ label: '娑堟伅淇℃伅',
+ width: 300,
+ prop: 'msg'
+ }
+ ]
+ }
+ }
+ },
+ methods: {
+ async handleStatus() {
+ const { oids } = this.stateParam
+ if (this.$utilFunc.isEmpty(oids)) {
+ this.$message({
+ type: "error",
+ message: "璇疯嚦灏戦�夋嫨涓�鏉℃暟鎹�!"
+ })
+ } else {
+ console.log(this.stateParam)
+ const response = await queryApplyStat(this.stateParam)
+ if (response.status === 200) {
+ console.log(response)
+ }
+ }
+ },
+ async getDataList() {
+ this.loading = true
+ const { pageSize, currentPage, total } = this.page
+ let param = { size: pageSize, current: currentPage }
+ console.log(this.searchParam)
+ this.searchParam = Object.keys(this.searchParam)
+ .filter((key) => this.searchParam[key] !== null && this.searchParam[key] !== undefined && this.searchParam[key] !== "")
+ .reduce((acc, key) => ({ ...acc, [key]: this.searchParam[key] }), {});
+ console.log(this.searchParam)
+ const response = await getList({ ...param, ...this.searchParam })
+ if (response.status === 200) {
+ this.loading = false
+ console.log(response)
+ const data = response.data.data
+ this.data = data.records
+ this.page.total = data.total
+ } else this.loading = false
+ },
+ handleSizePage(event) {
+ this.page.pageSize = event
+ },
+ handleCurrentPage(event) {
+ this.page.currentPage = event
+ },
+ handleReset() {
+ this.searchParam = {}
+ this.getDataList()
+ },
+ handleSearch(form, done) {
+ console.log(form)
+ const { id, groupCode, operationType } = form
+ let dataTime = { id, groupCode, operationType }
+ if (form.hasOwnProperty('createTime')) {
+ dataTime = { createTime: dateFormat(form.createTime), ...dataTime }
+ }
+ if (form.hasOwnProperty('lastModifyTime')) {
+ dataTime = { lastModifyTime: dateFormat(form.lastModifyTime), ...dataTime }
+ }
+ this.searchParam = dataTime
+ this.page.currentPage = 1
+ this.getDataList()
+ done()
+ },
+ selectionChange(list) {
+ console.log(list)
+ let newData = list.map(item => {
+ const { dataOid } = item
+ return dataOid
+ })
+ this.stateParam = { oids: newData.toString() }
+ console.log(newData)
+ },
+ handleRowClick(row) {
+ this.$refs.crud.toggleRowSelection(row, true)
+ },
+ }
+}
+</script>
\ No newline at end of file
--
Gitblit v1.9.3