1
lzhe
2024-04-03 e7eb78c74a233f665a24e99d5a3bd847c46feee7
1
已修改6个文件
754 ■■■■■ 文件已修改
src/views/console/soam/oss-system.vue 167 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/console/system/addUser.vue 146 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/console/system/user.vue 133 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/monitor/log/api.vue 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/monitor/log/error.vue 147 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/monitor/log/usual.vue 147 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/console/soam/oss-system.vue
@@ -2,7 +2,7 @@
 * @Author: lzhe lzhe@example.com
 * @Date: 2024-03-26 10:28:33
 * @LastEditors: lzhe lzhe@example.com
 * @LastEditTime: 2024-03-29 18:27:53
 * @LastEditTime: 2024-04-03 14:46:31
 * @FilePath: /smart-web/src/views/master/person/main/index.vue
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
-->
@@ -11,21 +11,21 @@
        <el-tabs tab-position="left" style="height: 800px" class="demo-tabs">
            <el-tab-pane label="文件存储">
                <div class="tabTitle">文件存储</div>
                <el-form :model="ossForm" ref="ossForm" label-width="120px">
                <el-form :model="ossForm" label-width="120px">
                    <el-row>
                        <el-col :span="24">
                            <el-form-item label="endpoint" prop="endpoint">
                            <el-form-item label="endpoint">
                                <el-input v-model="ossForm.endpoint" clearable></el-input>
                            </el-form-item>
                        </el-col>
                        <el-col :span="24">
                            <el-form-item label="acceskey" prop="acceskey">
                                <el-input v-model="ossForm.acceskey" clearable></el-input>
                            <el-form-item label="acceskey">
                                <el-input v-model="ossForm.accessKey" clearable></el-input>
                            </el-form-item>
                        </el-col>
                        <el-col :span="24">
                            <el-form-item label="secretkey" prop="secretkey">
                                <el-input v-model="ossForm.secretkey" clearable></el-input>
                            <el-form-item label="secretkey">
                                <el-input v-model="ossForm.secretKey" clearable></el-input>
                            </el-form-item>
                        </el-col>
                        <el-col :span="24">
@@ -39,8 +39,8 @@
            <el-tab-pane label="应用设置">
                <div class="tabTitle">应用设置</div>
                <ul class="show-list">
                    <li class="active">
                        <div class="edit">编辑</div>
                    <li :class="{active: active.isA}" @click="changeLi('isA')">
                        <div class="edit" @click="editBtn('isA')">编辑</div>
                        <div class="logo">
                            <img src="http://116.63.155.153:83/api/static/images/cps.png">
                        </div>
@@ -49,8 +49,8 @@
                            <div class="domain">http://192.168.1.199</div>
                        </div>
                    </li>
                    <li>
                        <div class="edit">编辑</div>
                    <li :class="{active: active.isB}" @click="changeLi('isB')">
                        <div class="edit" @click="editBtn('isB')">编辑</div>
                        <div class="logo">
                            <img src="http://116.63.155.153:83/api/static/images/vision.png">
                        </div>
@@ -59,8 +59,8 @@
                            <div class="domain">http://192.168.1.199:31005</div>
                        </div>
                    </li>
                    <li>
                        <div class="edit">编辑</div>
                    <li :class="{active: active.isC}" @click="changeLi('isC')">
                        <div class="edit" @click="editBtn('isC')">编辑</div>
                        <div class="logo">
                            <img src="http://116.63.155.153:83/api/static/images/hmi.png">
                        </div>
@@ -73,25 +73,39 @@
                <el-card class="system-content">
                    <template #header>
                      <div class="card-header">
                        <span>应用详情</span>
                        <span v-if="!isEdit">应用详情</span>
                        <span v-if="isEdit">编辑应用</span>
                        <div v-if="isEdit">
                            <el-button @click="cencelBtn" >取 消</el-button>
                            <el-button type="primary" :loading="isSaveing" @click="sysSubmit">保 存</el-button>
                        </div>
                      </div>
                    </template>
                    <el-form :model="searchData" abel-width="120px">
                        <el-form-item label="系统展示">
                            <el-switch v-model="searchData.value1" />
                        <el-form-item label="系统展示" v-if="!isEdit">
                            <el-switch v-model="searchData.isShow" disabled/>
                        </el-form-item>
                        <el-form-item label="应用名称">
                            <div>{{searchData.value2}}</div>
                        <el-form-item label="系统展示" v-if="isEdit">
                            <el-switch v-model="searchData.isShow"/>
                        </el-form-item>
                        <el-form-item label="应用名称" v-if="!isEdit">
                            <div>{{searchData.name}}</div>
                        </el-form-item>
                        <el-form-item label="应用名称" v-if="isEdit">
                            <el-input v-model="searchData.name" placeholder="应用名称" clearable></el-input>
                        </el-form-item>
                        <el-form-item label="应用标识">
                            <div>{{searchData.value2}}</div>
                            <div>{{searchData.code}}</div>
                        </el-form-item>
                        <el-form-item label="网页地址">
                            <div>{{searchData.value2}}</div>
                        <el-form-item label="网页地址" v-if="!isEdit">
                            <div>{{searchData.domain}}</div>
                        </el-form-item>
                        <el-form-item label="网页地址" v-if="isEdit">
                            <el-input v-model="searchData.domain" placeholder="网页地址" clearable></el-input>
                        </el-form-item>
                        <el-form-item label="上传图标">
                            <div>
                                <img src="http://116.63.155.153:83/api/static/images/hmi.png" style="width:66px;height:66px;">
                                <img :src="searchData.logo" style="width:66px;height:66px;">
                            </div>
                        </el-form-item>
                    </el-form>
