wujingjing
2024-08-29 960df219d3eb504a712545898b44e9543fa81176
src/views/project/yw/lowCode/sqlAmis/SqlAmis.vue
@@ -2,16 +2,16 @@
   <HMContainer type="card">
      <template #header>
         <el-form ref="queryFormRef" :inline="true" :model="queryParams">
            <el-form-item label="名称" prop="title">
               <el-input v-model="queryParams.title" style="width: 226.4px" placeholder="名称" clearable />
            <el-form-item label="标题" prop="title">
               <el-input v-model="queryParams.title" style="width: 226.4px" placeholder="标题" clearable />
            </el-form-item>
            <el-form-item>
               <el-button type="primary" icon="ele-Search" @click="handleQueryTable"> 查询 </el-button>
               <el-button icon="ele-Refresh" @click="resetQuery">重置 </el-button>
               <el-button icon="ele-Plus" @click="openOperateDialog()"> 增加 </el-button>
               <el-button icon="ele-Plus" @click="openOperateDialog()"> 添加 </el-button>
            </el-form-item>
                  </el-form>
         </el-form>
      </template>
      <template #main>
         <el-table
@@ -24,28 +24,35 @@
            :expand-row-keys="treeTableExpandKeys"
            @expand-change="tableExpandChange"
            :row-class-name="isDragStatus ? 'cursor-move' : 'cursor-pointer'"
            :cell-style="tableCellCenterExceptColumn()"
            :header-cell-style="{ textAlign: 'center' }"
            :data="displayTableData"
            highlight-current-row
         >
            <el-table-column prop="id" label="id" width="220" fixed="left" show-overflow-tooltip> </el-table-column>
            <el-table-column prop="title" label="名称" width="220" fixed="left" show-overflow-tooltip> </el-table-column>
            <el-table-column prop="title" label="标题" width="300" fixed="left" show-overflow-tooltip> </el-table-column>
            <el-table-column prop="prompt" label="提示词" show-overflow-tooltip> </el-table-column>
            <el-table-column prop="published" label="状态" width="80" show-overflow-tooltip>
               <template #default="scope">
                  {{ supervisorPublishedMap[scope.row.published] }}
               </template>
            </el-table-column>
            <el-table-column label="创建人" prop="creator" width="100" show-overflow-tooltip> </el-table-column>
            <el-table-column label="创建时间" prop="create_time" width="105" show-overflow-tooltip> </el-table-column>
            <el-table-column label="更新时间" prop="update_time" width="105" show-overflow-tooltip> </el-table-column>
            <el-table-column label="备注" prop="note" show-overflow-tooltip> </el-table-column>
            <!-- <el-table-column prop="Code" label="编码" show-overflow-tooltip> </el-table-column>
            <el-table-column prop="Description" label="说明" width="550" show-overflow-tooltip> </el-table-column> -->
            <el-table-column label="操作" width="150" fixed="right" show-overflow-tooltip>
            <el-table-column label="操作" width="120" fixed="right" show-overflow-tooltip>
               <template #default="scope">
                  <el-button icon="ele-Edit" size="small" text type="primary" @click="openOperateDialog(scope.row)">  </el-button>
                  <el-button
                     icon="ele-Delete"
                     size="small"
                     text
                     type="danger"
                  >
                  </el-button>
                  <div class="space-x-2.5">
                     <el-tooltip effect="dark" content="SQL编辑" placement="top">
                        <i class="ywifont ywicon-sql !text-[14px] text-blue-400 cursor-pointer" @click="editSqlClick(scope.row)"></i>
                     </el-tooltip>
                     <el-tooltip effect="dark" content="编辑" placement="top">
                        <i class="ywifont ywicon-bianji !text-[14px] text-blue-400 cursor-pointer" @click="openOperateDialog(scope.row)"></i>
                     </el-tooltip>
                     <el-tooltip effect="dark" content="删除" placement="top">
                        <i class="ywifont ywicon-shanchu !text-[17px] text-red-400 cursor-pointer" @click="openOperateDialog(scope.row)"></i>
                     </el-tooltip>
                  </div>
               </template>
            </el-table-column>
         </el-table>
@@ -64,13 +71,8 @@
                  filterable
                  style="width: 100%"
                  v-model="dialogFormValue.ParentID"
                  :props="{
                     id: 'ID',
                     label: 'Name',
                     children: 'Children',
                  }"
                  :data="tableTreeData"
                  node-key="ID"
                  node-key="id"
                  :clearable="true"
                  :accordion="true"
                  :expandNode="false"
@@ -81,7 +83,7 @@
            <el-form-item label="undefined" prop="ParentID">
               <el-input v-model="dialogFormValue.ParentID"></el-input>
            </el-form-item>
            <el-form-item label="名称" prop="Name">
            <el-form-item label="标题" prop="Name">
               <el-input v-model="dialogFormValue.Name"></el-input>
            </el-form-item>
            <el-form-item label="编码" prop="Code">
@@ -107,10 +109,11 @@
// import { useTableSort } from '/@/hooks/useTableSort';
// import { useValidateUniqueness } from '/@/hooks/useValidateUniqueness';
import { deepClone } from '/@/utils/other';
import { deleteCurrentRow } from '/@/utils/util';
import { supervisorPublishedMap } from './types';
import * as supervisorAdminApi from '/@/api/supervisorAdmin';
import { convertListToTree, tableCellCenterExceptColumn } from '/@/utils/util';
import { gotoRoute } from '/@/utils/route';
const tableTreeData = computed(() => convertListToTree(tableData.value));
//#region ====================== 表格数据,table init ======================
@@ -122,7 +125,12 @@
   const res = await supervisorAdminApi.getSupervisorList().finally(() => {
      tableLoading.value = false;
   });
   tableData.value = res.values||[];
   tableData.value = (res.values || []).map((item) => {
      item.create_time = item.create_time.slice(0, 10);
      item.update_time = item.create_time.slice(0, 10);
      return item;
   });
};
//#endregion
@@ -131,11 +139,9 @@
const queryParams = ref({
   title: '',
});
const { resetQuery, handleQueryTable, displayTableData } = useQueryTable(tableData, queryParams, ()=>{
const { resetQuery, handleQueryTable, displayTableData } = useQueryTable(tableData, queryParams, () => {
   displayTableData.value = tableData.value;
});
//#endregion
@@ -151,11 +157,9 @@
const dialogIsShow = ref(false);
const dialogFormRef = ref<FormInstance>(null);
const dialogFormRules = ref<FormRules>({
   ParentID: [{ required: true, message: '请选择undefined', trigger: 'change' }],
   Name: [{ required: true, message: '请输入名称', trigger: 'blur' }],
   Name: [{ required: true, message: '请输入标题', trigger: 'blur' }],
});
const openOperateDialog = (row?) => {
   if (row) {
@@ -229,6 +233,15 @@
      treeTableExpandKeys.value.splice(idx, 1);
   }
}; //#endregion
//#region ====================== sql ======================
   const editSqlClick = () => {
      gotoRoute({
         name:'SqlAmisEdit'
      })
   };
//#endregion
onMounted(() => {
   getTableData();
});