Sanakey
5 天以前 2af71bcf522c485ea005184c977986374a7dcc4a
src/views/email/Utils/convention.vue
@@ -1,12 +1,12 @@
<template>
  <div class="p-2" style="margin-left: 20px">
    <div class="title" style="font-size: 20px">常规</div>
    <h2 class="title" style="font-size: 20px">常规</h2>
    <a-form style="width: 60%" :labelCol="{ span: 6 }">
    <a-form style="width: 60%" :labelCol="{ span: 2 }">
      <div>
        <div class="title">账号</div>
        <h2 class="title">账号</h2>
        <a-form-item label="默认邮箱">
          <a-select>
          <a-select class='w-200'>
            <a-select-option v-for="(item, index) in emailList" :key="index" :value="item.email">
              {{ item.email }}
            </a-select-option>
@@ -16,7 +16,7 @@
      </div>
      <div>
        <div class="title">签名</div>
        <h2 class="title">签名</h2>
        <a-form-item label="个性签名">
          <div style="display: flex">
            <a-select @change="fnSignatureChange" v-model:value="signature">
@@ -31,12 +31,12 @@
            <PlusCircleOutlined style="margin-left: 20px" @click="showModal('add')" />
          </div>
        </a-form-item>
        <a-form-item :labelCol="{ span: 6 }">
        <a-form-item :labelCol="{ span: 2 }" label="内容">
          <div style="height: 200px; overflow: hidden; border-bottom: 1px solid #d9d9d9">
            <Tinymce v-model="signContent"></Tinymce>
            <TinymcePw v-model="signContent"></TinymcePw>
          </div>
          <div style="margin-top: 20px; text-align: right">
            <a-button type="primary" size="small">编辑</a-button>
            <a-button type="primary" size="small" @click="showModal('update')">编辑</a-button>
            <a-button size="small" style="margin-left: 20px">删除</a-button>
          </div>
        </a-form-item>
@@ -52,7 +52,7 @@
          <a-input v-model:value="form.signName" placeholder="请输入名称" />
        </a-form-item>
        <a-form-item label="内容">
          <TinymceAdd v-model="form.signContent" :isElse="false" :isText="false"></TinymceAdd>
          <Tinymce v-model="form.signContent" :isElse="false" :isText="false"></Tinymce>
        </a-form-item>
      </a-form>
    </a-modal>
@@ -61,12 +61,11 @@
<script lang="ts" setup>
  name: 'convention';
  import { onMounted, ref } from 'vue';
  import { nextTick, onMounted, ref } from 'vue';
  import { getAccountListApi } from '@/api/email/userList';
  import { PlusCircleOutlined } from '@ant-design/icons-vue';
  import Tinymce from '@/components/Tinymce/src/index.vue';
  import TinymceAdd from '@/components/Tinymce/src/Editor.vue';
  import { addSignatureApi, getSignatureApi } from '@/api/email/userList';
  import { TinymcePw, Tinymce } from '@/components/Tinymce';
  import { addSignatureApi, getSignatureApi, updateSignatureApi } from '@/api/email/userList';
  interface EmailItem {
    email: string;
@@ -88,18 +87,34 @@
  });
  const open = ref(false);
  const signType = ref('add');
  const form = ref<Record<string, any>>({});
  const title = ref('新建');
  const showModal = (type) => {
    signType.value = type;
    open.value = true;
    form.value = {
      signName: '',
      signContent: '',
    };
    if (type == 'add') {
      form.value = {
        signName: '',
        signContent: '',
      };
    } else {
      title.value = '编辑';
      nextTick(() => {
        formRef.value.resetFields();
        getSign(signature.value);
      });
    }
  };
  function getSign(id) {
    const matchedItem = signatureList.value.find((item) => item.signId === id);
    if (matchedItem) {
      form.value = Object.assign(form.value, matchedItem);
    }
  }
  import { useMessage } from '@/hooks/web/useMessage';
  const { createMessage } = useMessage();
  const formRef = ref();
  const signContent = ref('<p>ddd</p>');
  const signContent = ref();
  function fnSignatureChange(e) {
    const matchedItem = signatureList.value.find((item) => item.signId === e);
    if (matchedItem) {
@@ -107,18 +122,15 @@
    } else {
      signContent.value = '';
    }
    console.log(signContent.value, '05050050505');
  }
  const signature = ref();
  const handleOk = (e: MouseEvent) => {
    console.log(form.value, '----4');
    formRef.value
      .validate()
      .then(() => {
        const data = form.value;
        // const api = signType.value !== 'add' ? updateAccountApi : addSignatureApi;
        const api = addSignatureApi;
        const api = signType.value == 'update' ? updateSignatureApi : addSignatureApi;
        // const api = addSignatureApi;
        api(data).then((res) => {
          if (res.code === 0) {
            createMessage.success(res.msg);
@@ -130,8 +142,6 @@
        console.log(e);
      });
  };
  const form = ref<Record<string, any>>({});
  const title = '新建';
</script>
<style scoped lang="less">
  .title {