@@ -106,15 +120,27 @@
        name: "oss-main",
        data(){
            return {
                isSaveing: false,
                isEdit: false,
                active: {
                    isA: true,
                    isB: false,
                    isC: false
                },
                searchData: {
                    value1: false,
                    value2: "HMI"
                    isShow: true,
                    name: "",
                    code: "",
                    domain: "",
                    logo: "",
                    backgroundUrl: ""
                },
                ossForm: {
                    endpoint: "",
                    acceskey: "",
                    secretkey: ""
                }
                    accessKey: "",
                    secretKey: ""
                },
                temData: []
            }
        },
        components: {},
@@ -122,11 +148,86 @@
            
        },
        mounted(){
            this.getOssUpdata();  //文件存储
            this.setting();  //应用设置
        },
        methods: {
            cencelBtn() {
                this.isEdit=false;
                this.isSaveing = false;
            },
            sysSubmit() {
                this.isSaveing = true;
                var obj = {...this.searchData};
                if(obj.isShow == true) {
                    obj.isShow = "1";
                }else {
                    obj.isShow = "0";
                }
                this.$HTTP.put("/api/blade-system/application/update",obj).then(res=> {
                    if(res.code == 200) {
                        this.$message({
                            message: "操作成功",
                            type: "success"
                        })
                        this.cencelBtn();
                    }
                })
            },
            editBtn(name) {
                this.isEdit = true;
            },
            setting() {
                this.$HTTP.get("/api/blade-system/application/list").then(res=> {
                    if(res.code == 200) {
                        res.data.forEach(item=> {
                            if(item.isShow == "1") {
                                item.isShow = true;
                            }else {
                                item.isShow = false;
                            }
                        })
                        this.temData = res.data;
                        this.searchData = this.temData[0];
                    }
                })
            },
            changeLi(name) {
                for(var key in this.active) {
                    if(key === name) {
                        this.active[name] = true;
                    }else {
                        this.active[key] = false;
                    }
                    switch(name) {
                        case "isA":
                            this.searchData = this.temData[0];
                            break;
                        case "isB":
                            this.searchData = this.temData[1];
                            break;
                        case "isC":
                            this.searchData = this.temData[2];
                            break;
                    }
                }
            },
            ossUpdata(){
                this.$HTTP.post("/api/blade-resource/oss/update",this.ossForm).then(res=> {
                    if(res.code == 200) {
                        this.$message({
                            message: "更新成功",
                            type: "success"
                        })
                    }
                })
            },
            getOssUpdata(){
                this.$HTTP.get("/api/blade-resource/oss/detail").then(res=> {
                    if(res.code == 200) {
                        this.ossForm = res.data;
                    }
                })
            }
        }
    }
