zhangxp
2023-06-08 3807d6c050026a9a5ee7b8d3da3cd09e3c31ce15
新增集成系统信息管理,差删除接口未调试
已修改3个文件
已添加2个文件
317 ■■■■■ 文件已修改
Source/UBCS-WEB/src/api/integration/application.js 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/api/integration/sysInfo.js 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/views/integration/applicationForm.vue 42 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/views/integration/systemInfo.vue 224 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/vue.config.js 7 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS-WEB/src/api/integration/application.js
@@ -7,4 +7,12 @@
      method: 'get',
      params: params
    })
  }
  }
  // ç”³é¢†å•状态
export const queryApplyStat = (params) => {
  return request({
    url: '/api/ubcs-applyjtcodeservice/DockingPreApplyCode/queryApplyState',
    method: 'get',
    params: params
  })
}
Source/UBCS-WEB/src/api/integration/sysInfo.js
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,34 @@
import request from '@/router/axios';
// é›†æˆç³»ç»Ÿä¿¡æ¯ç®¡ç†åˆ—表
export const getSysInfoList = (params) => {
    return request({
      url: '/api/ubcs-code/dockingManagement/gridSysIntBase',
      method: 'get',
      params: params
    })
  }
  // é›†æˆç³»ç»Ÿä¿¡æ¯ç®¡ç†æ–°å¢ž
export const sysInfoAdd = (params) => {
  return request({
    url: '/api/ubcs-code/dockingManagement/addSave',
    method: 'post',
    data: params
  })
}
 // é›†æˆç³»ç»Ÿä¿¡æ¯ç®¡ç†æ–°å¢ž
 export const sysInfoEdit = (params) => {
    return request({
      url: '/api/ubcs-code/dockingManagement/editSave',
      method: 'put',
      data: params
    })
  }
   // é›†æˆç³»ç»Ÿä¿¡æ¯ç®¡ç†æ–°å¢ž
export const sysInfoDel = (params) => {
    return request({
      url: '/api/ubcs-code/dockingManagement/deleteDataById',
      method: 'delete',
      params: params
    })
  }
Source/UBCS-WEB/src/views/integration/applicationForm.vue
@@ -2,7 +2,8 @@
    <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">
            @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>
