|
@@ -1,174 +1,106 @@
|
|
|
<template>
|
|
|
- <div class="app-container">
|
|
|
- <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
|
|
- <el-form-item label="会话ID" prop="sessionId">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.sessionId"
|
|
|
- placeholder="请输入会话ID"
|
|
|
- clearable
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- />
|
|
|
+ <div class="page-container">
|
|
|
+ <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px"
|
|
|
+ class="search-form_container">
|
|
|
+ <el-form-item label="问题内容" prop="unknown">
|
|
|
+ <el-input v-model="queryParams.sessionId" placeholder="请输入会话ID" clearable @keyup.enter.native="handleQuery" />
|
|
|
</el-form-item>
|
|
|
- <el-form-item label="隶属哪个模块" prop="module">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.module"
|
|
|
- placeholder="请输入隶属哪个模块"
|
|
|
- clearable
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="用户ID" prop="userId">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.userId"
|
|
|
- placeholder="请输入用户ID"
|
|
|
- clearable
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="告警记录ID" prop="warningId">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.warningId"
|
|
|
- placeholder="请输入告警记录ID"
|
|
|
- clearable
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="问答次数" prop="counts">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.counts"
|
|
|
- placeholder="请输入问答次数"
|
|
|
- clearable
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="是否使用搜索增强" prop="isStrong">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.isStrong"
|
|
|
- placeholder="请输入是否使用搜索增强"
|
|
|
- clearable
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="回复是否满意" prop="isSatisfied">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.isSatisfied"
|
|
|
- placeholder="请输入回复是否满意"
|
|
|
- clearable
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="是否中断问答" prop="isShutdown">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.isShutdown"
|
|
|
- placeholder="请输入是否中断问答"
|
|
|
- clearable
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
- <el-form-item label="乐观锁" prop="revision">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.revision"
|
|
|
- placeholder="请输入乐观锁"
|
|
|
- clearable
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- />
|
|
|
+ <el-form-item label="类型" prop="unknown">
|
|
|
+ <el-input v-model="queryParams.module" placeholder="请输入隶属哪个模块" clearable @keyup.enter.native="handleQuery" />
|
|
|
</el-form-item>
|
|
|
<el-form-item>
|
|
|
- <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
|
|
- <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
|
|
+ <el-button type="primary" icon="search" size="small" @click="handleQuery">搜索</el-button>
|
|
|
+ <el-button icon="refresh" size="small" @click="resetQuery">重置</el-button>
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
|
|
|
- <el-row :gutter="10" class="mb8">
|
|
|
- <el-col :span="1.5">
|
|
|
- <el-button
|
|
|
- type="primary"
|
|
|
- plain
|
|
|
- icon="el-icon-plus"
|
|
|
- size="mini"
|
|
|
- @click="handleAdd"
|
|
|
- v-hasPermi="['business:record:add']"
|
|
|
- >新增</el-button>
|
|
|
- </el-col>
|
|
|
- <el-col :span="1.5">
|
|
|
- <el-button
|
|
|
- type="success"
|
|
|
- plain
|
|
|
- icon="el-icon-edit"
|
|
|
- size="mini"
|
|
|
- :disabled="single"
|
|
|
- @click="handleUpdate"
|
|
|
- v-hasPermi="['business:record:edit']"
|
|
|
- >修改</el-button>
|
|
|
- </el-col>
|
|
|
- <el-col :span="1.5">
|
|
|
- <el-button
|
|
|
- type="danger"
|
|
|
- plain
|
|
|
- icon="el-icon-delete"
|
|
|
- size="mini"
|
|
|
- :disabled="multiple"
|
|
|
- @click="handleDelete"
|
|
|
- v-hasPermi="['business:record:remove']"
|
|
|
- >删除</el-button>
|
|
|
- </el-col>
|
|
|
- <el-col :span="1.5">
|
|
|
- <el-button
|
|
|
- type="warning"
|
|
|
- plain
|
|
|
- icon="el-icon-download"
|
|
|
- size="mini"
|
|
|
- @click="handleExport"
|
|
|
- v-hasPermi="['business:record:export']"
|
|
|
- >导出</el-button>
|
|
|
- </el-col>
|
|
|
- <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
|
|
- </el-row>
|
|
|
+ <el-card shadow="never" body-class="card-table_container">
|
|
|
+ <el-row :gutter="10" class="mb8">
|
|
|
+ <el-col :span="1.5">
|
|
|
+ <el-button type="primary" plain icon="plus" size="small" @click="handleAdd">新增</el-button>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="1.5">
|
|
|
+ <el-button type="success" plain icon="edit" size="small" :disabled="single"
|
|
|
+ @click="handleUpdate">修改</el-button>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="1.5">
|
|
|
+ <el-button type="danger" plain icon="delete" size="small" :disabled="multiple"
|
|
|
+ @click="handleDelete">删除</el-button>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="1.5">
|
|
|
+ <el-button type="warning" plain icon="download" size="small" @click="handleExport">导出</el-button>
|
|
|
+ </el-col>
|
|
|
+ <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
|
|
+ </el-row>
|
|
|
+ <el-table v-loading="loading" :data="recordList" @selection-change="handleSelectionChange">
|
|
|
+ <el-table-column type="selection" width="55" align="center" />
|
|
|
+ <el-table-column label="类型" align="center" prop="type" width="100">
|
|
|
+ <template #default="scope">
|
|
|
+ <el-tag :type="scope.row.color">
|
|
|
+ {{ scope.row.label }}
|
|
|
+ </el-tag>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="用户名" align="center" prop="id" />
|
|
|
+ <el-table-column label="手机号" align="center" prop="sessionId" />
|
|
|
+ <!-- <el-table-column label="回答" align="center" prop="showVal" /> -->
|
|
|
+ <el-table-column label="问题内容" align="center" prop="question" />
|
|
|
+ <el-table-column label="点赞" align="center" prop="isSatisfied" />
|
|
|
+ <!-- <el-table-column label="大模型回答" align="center" prop="answer" /> -->
|
|
|
+ <el-table-column label="发起时间" align="center" prop="warningId" />
|
|
|
+ <!-- <el-table-column label="问答次数" align="center" prop="counts" />
|
|
|
+ <el-table-column label="是否使用搜索增强" align="center" prop="isStrong" />
|
|
|
+ <el-table-column label="是否中断问答" align="center" prop="isShutdown" />
|
|
|
+ <el-table-column label="乐观锁" align="center" prop="revision" />
|
|
|
+ <el-table-column label="备注" align="center" prop="remark" /> -->
|
|
|
+ <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="160">
|
|
|
+ <template #default="scope">
|
|
|
+ <el-button type="primary" text size="small" icon="view" @click="handleRecordDetails(scope)">记录</el-button>
|
|
|
+ <!-- <el-button size="small" type="text" icon="edit" @click="handleUpdate(scope.row)">修改</el-button> -->
|
|
|
+ <el-button size="small" type="primary" text icon="delete" @click="handleDelete(scope.row)">删除</el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
+
|
|
|
+ <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
|
|
|
+ @pagination="getList" />
|
|
|
+ </el-card>
|
|
|
|
|
|
- <el-table v-loading="loading" :data="recordList" @selection-change="handleSelectionChange">
|
|
|
- <el-table-column type="selection" width="55" align="center" />
|
|
|
- <el-table-column label="主键" align="center" prop="id" />
|
|
|
- <el-table-column label="会话ID" align="center" prop="sessionId" />
|
|
|
- <el-table-column label="类型" align="center" prop="type" />
|
|
|
- <el-table-column label="隶属哪个模块" align="center" prop="module" />
|
|
|
- <el-table-column label="用户ID" align="center" prop="userId" />
|
|
|
- <el-table-column label="显示内容" align="center" prop="showVal" />
|
|
|
- <el-table-column label="用户提问" align="center" prop="question" />
|
|
|
- <el-table-column label="大模型回答" align="center" prop="answer" />
|
|
|
- <el-table-column label="告警记录ID" align="center" prop="warningId" />
|
|
|
- <el-table-column label="问答次数" align="center" prop="counts" />
|
|
|
- <el-table-column label="是否使用搜索增强" align="center" prop="isStrong" />
|
|
|
- <el-table-column label="回复是否满意" align="center" prop="isSatisfied" />
|
|
|
- <el-table-column label="是否中断问答" align="center" prop="isShutdown" />
|
|
|
- <el-table-column label="乐观锁" align="center" prop="revision" />
|
|
|
- <el-table-column label="备注" align="center" prop="remark" />
|
|
|
- <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
|
|
- <template slot-scope="scope">
|
|
|
- <el-button
|
|
|
- size="mini"
|
|
|
- type="text"
|
|
|
- icon="el-icon-edit"
|
|
|
- @click="handleUpdate(scope.row)"
|
|
|
- v-hasPermi="['business:record:edit']"
|
|
|
- >修改</el-button>
|
|
|
- <el-button
|
|
|
- size="mini"
|
|
|
- type="text"
|
|
|
- icon="el-icon-delete"
|
|
|
- @click="handleDelete(scope.row)"
|
|
|
- v-hasPermi="['business:record:remove']"
|
|
|
- >删除</el-button>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- </el-table>
|
|
|
|
|
|
- <pagination
|
|
|
- v-show="total>0"
|
|
|
- :total="total"
|
|
|
- :page.sync="queryParams.pageNum"
|
|
|
- :limit.sync="queryParams.pageSize"
|
|
|
- @pagination="getList"
|
|
|
- />
|
|
|
+ <el-dialog title="问答记录" v-model="recordVisible" width="900px" append-to-body class="chat-dialog_container">
|
|
|
+
|
|
|
+ <el-scrollbar height="600px">
|
|
|
+ <div class="">
|
|
|
+ <ChatAsk content="123123123"></ChatAsk>
|
|
|
+ <ChatAnswer content="作为污水处理厂工艺人员,一个全面的工作计划应该包括以下几个关键方面:
|
|
|
+
|
|
|
+1. 污水处理过程监控与维护:
|
|
|
+ - **日常巡检**:定期检查各单元设备(如格栅、沉淀池、生物反应器、二次沉淀池、消毒设施等)的运行状态,确保其正常运转。
|
|
|
+ - **数据记录**:收集并分析水质、水量、能耗等关键指标数据,以便于发现问题和优化操作。
|
|
|
+ - **设备保养与维修**:根据检查结果安排设备维护和预防性维修,确保设备处于良好状态。
|
|
|
+
|
|
|
+2. 生产运行与控制:
|
|
|
+ - **工艺参数调整**:根据进水水质变化,及时调整污泥龄、溶解氧、pH值等工艺参数,保证出水质量达标。
|
|
|
+ - **生产调度**:合理安排污水处理流程,避免高峰期的压力,确保污水处理效率。
|
|
|
+ - **应急预案**:制定并定期演练应急处理方案,应对突发情况如设备故障或大量异常废水。
|
|
|
+
|
|
|
+3. 环保与合规管理:
|
|
|
+ - **环保法规遵守**:熟悉并执行相关的环保法规,如《水污染防治法》、《城镇污水处理厂污染物排放标准》等。
|
|
|
+ - **环境监测**:定期进行周边环境水质监测,评估污水处理效果对环境的影响。
|
|
|
+ - **报告与申报**:准备并提交定期的运营报告、排放许可证更新申请及相关环保报告。
|
|
|
+
|
|
|
+4. 培训与发展:
|
|
|
+ - **员工培训**:定期对员工进行专业知识和技术技能培训,提高团队整体能力。
|
|
|
+ - **新技术研究**:关注行业动态,学习和引入新的污水处理技术和管理方法,提升工厂的技术水平。
|
|
|
+
|
|
|
+5. 安全与健康管理:
|
|
|
+ - **安全规程**:严格执行安全操作规程,定期进行安全培训和演练。
|
|
|
+ - **职业健康**:关注员工的劳动保护,确保工作环境符合职业健康要求。
|
|
|
+
|
|
|
+以上是一个基本的工作计划框架,具体内容会根据实际的厂况、政策要求以及季节变化等因素进行调整。"></ChatAnswer>
|
|
|
+ </div>
|
|
|
+ </el-scrollbar>
|
|
|
+ </el-dialog>
|
|
|
|
|
|
<!-- 添加或修改信义大模型问答记录对话框 -->
|
|
|
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
|
|
@@ -216,7 +148,7 @@
|
|
|
<el-input v-model="form.remark" placeholder="请输入备注" />
|
|
|
</el-form-item>
|
|
|
</el-form>
|
|
|
- <div slot="footer" class="dialog-footer">
|
|
|
+ <div slot="footer" 238="dialog-footer">
|
|
|
<el-button type="primary" @click="submitForm">确 定</el-button>
|
|
|
<el-button @click="cancel">取 消</el-button>
|
|
|
</div>
|
|
@@ -226,9 +158,10 @@
|
|
|
|
|
|
<script>
|
|
|
import { listRecord, getRecord, delRecord, addRecord, updateRecord } from "@/api/business/record";
|
|
|
-
|
|
|
+import { ChatAsk, ChatAnswer } from "@/components/chat"
|
|
|
export default {
|
|
|
name: "Record",
|
|
|
+ components: { ChatAsk, ChatAnswer },
|
|
|
data() {
|
|
|
return {
|
|
|
// 遮罩层
|
|
@@ -271,18 +204,38 @@ export default {
|
|
|
form: {},
|
|
|
// 表单校验
|
|
|
rules: {
|
|
|
- }
|
|
|
+ },
|
|
|
+ selectOptions: [
|
|
|
+ { value: 0, label: '专家问答', },
|
|
|
+ { value: 1, label: '水质报警', },
|
|
|
+ { value: 2, label: '生化报警', },
|
|
|
+ { value: 3, label: '预测预警',}
|
|
|
+ ],
|
|
|
+ recordVisible: false
|
|
|
};
|
|
|
},
|
|
|
created() {
|
|
|
this.getList();
|
|
|
},
|
|
|
methods: {
|
|
|
+ // 查看详情
|
|
|
+ handleRecordDetails(scope) {
|
|
|
+ this.recordVisible = true;
|
|
|
+ // getQaDetail(scope.row.id).then(res => {
|
|
|
+ // console.log(res);
|
|
|
+ // })
|
|
|
+ },
|
|
|
/** 查询信义大模型问答记录列表 */
|
|
|
getList() {
|
|
|
this.loading = true;
|
|
|
+ const enumType1 = {
|
|
|
+ '0': {color: '', label: '专家问答'},
|
|
|
+ '1': {color: 'success', label: '水质报警'},
|
|
|
+ '2': {color: 'warning', label: '生化报警'},
|
|
|
+ '3': {color: 'danger', label: '预测预警'}
|
|
|
+ }
|
|
|
listRecord(this.queryParams).then(response => {
|
|
|
- this.recordList = response.rows;
|
|
|
+ this.recordList = response.rows.map(item => ({ ...item, ...enumType1[item.type] }));
|
|
|
this.total = response.total;
|
|
|
this.loading = false;
|
|
|
});
|
|
@@ -331,7 +284,7 @@ export default {
|
|
|
// 多选框选中数据
|
|
|
handleSelectionChange(selection) {
|
|
|
this.ids = selection.map(item => item.id)
|
|
|
- this.single = selection.length!==1
|
|
|
+ this.single = selection.length !== 1
|
|
|
this.multiple = !selection.length
|
|
|
},
|
|
|
/** 新增按钮操作 */
|
|
@@ -373,12 +326,12 @@ export default {
|
|
|
/** 删除按钮操作 */
|
|
|
handleDelete(row) {
|
|
|
const ids = row.id || this.ids;
|
|
|
- this.$modal.confirm('是否确认删除信义大模型问答记录编号为"' + ids + '"的数据项?').then(function() {
|
|
|
+ this.$modal.confirm('是否确认删除信义大模型问答记录编号为"' + ids + '"的数据项?').then(function () {
|
|
|
return delRecord(ids);
|
|
|
}).then(() => {
|
|
|
this.getList();
|
|
|
this.$modal.msgSuccess("删除成功");
|
|
|
- }).catch(() => {});
|
|
|
+ }).catch(() => { });
|
|
|
},
|
|
|
/** 导出按钮操作 */
|
|
|
handleExport() {
|