@@ -208,10 +309,16 @@
}
.system-content .card-header{
    border-bottom: 1px solid #ebeef5;
    padding: 6px 18px!important;
    padding: 12px 18px!important;
    position: relative;
}
.system-content .card-header span{
    font-size:13px;
    font-weight: 400px;
}
.system-content .card-header > div {
    position: absolute;
    top: 6px;
    right: 22px;
}
</style>
src/views/console/system/addUser.vue
@@ -3,46 +3,46 @@
        <el-form :model="form" :rules="rules" :disabled="mode=='show'" ref="dialogForm" label-width="120px" label-position="center">
            <el-row>
                <el-col :span="12">
                    <el-form-item label="账号" prop="userName">
                        <el-input v-model="form.userName" placeholder="岗位编号" clearable></el-input>
                    <el-form-item label="账号" prop="account">
                        <el-input v-model="form.account" placeholder="账号" clearable></el-input>
                    </el-form-item>
                </el-col>
                <el-col :span="12">
                    <el-form-item label="账号昵称" prop="name">
                        <el-input v-model="form.name" placeholder="岗位" clearable></el-input>
                    <el-form-item label="账号昵称" prop="realName">
                        <el-input v-model="form.realName" placeholder="账号昵称" clearable></el-input>
                    </el-form-item>
                </el-col>
                <el-col :span="12">
                    <el-form-item label="密码" prop="name">
                        <el-input v-model="form.name" placeholder="岗位" clearable></el-input>
                    <el-form-item label="密码" prop="password">
                        <el-input v-model="form.password" placeholder="密码" clearable></el-input>
                    </el-form-item>
                </el-col>
                <el-col :span="12">
                    <el-form-item label="手机号" prop="name">
                        <el-input v-model="form.name" placeholder="岗位" clearable></el-input>
                    <el-form-item label="手机号">
                        <el-input v-model="form.phone" placeholder="手机号" clearable></el-input>
                    </el-form-item>
                </el-col>
                <el-col :span="12">
                    <el-form-item label="邮箱" prop="name">
                        <el-input v-model="form.name" placeholder="岗位" clearable></el-input>
                    <el-form-item label="邮箱">
                        <el-input v-model="form.email" placeholder="邮箱" clearable></el-input>
                    </el-form-item>
                </el-col>
                <el-col :span="12">
                    <el-form-item label="关联员工" prop="name">
                        <el-input v-model="form.name" placeholder="岗位" clearable></el-input>
                    <el-form-item label="关联员工">
                        <el-cascader v-model="form.employeeId" :options="employeeIdOptions" :props="{value: 'id',label: 'name'}" placeholder="岗位" style="width: 100%" clearable @change="employeeIdChange"/>
                    </el-form-item>
                </el-col>
                <el-col :span="12">
                    <el-form-item label="数据权限" prop="name">
                        <el-select v-model="form.name" style="width: 100%">
                            <el-option v-for="item in groups" :key="item.id" :label="item.label" :value="item.id"/>
                    <el-form-item label="数据权限" prop="deptId">
                        <el-select v-model="form.deptId" multiple style="width: 100%" @change="deptIdChange">
                            <el-option v-for="item in deptIdList" :key="item.id" :label="item.title" :value="item.id"/>
                        </el-select>
                    </el-form-item>
                </el-col>
                <el-col :span="12">
                    <el-form-item label="所属角色" prop="name">
                        <el-select v-model="form.name" style="width: 100%">
                            <el-option v-for="item in groups" :key="item.id" :label="item.label" :value="item.id"/>
                    <el-form-item label="所属角色" prop="roleId">
                        <el-select v-model="form.roleId" multiple collapse-tags collapse-tags-tooltip :max-collapse-tags="3" style="width: 100%" @change="roleIdChange">
                            <el-option v-for="item in roleList" :key="item.id" :label="item.roleName" :value="item.id"/>
                        </el-select>
                    </el-form-item>
                </el-col>
