wujingjing
2024-09-13 39ab910fe59480a35ebca316cd66e3995e70d4ed
src/views/project/yw/lowCode/sqlAmis/optDlg/OptDlg.vue
@@ -3,59 +3,21 @@
      v-model="dialogIsShow"
      :headerIcon="dialogHeaderIcon"
      :title="dialogTitle"
      width="720"
      width="470"
      @dlgClosed="closeDialog"
      @submit="submitFormValue"
   >
      <el-form :model="dialogFormValue" ref="dialogFormRef" :rules="dialogFormRules" label-width="78">
      <el-form :model="dialogFormValue" ref="dialogFormRef" :rules="dialogFormRules" label-width="76">
         <el-form-item label="标题" prop="title">
            <el-input v-model="dialogFormValue.title"></el-input>
         </el-form-item>
         <el-form-item label="提示词" prop="prompt">
            <el-input v-model="dialogFormValue.prompt"></el-input>
            <el-input v-model="dialogFormValue.prompt" type="textarea" :rows="3"></el-input>
         </el-form-item>
         <el-form-item label="备注" prop="note">
            <el-input v-model="dialogFormValue.note" type="textarea" :rows="3"></el-input>
         </el-form-item>
         <div class="flex max-h-80">
            <span class="flex-0 ml-2.5">页面参数</span>
            <div class="ml-3 flex-auto flex-col flex">
               <el-table :data="dialogFormValue.args" border>
                  <el-table-column prop="name" label="名称" show-overflow-tooltip>
                     <template #default="scope">
                        <el-input v-model="scope.row.name"></el-input>
                     </template>
                  </el-table-column>
                  <el-table-column prop="title" label="标题" show-overflow-tooltip>
                     <template #default="scope">
                        <el-input v-model="scope.row.title"></el-input>
                     </template>
                  </el-table-column>
                  <el-table-column label="" width="55" fixed="right" show-overflow-tooltip>
                     <template #default="scope">
                        <el-tooltip effect="dark" content="删除" placement="top">
                           <i class="ywifont ywicon-shanchu !text-[17px] text-red-400 cursor-pointer" @click="deleteArg(scope.$index)"></i>
                        </el-tooltip>
                     </template>
                  </el-table-column>
               </el-table>
               <el-button class="flex-0 mt-1" @click="addArg">添加</el-button>
            </div>
            <!-- <el-table class="ml-3 h-80" border row-class-name="cursor-pointer" :data="dialogFormValue.args" highlight-current-row>
               <el-table-column prop="name" label="名称" width="300" fixed="left" show-overflow-tooltip>
                  <template #default="scope">
                     <el-input v-model="dialogFormValue.args[scope.$index].name"></el-input>
                  </template>
               </el-table-column>
               <el-table-column prop="title" label="提示" show-overflow-tooltip>
                  <template #default="scope">
                     <el-input v-model="dialogFormValue.args[scope.$index].title"></el-input>
                  </template>
               </el-table-column>
            </el-table> -->
         </div>
      </el-form>
   </ywDialog>
</template>
@@ -104,13 +66,12 @@
const openOperateDialog = (row?) => {
   if (row) {
      isEditDialog.value = true;
      const { id, note, prompt, title, args } = row;
      const formArgs = args ? args : [];
      dialogFormValue.value = deepClone({ id, note, prompt, title, args: formArgs });
      const { id, note, prompt, title } = row;
      dialogFormValue.value = deepClone({ id, note, prompt, title });
   } else {
      isEditDialog.value = false;
      dialogFormValue.value = { group: props.groupId, title: null, prompt: null, note: null, args: [] };
      dialogFormValue.value = { group: props.groupId, title: null, prompt: null, note: null };
   }
};
const closeDialog = () => {
@@ -123,14 +84,12 @@
const submitFormValue = async () => {
   const valid = await dialogFormRef.value.validate().catch(() => {});
   if (!valid) return;
   const args =
      !dialogFormValue.value.args || dialogFormValue.value.args.length === 0 ? null : JSON.stringify(dialogFormValue.value.args);
   const sendForm = { ...dialogFormValue.value, args };
   const updateArgs = args && JSON.parse(args);
   const sendForm = { ...dialogFormValue.value };
   const updateTime = formatDate(new Date());
   if (isEditDialog.value) {
      const res = await supervisorAdminApi.updateSupervisor(sendForm);
      emit('update', { ...dialogFormValue.value, args: updateArgs, update_time: updateTime.slice(0, 10) });
      emit('update', { ...dialogFormValue.value, update_time: updateTime.slice(0, 10) });
      closeDialog();
      ElMessage.success('修改页面成功');
@@ -139,7 +98,6 @@
      const newData = {
         id: res.agent_id,
         ...dialogFormValue.value,
         args: updateArgs,
         create_time: updateTime.slice(0, 10),
         update_time: updateTime.slice(0, 10),
         creator: userInfos.value.userName,
@@ -153,24 +111,6 @@
//#endregion
//#region ====================== 可编辑表格 ======================
const addArg = () => {
   const args = dialogFormValue.value.args;
   const initData = {
      name: '',
      title: '',
   };
   if (!args || args.length === 0) {
      dialogFormValue.value.args = [initData];
      return;
   }
   dialogFormValue.value.args.push(initData);
};
const deleteArg = (index) => {
   dialogFormValue.value.args.splice(index, 1);
};
//#endregion
watch(
   () => dialogIsShow.value,