@@ -12,7 +13,7 @@
</template>
<script>
import { getList } from '@/api/integration/application.js'
import { getList, queryApplyStat } from '@/api/integration/application.js'
import { dateFormat } from '@/util/date.js'
export default {
    data() {
@@ -25,6 +26,7 @@
                total: 0
            },
            searchParam: {},
            stateParam: {},
            option: {
                height: "auto",
                index: true,
@@ -33,7 +35,8 @@
                columnBtn: false,
                searchMenuSpan: 8,
                highlightCurrentRow: true,
                menu:false,
                menu: false,
                selection: true,
                column: [
                    {
                        label: '申请单号',
@@ -77,9 +80,6 @@
                        prop: 'lastModifyTime',
                        type: 'datetime',
                        search: true,
                        formatter: () => {
                        }
                    }, {
                        label: '返回标识',
                        width: 100,
@@ -100,8 +100,20 @@
        }
    },
    methods: {
        handleStatus() {
        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
@@ -140,7 +152,19 @@
            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>
Source/UBCS-WEB/src/views/integration/systemInfo.vue
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,224 @@
<template>
    <basic-container>
        <avue-crud ref="crud" :table-loading="loading" :data="data" :option="option" :page.sync="page" :search.sync="search"
            @on-load="getDataList" @row-save="handleSave" @row-del="handleDelete" @row-update="handleEdit"
            @refresh-change="handleRefresh" @size-change="handleSizePage" @current-change="handleCurrentPage"
            @selection-change="selectionChange" @row-click="handleRowClick">
            <template slot="menuLeft">
                <el-button icon="el-icon-search" size="small" type="primary" @click="handleStatus">查 è¯¢
                </el-button>
                <el-button icon="el-icon-delete" size="small" type="danger" @click="handleDeleteByIds">删 é™¤
                </el-button>
            </template>
            <template slot="search" slot-scope="{row,size}">
                <el-select v-model="selectValue" size="small" @change="handleSelect">
                    <el-option v-for="item in selectOption" :key="item.value" :label="item.label" :value="item.value">
                    </el-option>
                </el-select>
                <el-input :placeholder="`请输入${selectValue === 'id' ? '系统编号' : '系统名称'}并按回车查询`" :size="size"
                    style="width:300px;margin-left: 10px;" v-model="search[selectValue]" clearable
                    @keyup.enter.native="handleEnter" @clear="handleClear"></el-input>
            </template>
        </avue-crud>
    </basic-container>
</template>
<script>
import { getSysInfoList, sysInfoAdd, sysInfoEdit, sysInfoDel } from '@/api/integration/sysInfo.js'
export default {
    data() {
        return {
            loading: false,
            page: {
                currentPage: 1,
                pageSize: 10,
                total: 0
            },
            selectOption: [{
                value: 'id',
                label: '系统编号'
            }, {
                value: 'name',
                label: '系统名称'
            }],
            selectValue: 'id',
            search: {},
            delIds: [],
            data: [],
            option: {
                height: "auto",
                border: true,
                align: 'center',
                menuAlign: 'center',
                index: true,
                searchMenuSpan: 8,
                searchBtn: false,
                emptyBtn: false,
                columnBtn: false,
                defaultSort: {
                    prop: 'id,name',
                    order: 'descending'
                },
                selection: true,
                column: [
                    {
                        label: '系统编号',
                        prop: 'id',
                        sortable: true,
                        rules: [{
                            required: true,
                            message: '系统编号不能为空',
                            trigger: 'blur'
                        }]
                    }, {
                        label: '系统名称',
                        prop: 'name',
                        sortable: true,
                        rules: [{
                            required: true,
                            message: '系统名称不能为空',
                            trigger: 'blur'
                        }]
                    },
                    {
                        label: '系统描述',
                        prop: 'description',
                        type: 'textarea'
                    }
                ]
            },
        }
    },
    methods: {
        // èŽ·å–åˆ—è¡¨
        async getDataList() {
            this.loading = true
            console.log(this.search)
            const { pageSize, currentPage } = this.page
            let param = { size: pageSize, current: currentPage }
            const response = await getSysInfoList({ ...param, ...this.search })
            if (response.status === 200) {
                console.log(response)
                this.loading = false
                const data = response.data.data
                this.data = data.records
                this.page.total = data.total
            } else this.loading = false
        },
        // æ–°å¢ž
        async handleSave(row, done, loading) {
            const response = await sysInfoAdd(row)
            if (response.status === 200) {
                loading()
                this.$message({
                    type: 'success',
                    message: '新增数据成功!'
                })
                done()
                this.$refs.crud.refreshTable()
                this.getDataList()
            }
        },
        // ç¼–辑
        async handleEdit(row, index, done, loading) {
            console.log(row)
            const { oid, id, name, description } = row
            const response = await sysInfoEdit({ oid, id, name, description })
            if (response.status === 200) {
                loading()
                this.$message({
                    type: 'success',
                    message: '修改数据成功!'
                })
                done()
                this.getDataList()
            }
        },
        // åˆ é™¤å•条
        handleDelete(row) {
            const { oid } = row
            this.deleteSysInfo({ oids: oid })
        },
        // å¤šæ¡æ•°æ®åˆ é™¤
        handleDeleteByIds() {
            const { oids } = this.delIds
            if (this.$utilFunc.isEmpty(oids)) {
                this.$message({
                    type: "error",
                    message: "请至少选择一条数据!"
                })
            } else {
                this.deleteSysInfo(this.delIds)
            }
        },
        // åˆ é™¤æŽ¥å£
        deleteSysInfo(param) {
            this.$confirm('是否确定删除选择的集成系统?', '提示', {
                confirmButtonText: '确定',
                cancelButtonText: '取消',
                type: 'warning'
            }).then(async () => {
                const response = await sysInfoDel(param)
                if (response.status === 200) {
                    console.log(response)
                    this.$message({
                        type: 'success',
                        message: '删除成功!'
                    });
                    this.getDataList()
                }
            })
        },
        // é€‰æ‹©æ¡†å†…容选择后
        handleSelect(event) {
            this.selectValue = event
            if (this.selectValue === 'id') {
                this.search['name'] = ''
                delete this.search['name']
            } else {
                this.search['id'] = ''
                delete this.search['id']
            }
        },
        // enter搜索
        handleEnter() {
            if (this.search[this.selectValue] === '') return
            else this.getDataList()
        },
        // è¾“入框清空
        handleClear() {
            this.search = {}
            this.getDataList()
        },
        // åˆ·æ–°æŒ‰é’®
        handleRefresh() {
            this.getDataList()
        },
        handleSizePage(event) {
            this.page.pageSize = event
        },
        handleCurrentPage(event) {
            this.page.currentPage = event
        },
        // ç‚¹å‡»é€‰æ‹©
        handleRowClick(row) {
            this.$refs.crud.toggleRowSelection(row, true)
        },
        // å¤šé€‰
        selectionChange(list) {
            console.log(list)
            let newData = list.map(item => {
                const { oid } = item
                return oid
            })
            this.delIds = { oids: newData.toString() }
            console.log(this.delIds)
        },
    }
}
</script>
<style lang="scss" scoped>
::v-deep(.avue-crud .el-select) {
    width: 100px !important;
}
</style>
Source/UBCS-WEB/vue.config.js
@@ -26,16 +26,11 @@
    proxy: {
      '/api': {
        //本地服务接口地址
         target: 'http://localhost:37000',
        //  target: 'http://localhost:37000',
        //target: 'http://192.168.1.51:37000',
        //target: 'http://192.168.3.7:37000',
        // target: 'http://dev.vci-tech.com:37000',
        // target: 'http://192.168.1.51:37000/',
        //   target: 'http://localhost:37000',
        // target: 'http://192.168.1.63:37000',
        //target: 'http://192.168.3.7:37000',
        // target: 'http://dev.vci-tech.com:37000',
        target: 'http://dev.vci-tech.com:37000',
        //target: 'http://192.168.1.51:37000/',
        //远程演示服务地址,可用于直接启动项目
        // target: 'https://saber.bladex.vip/api',