@@ -60,7 +60,9 @@
        emits: ['success', 'closed'],
        data() {
            return {
                value1: true,
                deptIdList: [],
                employeeIdOptions: [],
                roleList: [],
                mode: "add",
                titleMap: {
                    add: '新建账号',
@@ -71,49 +73,22 @@
                isSaveing: false,
                //表单数据
                form: {
                    id:"",
                    userName: "",
                    avatar: "",
                    name: "",
                    dept: "",
                    group: []
                    account: "",
                    realName: "",
                    password: "",
                    phone: "",
                    email: "",
                    employeeId: "",
                    deptId: "",
                    roleId: ""
                },
                //验证规则
                rules: {
                    avatar:[
                        {required: true, message: '请上传头像'}
                    ],
                    userName: [
                        {required: true, message: '请输入登录账号'}
                    ],
                    name: [
                        {required: true, message: '请输入真实姓名'}
                    ],
                    password: [
                        {required: true, message: '请输入登录密码'},
                        {validator: (rule, value, callback) => {
                            if (this.form.password2 !== '') {
                                this.$refs.dialogForm.validateField('password2');
                            }
                            callback();
                        }}
                    ],
                    password2: [
                        {required: true, message: '请再次输入密码'},
                        {validator: (rule, value, callback) => {
                            if (value !== this.form.password) {
                                callback(new Error('两次输入密码不一致!'));
                            }else{
                                callback();
                            }
                        }}
                    ],
                    dept: [
                        {required: true, message: '请选择所属部门'}
                    ],
                    group: [
                        {required: true, message: '请选择所属角色', trigger: 'change'}
                    ]
                    account:[{required: true, message: '请输入账号'}],
                    realName:[{required: true, message: '请输入昵称'}],
                    password:[{required: true, message: '请输入密码'}],
                    deptId:[{required: true, message: '请选择数据权限', trigger: 'change'}],
                    roleId:[{required: true, message: '请选择所属角色', trigger: 'change'}],
                },
                //所需数据选项
                groups: [],
@@ -130,10 +105,20 @@
            }
        },
        mounted() {
            // this.getGroup()
            // this.getDept()
            this.getRole();
            this.getDeptIdList();
            this.getEmployee();
        },
        methods: {
            employeeIdChange(val) {  //关联员工
                val = val[val.length - 1];
            },
            roleIdChange(val) {  //数据权限
                this.form.roleIdStr = val.join(",");
            },
            deptIdChange(val) {  //数据权限
                this.form.deptIdStr = val.join(",");
            },
            //显示
            open(mode='add'){
                this.mode = mode;
@@ -151,23 +136,52 @@
            },
            //表单提交方法
            submit(){
                var obj = Object.assign({},this.form);
                obj.employeeId = obj.employeeIdStr;
                obj.deptId = obj.deptIdStr;
                obj.roleId = obj.roleIdStr;
                delete obj.employeeIdStr;
                delete obj.deptIdStr;
                delete obj.roleIdStr;
                this.$refs.dialogForm.validate(async (valid) => {
                    if (valid) {
                        this.isSaveing = true;
                        var res = await this.$API.demo.post.post(this.form);
                        //this.isSaveing = true;
                        this.$HTTP.post("/api/blade-user/submit",obj).then(res=> {
                        this.isSaveing = false;
                        if(res.code == 200){
                            this.$emit('success', this.form, this.mode)
                                this.$emit('success', this.form, this.mode);
                            this.visible = false;
                            this.$message.success("操作成功")
                                this.$message.success("操作成功");
                        }else{
                            this.$alert(res.message, "提示", {type: 'error'})
                                this.$alert(res.message, "提示", {type: 'error'});
                        }
                        })
                    }else{
                        return false;
                    }
                })
            },
            getRole() {
                this.$HTTP.get("/api/blade-system/role/list?roleAlias=&roleName=").then(res=> {
                    if(res.code == 200) {
                        this.roleList = res.data;
                    }
                })
            },
            getDeptIdList() {
                this.$HTTP.get("/api/blade-system/data-scope-manager/tree?tenantId=000000").then(res=> {
                    if(res.code == 200) {
                        this.deptIdList = res.data;
                    }
                })
            },
            getEmployee() {
                this.$HTTP.get("/api/blade-cps/employee/unbind-employee?employeeId=").then(res=> {
                    if(res.code == 200) {
                        this.employeeIdOptions = res.data;
                    }
                })
            },
            //表单注入数据
            setData(data){
                this.form.id = data.id
src/views/console/system/user.vue
@@ -2,7 +2,7 @@
 * @Author: lzhe lzhe@example.com
 * @Date: 2024-03-26 10:28:33
 * @LastEditors: lzhe lzhe@example.com
 * @LastEditTime: 2024-03-29 16:20:06
 * @LastEditTime: 2024-04-03 18:22:26
 * @FilePath: /smart-web/src/views/master/person/main/index.vue
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
-->
@@ -11,22 +11,27 @@
        <div class="user-top">
            <div class="right-bottom"> 
                <el-button type="primary" @click="addPerson">新建</el-button>
                <el-button type="primary" @click="addPerson">密码重置</el-button>
                <el-button type="danger" plain @click="delPerson">删除</el-button>
            </div>
            <div>
                <el-input v-model="input" placeholder="请输入内容" style="width: 180px;margin-right: 8px;"></el-input>
                <el-input v-model="input" placeholder="请输入内容" style="width: 180px;margin-right: 8px;"></el-input>
                <el-button type="primary" @click="searchUser">搜索</el-button>
                <el-input v-model="searchData.account" placeholder="账号" style="width: 180px;margin-right: 8px;" clearable></el-input>
                <el-input v-model="searchData.realName" placeholder="账号昵称" style="width: 180px;margin-right: 8px;" clearable></el-input>
                <el-button type="primary" @click="searchclick">搜索</el-button>
            </div>
        </div>
        <div class="user-table">
            <el-table ref="multipleTableRef" :data="tableData" border style="width: 100%" class="multipleTableRef" @selection-change="handleSelectionChange">
                <el-table-column type="selection" width="55" />
                <el-table-column prop="date" label="账号"></el-table-column>
                <el-table-column prop="name" label="账号昵称"></el-table-column>
                <el-table-column prop="name" label="所属角色"></el-table-column>
                <el-table-column prop="name" label="数据权限"></el-table-column>
                <el-table-column prop="name" label="账号状态"></el-table-column>
                <el-table-column prop="account" label="账号"></el-table-column>
                <el-table-column prop="realName" label="账号昵称"></el-table-column>
                <el-table-column prop="roleName" label="所属角色"></el-table-column>
                <el-table-column prop="deptName" label="数据权限"></el-table-column>
                <el-table-column prop="name" label="账号状态">
                    <template #default="scope">
                        <el-switch v-model="scope.row.status" @click="changeStatus(scope.row)" />
                    </template>
                </el-table-column>
                <el-table-column fixed="right" label="操作">
                    <template #default="scope">
                        <el-button type="text" size="small" @click="table_edit(scope.row, scope.$index)">编辑</el-button>
@@ -35,13 +40,14 @@
                </el-table-column>
            </el-table>
            <el-pagination
                style="margin-top: 12px;"
                @size-change="handleSizeChange"
                @current-change="handleCurrentChange"
                :current-page="currentPage4"
                :page-sizes="[100, 200, 300, 400]"
                :page-size="100"
                :page-sizes="[15, 50, 100]"
                :page-size="15"
                layout="total, sizes, prev, pager, next, jumper"
                :total="400">
                :total="total">
            </el-pagination>
        </div>
    </div>
@@ -73,7 +79,7 @@
        </div>
        </template>
    </el-dialog>
    <save-dialog v-if="dialog.save" ref="saveDialog" @success="handleSuccess" @closed="dialog.save=false"></save-dialog>
    <save-dialog v-if="dialog.save" ref="saveDialog" @success="addUserSuccess" @closed="dialog.save=false"></save-dialog>
</template>
<script>
    import saveDialog from './addUser'
@@ -81,6 +87,13 @@
        name: "bakalaka",
        data(){
            return {
                searchData: {
                    account: "",
                    realName: "",
                    current: "1",
                    size: "15"
                },
                total: 0,
                dialogVisible: false,
                isSaveing: false,
                groups: [],
@@ -103,51 +116,78 @@
                    label: '黄金糕'
                }],
                input3: '',
                tableData: [{
                    date: '2016-05-02',
                    name: '王小虎',
                    province: '上海',
                    city: '普陀区',
                    address: '上海市普陀区金沙江路 1518 弄',
                    zip: 200333
                    }, {
                    date: '2016-05-04',
                    name: '王小虎',
                    province: '上海',
                    city: '普陀区',
                    address: '上海市普陀区金沙江路 1517 弄',
                    zip: 200333
                    }, {
                    date: '2016-05-01',
                    name: '王小虎',
                    province: '上海',
                    city: '普陀区',
                    address: '上海市普陀区金沙江路 1519 弄',
                    zip: 200333
                    }, {
                    date: '2016-05-03',
                    name: '王小虎',
                    province: '上海',
                    city: '普陀区',
                    address: '上海市普陀区金沙江路 1516 弄',
                    zip: 200333
                }]
                tableData: []
            }
        },
        created(){
            
        },
        mounted(){
            this.searchUser();
        },
        components: {
            saveDialog
        },
        methods: {
            addUserSuccess() {
                this.searchclick();
            },
            changeStatus(row) {
                row.status = !row.status;
                var obj = {
                    enable: true,
                    id: row.id
                }
                var str = "";
                if(row.status) {
                    obj.enable = false;
                    str = "停用";
                }else {
                    obj.status = true;
                    str = "启用";
                }
                this.$confirm('确定要'+str+row.account+'?','提示', {
                    type: 'warning',
                }).then(() => {
                    //const loading = this.$loading()
                    //loading.close()
                    this.$HTTP.post("/api/blade-user/changeStatus?"+this.$TOOL.qsStringify(obj)).then(res=> {
                        this.isSaveing = false;
                        if(res.code == 200) {
                            this.searchclick();
                            this.$message.success("操作成功");
                        }else {
                            this.$alert(res.message, "提示", {type: 'error'});
                        }
                    })
                }).catch(() => {
                    //取消
                })
            },
            table_unlock() {
                this.dialogVisible = true;
            },
            searchUser() {},
            searchclick() {
                this.searchData.current = "1";
                this.searchData.size = "15";
                this.searchUser();
            },
            searchUser() {
                this.$HTTP.get("/api/blade-user/page",this.searchData).then(res=> {
                    if(res.code == 200) {
                        res.data.records.forEach(item=> {
                            if(item.status == "1") {
                                item.status = true;
                            }else {
                                item.status = false;
                            }
                        })
                        this.tableData = res.data.records;
                        this.total = res.data.total;
                        console.log(this.tableData)
                    }
                })
            },
            departmentSubmit() {
                this.departmentVisible=false;  //部门调整
            },
@@ -185,9 +225,14 @@
            },
            handleSizeChange(val) {
                console.log(`每页 ${val} 条`);
                this.searchData.current = "1";
                this.searchData.size = val;
                this.searchUser();
            },
            handleCurrentChange(val) {
                console.log(`当前页: ${val}`);
                this.searchData.current = val;
                this.searchUser();
            }
        }
    }
src/views/monitor/log/api.vue
@@ -2,7 +2,7 @@
 * @Author: lzhe lzhe@example.com
 * @Date: 2024-03-26 10:28:33
 * @LastEditors: lzhe lzhe@example.com
 * @LastEditTime: 2024-03-29 17:38:39
 * @LastEditTime: 2024-04-03 11:21:03
 * @FilePath: /smart-web/src/views/master/person/main/index.vue
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
-->
@@ -27,8 +27,6 @@
                    <el-table-column prop="serverHost" label="服务host"></el-table-column>
                    <el-table-column prop="serverIp" label="服务ip"></el-table-column>
                    <el-table-column prop="env" label="软件环境"></el-table-column>
                    <el-table-column prop="" label="日志级别"></el-table-column>
                    <el-table-column prop="" label="日志id"></el-table-column>
                    <el-table-column prop="requestUri" label="请求接口"></el-table-column>
                    <el-table-column prop="createTime" label="日志时间"></el-table-column>
                    <el-table-column fixed="right" label="操作">
@@ -70,16 +68,6 @@
                    <el-col :span="12">
                        <el-form-item label="软件环境" center>
                            <span>{{viewData.env}}</span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="12">
                        <el-form-item label="日志级别" center>
                            <span></span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="12">
                        <el-form-item label="日志id" center>
                            <span></span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="12">
src/views/monitor/log/error.vue
@@ -2,7 +2,7 @@
 * @Author: lzhe lzhe@example.com
 * @Date: 2024-03-26 10:28:33
 * @LastEditors: lzhe lzhe@example.com
 * @LastEditTime: 2024-03-29 17:38:39
 * @LastEditTime: 2024-04-03 11:24:20
 * @FilePath: /smart-web/src/views/master/person/main/index.vue
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
-->
@@ -10,26 +10,25 @@
    <div class="api-main">
        <el-form :inline="true" :model="searchData" abel-width="120px">
            <el-form-item label="服务id">
                <el-input v-model="searchData.test" placeholder="服务id" clearable />
                <el-input v-model="searchData.serviceId" placeholder="服务id" clearable />
            </el-form-item>
            <el-form-item label="服务host">
                <el-input v-model="searchData.test" placeholder="服务host" clearable />
                <el-input v-model="searchData.serverHost" placeholder="服务host" clearable />
            </el-form-item>
            <el-form-item>
                <el-button type="primary" @click="searchBtn">搜索</el-button>
                <el-button @click="searchBtn">清空</el-button>
                <el-button type="primary" @click="searchclick">搜索</el-button>
                <el-button @click="searchClearBtn">清空</el-button>
            </el-form-item>
        </el-form>
        <div>
            <div class="api-table">
                <el-table ref="multipleTableRef" :data="tableData" border style="width: 100%" class="multipleTableRef">
                    <el-table-column prop="date" label="服务id"></el-table-column>
                    <el-table-column prop="name" label="服务host"></el-table-column>
                    <el-table-column prop="name" label="软件环境"></el-table-column>
                    <el-table-column prop="name" label="日志级别"></el-table-column>
                    <el-table-column prop="name" label="日志id"></el-table-column>
                    <el-table-column prop="name" label="请求接口"></el-table-column>
                    <el-table-column prop="name" label="日志时间"></el-table-column>
                    <el-table-column prop="serviceId" label="服务id"></el-table-column>
                    <el-table-column prop="serverHost" label="服务host"></el-table-column>
                    <el-table-column prop="serverIp" label="服务ip"></el-table-column>
                    <el-table-column prop="env" label="软件环境"></el-table-column>
                    <el-table-column prop="requestUri" label="请求接口"></el-table-column>
                    <el-table-column prop="createTime" label="日志时间"></el-table-column>
                    <el-table-column fixed="right" label="操作">
                        <template #default="scope">
                            <el-button text type="primary" size="small" @click="table_show(scope.row, scope.$index)">查看</el-button>
@@ -37,13 +36,14 @@
                    </el-table-column>
                </el-table>
                <el-pagination
                    style="margin-top: 12px;"
                    @size-change="handleSizeChange"
                    @current-change="handleCurrentChange"
                    :current-page="currentPage4"
                    :page-sizes="[100, 200, 300, 400]"
                    :page-size="100"
                    :page-sizes="[15, 50, 100]"
                    :page-size="15"
                    layout="total, sizes, prev, pager, next, jumper"
                    :total="400">
                    :total="total">
                </el-pagination>
            </div>
        </div>
@@ -52,57 +52,47 @@
                <el-row>
                    <el-col :span="12">
                        <el-form-item label="服务id" center>
                            <span>aaa</span>
                            <span>{{viewData.serviceId}}</span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="12">
                        <el-form-item label="服务host" center>
                            <span>aaa</span>
                            <span>{{viewData.serverHost}}</span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="12">
                        <el-form-item label="服务ip" center>
                            <span>aaa</span>
                            <span>{{viewData.serverIp}}</span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="12">
                        <el-form-item label="软件环境" center>
                            <span>aaa</span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="12">
                        <el-form-item label="日志级别" center>
                            <span>aaa</span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="12">
                        <el-form-item label="日志id" center>
                            <span>aaa</span>
                            <span>{{viewData.env}}</span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="12">
                        <el-form-item label="请求接口" center>
                            <span>aaa</span>
                            <span>{{viewData.requestUri}}</span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="12">
                        <el-form-item label="日志时间" center>
                            <span>aaa</span>
                            <span>{{viewData.createTime}}</span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="24">
                        <el-form-item label="用户代理" center>
                            <span>aaa</span>
                            <span>{{viewData.userAgent}}</span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="24">
                        <el-form-item label="日志管理" center>
                            <span>aaa</span>
                        <el-form-item label="日志数据" center>
                            <span></span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="24">
                        <el-form-item label="请求数据" center>
                            <span>aaa</span>
                            <span>{{viewData.params}}</span>
                        </el-form-item>
                    </el-col>
                </el-row>
@@ -115,10 +105,22 @@
        name: "allocation",
        data(){
            return {
                viewData: {},
                viewData: {
                    serviceId: "",
                    serverHost: "",
                    serverIp: "",
                    env: "",
                    requestUri: "",
                    createTime: "",
                    userAgent: "",
                    params: ""
                },
                drawer: false,
                searchData: {
                    test: ""
                    serviceId: "",
                    serverHost: "",
                    current: "1",
                    size: "15"
                },
                dialog: {
                    save: false,
@@ -127,57 +129,66 @@
                leftActive: true,
                input: '',
                input3: '',
                tableData: [{
                    date: '2016-05-02',
                    name: '王小虎',
                    province: '上海',
                    city: '普陀区',
                    address: '上海市普陀区金沙江路 1518 弄',
                    zip: 200333
                    }, {
                    date: '2016-05-04',
                    name: '王小虎',
                    province: '上海',
                    city: '普陀区',
                    address: '上海市普陀区金沙江路 1517 弄',
                    zip: 200333
                    }, {
                    date: '2016-05-01',
                    name: '王小虎',
                    province: '上海',
                    city: '普陀区',
                    address: '上海市普陀区金沙江路 1519 弄',
                    zip: 200333
                    }, {
                    date: '2016-05-03',
                    name: '王小虎',
                    province: '上海',
                    city: '普陀区',
                    address: '上海市普陀区金沙江路 1516 弄',
                    zip: 200333
                }]
                tableData: []
            }
        },
        created(){
            
        },
        mounted(){
            this.searchBtn();
        },
        methods: {
            handleClose() {
                this.drawer = false;
            },
            searchBtn() {},
            searchClearBtn() {
                this.searchData = {
                    code: "",
                    dictValue: "",
                    current: "1",
                    size: "15"
                }
                this.searchBtn();
            },
            searchclick() {
                this.searchData.current = "1";
                this.searchData.size = "15";
                this.searchBtn();
            },
            searchBtn() {
                this.$HTTP.get("/api/blade-log/error/list",this.searchData).then(res=> {
                    if(res.code == 200) {
                        this.tableData = res.data.records;
                        this.total = res.data.total;
                    }
                })
            },
            //查看
            table_show(row){
                this.$HTTP.get("/api/blade-log/api/detail?id="+row.id).then(res=> {
                    if(res.code == 200) {
                        this.viewData = res.data;
                this.drawer = true;
                    }
                })
            },
            handleSizeChange(val) {
                console.log(`每页 ${val} 条`);
            },
            handleCurrentChange(val) {
                console.log(`当前页: ${val}`);
            },
            handleSizeChange(val) {
                console.log(`每页 ${val} 条`);
                this.searchData.current = "1";
                this.searchData.size = val;
                this.searchBtn();
            },
            handleCurrentChange(val) {
                console.log(`当前页: ${val}`);
                this.searchData.current = val;
                this.searchBtn();
            }
        }
    }
src/views/monitor/log/usual.vue
@@ -2,7 +2,7 @@
 * @Author: lzhe lzhe@example.com
 * @Date: 2024-03-26 10:28:33
 * @LastEditors: lzhe lzhe@example.com
 * @LastEditTime: 2024-03-29 17:38:39
 * @LastEditTime: 2024-04-03 11:22:57
 * @FilePath: /smart-web/src/views/master/person/main/index.vue
 * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
-->
@@ -10,26 +10,25 @@
    <div class="api-main">
        <el-form :inline="true" :model="searchData" abel-width="120px">
            <el-form-item label="服务id">
                <el-input v-model="searchData.test" placeholder="服务id" clearable />
                <el-input v-model="searchData.serviceId" placeholder="服务id" clearable />
            </el-form-item>
            <el-form-item label="服务host">
                <el-input v-model="searchData.test" placeholder="服务host" clearable />
                <el-input v-model="searchData.serverHost" placeholder="服务host" clearable />
            </el-form-item>
            <el-form-item>
                <el-button type="primary" @click="searchBtn">搜索</el-button>
                <el-button @click="searchBtn">清空</el-button>
                <el-button type="primary" @click="searchclick">搜索</el-button>
                <el-button @click="searchClearBtn">清空</el-button>
            </el-form-item>
        </el-form>
        <div>
            <div class="api-table">
                <el-table ref="multipleTableRef" :data="tableData" border style="width: 100%" class="multipleTableRef">
                    <el-table-column prop="date" label="服务id"></el-table-column>
                    <el-table-column prop="name" label="服务host"></el-table-column>
                    <el-table-column prop="name" label="软件环境"></el-table-column>
                    <el-table-column prop="name" label="日志级别"></el-table-column>
                    <el-table-column prop="name" label="日志id"></el-table-column>
                    <el-table-column prop="name" label="请求接口"></el-table-column>
                    <el-table-column prop="name" label="日志时间"></el-table-column>
                    <el-table-column prop="serviceId" label="服务id"></el-table-column>
                    <el-table-column prop="serverHost" label="服务host"></el-table-column>
                    <el-table-column prop="serverIp" label="服务ip"></el-table-column>
                    <el-table-column prop="env" label="软件环境"></el-table-column>
                    <el-table-column prop="requestUri" label="请求接口"></el-table-column>
                    <el-table-column prop="createTime" label="日志时间"></el-table-column>
                    <el-table-column fixed="right" label="操作">
                        <template #default="scope">
                            <el-button text type="primary" size="small" @click="table_show(scope.row, scope.$index)">查看</el-button>
@@ -37,13 +36,14 @@
                    </el-table-column>
                </el-table>
                <el-pagination
                    style="margin-top: 12px;"
                    @size-change="handleSizeChange"
                    @current-change="handleCurrentChange"
                    :current-page="currentPage4"
                    :page-sizes="[100, 200, 300, 400]"
                    :page-size="100"
                    :page-sizes="[15, 50, 100]"
                    :page-size="15"
                    layout="total, sizes, prev, pager, next, jumper"
                    :total="400">
                    :total="total">
                </el-pagination>
            </div>
        </div>
@@ -52,57 +52,47 @@
                <el-row>
                    <el-col :span="12">
                        <el-form-item label="服务id" center>
                            <span>aaa</span>
                            <span>{{viewData.serviceId}}</span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="12">
                        <el-form-item label="服务host" center>
                            <span>aaa</span>
                            <span>{{viewData.serverHost}}</span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="12">
                        <el-form-item label="服务ip" center>
                            <span>aaa</span>
                            <span>{{viewData.serverIp}}</span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="12">
                        <el-form-item label="软件环境" center>
                            <span>aaa</span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="12">
                        <el-form-item label="日志级别" center>
                            <span>aaa</span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="12">
                        <el-form-item label="日志id" center>
                            <span>aaa</span>
                            <span>{{viewData.env}}</span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="12">
                        <el-form-item label="请求接口" center>
                            <span>aaa</span>
                            <span>{{viewData.requestUri}}</span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="12">
                        <el-form-item label="日志时间" center>
                            <span>aaa</span>
                            <span>{{viewData.createTime}}</span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="24">
                        <el-form-item label="用户代理" center>
                            <span>aaa</span>
                            <span>{{viewData.userAgent}}</span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="24">
                        <el-form-item label="日志管理" center>
                            <span>aaa</span>
                        <el-form-item label="日志数据" center>
                            <span></span>
                        </el-form-item>
                    </el-col>
                    <el-col :span="24">
                        <el-form-item label="请求数据" center>
                            <span>aaa</span>
                            <span>{{viewData.params}}</span>
                        </el-form-item>
                    </el-col>
                </el-row>
@@ -115,10 +105,22 @@
        name: "allocation",
        data(){
            return {
                viewData: {},
                viewData: {
                    serviceId: "",
                    serverHost: "",
                    serverIp: "",
                    env: "",
                    requestUri: "",
                    createTime: "",
                    userAgent: "",
                    params: ""
                },
                drawer: false,
                searchData: {
                    test: ""
                    serviceId: "",
                    serverHost: "",
                    current: "1",
                    size: "15"
                },
                dialog: {
                    save: false,
@@ -127,57 +129,66 @@
                leftActive: true,
                input: '',
                input3: '',
                tableData: [{
                    date: '2016-05-02',
                    name: '王小虎',
                    province: '上海',
                    city: '普陀区',
                    address: '上海市普陀区金沙江路 1518 弄',
                    zip: 200333
                    }, {
                    date: '2016-05-04',
                    name: '王小虎',
                    province: '上海',
                    city: '普陀区',
                    address: '上海市普陀区金沙江路 1517 弄',
                    zip: 200333
                    }, {
                    date: '2016-05-01',
                    name: '王小虎',
                    province: '上海',
                    city: '普陀区',
                    address: '上海市普陀区金沙江路 1519 弄',
                    zip: 200333
                    }, {
                    date: '2016-05-03',
                    name: '王小虎',
                    province: '上海',
                    city: '普陀区',
                    address: '上海市普陀区金沙江路 1516 弄',
                    zip: 200333
                }]
                tableData: []
            }
        },
        created(){
            
        },
        mounted(){
            this.searchBtn();
        },
        methods: {
            handleClose() {
                this.drawer = false;
            },
            searchBtn() {},
            searchClearBtn() {
                this.searchData = {
                    code: "",
                    dictValue: "",
                    current: "1",
                    size: "15"
                }
                this.searchBtn();
            },
            searchclick() {
                this.searchData.current = "1";
                this.searchData.size = "15";
                this.searchBtn();
            },
            searchBtn() {
                this.$HTTP.get("/api/blade-log/usual/list",this.searchData).then(res=> {
                    if(res.code == 200) {
                        this.tableData = res.data.records;
                        this.total = res.data.total;
                    }
                })
            },
            //查看
            table_show(row){
                this.$HTTP.get("/api/blade-log/api/detail?id="+row.id).then(res=> {
                    if(res.code == 200) {
                        this.viewData = res.data;
                this.drawer = true;
                    }
                })
            },
            handleSizeChange(val) {
                console.log(`每页 ${val} 条`);
            },
            handleCurrentChange(val) {
                console.log(`当前页: ${val}`);
            },
            handleSizeChange(val) {
                console.log(`每页 ${val} 条`);
                this.searchData.current = "1";
                this.searchData.size = val;
                this.searchBtn();
            },
            handleCurrentChange(val) {
                console.log(`当前页: ${val}`);
                this.searchData.current = val;
                this.searchBtn();
            }
        }
    }