cz 1 ano atrás
pai
commit
21974402bc

+ 31 - 4
src/assets/styles/index.scss

@@ -193,7 +193,7 @@ aside {
   z-index: 1000 !important;
 }
 
-.commons-title{
+.commons-title {
   font-size: 14px;
   font-weight: bold;
   margin-bottom: 20px;
@@ -201,7 +201,7 @@ aside {
   position: relative;
 }
 
-.commons-title::before{
+.commons-title::before {
   content: '';
   display: inline-block;
   width: 4px;
@@ -210,10 +210,10 @@ aside {
   margin-right: 10px;
   position: absolute;
   left: 0;
-  top:3px;
+  top: 3px;
 }
 
-.cp{
+.cp {
   cursor: pointer;
 }
 
@@ -221,4 +221,31 @@ aside {
 .public_height_dialog {
   height: calc(100vh - 260px);
   overflow: auto;
+}
+
+
+::-webkit-scrollbar {
+  /* 垂直滚动条宽度 */
+  width: 8px !important;
+  /* 水平滚动条高度 */
+  height: 8px !important;
+}
+
+/* 轨道 */
+::-webkit-scrollbar-track {
+  border-radius: 10px !important;
+  background: #ebe9e9;
+}
+
+/* 滑块 */
+::-webkit-scrollbar-thumb {
+  border-radius: 10px !important;
+  background-color: rgb(206, 206, 206) !important;
+}
+
+/* 鼠标悬停在滑块上的样式 */
+::-webkit-scrollbar-thumb:hover {
+  border-radius: 10px !important;
+  background-color: rgb(192, 192, 192) !important;
+  /* 悬停时的滑块背景色 */
 }

+ 94 - 409
src/views/customer/file/index.vue

@@ -1,37 +1,16 @@
 <template>
   <div class="tenant">
     <div style="padding: 20px; background: #fff; margin-bottom: 20px">
-      <el-button type="primary" style="margin-left: 10px" @click="openModal()"
-        >添加客户</el-button
-      >
+      <el-button type="primary" style="margin-left: 10px" @click="openModal()">添加客户</el-button>
     </div>
 
-    <byTable
-      :source="sourceList.data"
-      :pagination="sourceList.pagination"
-      :config="config"
-      :loading="loading"
-      :statConfig="statConfig"
-      :selectConfig="selectConfig"
-      highlight-current-row
-      @moreSearch="moreSearch"
-      @get-list="getList"
-      ref="table"
-    >
+    <byTable :source="sourceList.data" :pagination="sourceList.pagination" :config="config" :loading="loading" :statConfig="statConfig"
+             :selectConfig="selectConfig" highlight-current-row @moreSearch="moreSearch" @get-list="getList" ref="table">
       <template #isTop="{ item }">
         <div>
-          <img
-            style="cursor: pointer; width: 20px; transform: translateY(5px)"
-            :src="'/img/isTop.png'"
-            @click="deleteTop(item)"
-            v-if="item.isTop === 1"
-          />
-          <img
-            style="cursor: pointer; width: 20px; transform: translateY(5px)"
-            :src="'/img/noTop.png'"
-            @click="addTop(item)"
-            v-else
-          />
+          <img style="cursor: pointer; width: 20px; transform: translateY(5px)" :src="'/img/isTop.png'" @click="deleteTop(item)"
+               v-if="item.isTop === 1" />
+          <img style="cursor: pointer; width: 20px; transform: translateY(5px)" :src="'/img/noTop.png'" @click="addTop(item)" v-else />
         </div>
       </template>
       <template #address="{ item }">
@@ -40,50 +19,25 @@
         <span v-if="item.cityName"> ,{{ item.cityName }}</span>
       </template>
       <template #name="{ item }">
-        <div
-          style="cursor: pointer; color: #409eff; word-break: break-all"
-          @click="handleClickName(item)"
-        >
+        <div style="cursor: pointer; color: #409eff; word-break: break-all" @click="handleClickName(item)">
           {{ item.name }}
         </div>
       </template>
       <template #tags="{ item }">
         <div style="width: 100%">
-          <el-tag
-            style="margin-right: 8px"
-            type="success"
-            v-for="(tag, index) in item.tag"
-            closable
-            :key="index"
-            @close="tagClose(tag, item)"
-          >
+          <el-tag style="margin-right: 8px" type="success" v-for="(tag, index) in item.tag" closable :key="index" @close="tagClose(tag, item)">
             {{ dictValueLabel(tag, customerTag) }}
           </el-tag>
           <template v-if="item.tag.length !== customerTag.length">
-            <el-select
-              v-if="item.addTagShow"
-              v-model="addTag"
-              style="width: 100%"
-              @change="
+            <el-select v-if="item.addTagShow" v-model="addTag" style="width: 100%" @change="
                 (val) => {
                   return changeTag(val, item);
                 }
-              "
-            >
-              <el-option
-                v-for="tag in customerTag"
-                :key="tag.value"
-                :label="tag.label"
-                :value="tag.value"
-                :disabled="judgeTagSelect(item.tag, tag.value)"
-              />
+              ">
+              <el-option v-for="tag in customerTag" :key="tag.value" :label="tag.label" :value="tag.value"
+                         :disabled="judgeTagSelect(item.tag, tag.value)" />
             </el-select>
-            <el-tag
-              style="cursor: pointer"
-              type="success"
-              @click="showSelect(item)"
-              v-else
-            >
+            <el-tag style="cursor: pointer" type="success" @click="showSelect(item)" v-else>
               +
             </el-tag>
           </template>
@@ -92,37 +46,24 @@
       <template #follow="{ item }">
         <div :class="'getWidth' + item.id" style="width: 100%">
           <div style="width: 100%; display: flex">
-            <template
-              v-if="
+            <template v-if="
                 item.customerFollowRecordsList &&
                 item.customerFollowRecordsList.length > 0
-              "
-            >
-              <div
-                :style="
+              ">
+              <div :style="
                   index > 2
                     ? 'line-height: 32px; margin-right: 8px; padding: 0 8px; background-color: #eeeeee; border-radius: 4px; cursor: pointer; display: none'
                     : 'line-height: 32px; margin-right: 8px; padding: 0 8px; background-color: #eeeeee; border-radius: 4px; cursor: pointer'
-                "
-                v-for="(record, index) in item.customerFollowRecordsList"
-                :key="record.id"
-              >
-                <el-popover
-                  placement="bottom"
-                  :width="300"
-                  trigger="hover"
-                  @show="recordShow(record)"
-                >
+                " v-for="(record, index) in item.customerFollowRecordsList" :key="record.id">
+                <el-popover placement="bottom" :width="300" trigger="hover" @show="recordShow(record)">
                   <template #reference>
                     <div>
                       <span v-if="record.date">{{
                         record.date.substr(0, 10)
                       }}</span>
-                      <el-icon
-                        style="margin-left: 8px; transform: translateY(2px)"
-                        @click="deleteFollow(record)"
-                        ><DeleteFilled
-                      /></el-icon>
+                      <el-icon style="margin-left: 8px; transform: translateY(2px)" @click="deleteFollow(record)">
+                        <DeleteFilled />
+                      </el-icon>
                     </div>
                   </template>
                   <template #default>
@@ -139,11 +80,7 @@
                       </div> -->
 
                       <div v-if="record.type == '30'">
-                        <div
-                          style="word-wrap: break-word; margin: 8px 0"
-                          v-html="getStyle(record.content)"
-                          v-if="record.content"
-                        ></div>
+                        <div style="word-wrap: break-word; margin: 8px 0" v-html="getStyle(record.content)" v-if="record.content"></div>
                         <div v-else>跟进记录:</div>
                       </div>
                       <div v-else>
@@ -151,21 +88,11 @@
                           {{ getContent(record) }}
                         </div>
                       </div>
-                      <div
-                        style="margin: 8px 0; display: flex"
-                        v-if="record.fileList && record.fileList.length > 0"
-                      >
+                      <div style="margin: 8px 0; display: flex" v-if="record.fileList && record.fileList.length > 0">
                         <div style="width: 36px">附件:</div>
                         <div style="width: calc(100% - 36px)">
-                          <div
-                            v-for="(file, index) in record.fileList"
-                            :key="index"
-                          >
-                            <a
-                              style="color: #409eff; cursor: pointer"
-                              @click="openFile(file.fileUrl)"
-                              >{{ file.fileName }}</a
-                            >
+                          <div v-for="(file, index) in record.fileList" :key="index">
+                            <a style="color: #409eff; cursor: pointer" @click="openFile(file.fileUrl)">{{ file.fileName }}</a>
                           </div>
                         </div>
                       </div>
@@ -173,18 +100,14 @@
                   </template>
                 </el-popover>
               </div>
-              <div
-                style="
+              <div style="
                   line-height: 32px;
                   margin-right: 8px;
                   padding: 0 8px;
                   background-color: #eeeeee;
                   border-radius: 4px;
                   cursor: pointer;
-                "
-                @click="clickMore(item)"
-                v-if="item.customerFollowRecordsList.length >= 3"
-              >
+                " @click="clickMore(item)" v-if="item.customerFollowRecordsList.length >= 3">
                 更多
               </div>
             </template>
@@ -193,61 +116,28 @@
       </template>
     </byTable>
 
-    <el-dialog
-      :title="modalType == 'add' ? '新增' : '编辑'"
-      v-if="dialogVisible"
-      v-model="dialogVisible"
-      width="800"
-      v-loading="loadingOperation"
-    >
-      <byForm
-        :formConfig="formConfig"
-        :formOption="formOption"
-        v-model="formData.data"
-        :rules="rules"
-        ref="submit"
-      >
+    <el-dialog :title="modalType == 'add' ? '新增' : '编辑'" v-if="dialogVisible" v-model="dialogVisible" width="800" v-loading="loadingOperation">
+      <byForm :formConfig="formConfig" :formOption="formOption" v-model="formData.data" :rules="rules" ref="submit">
         <template #allAddress>
           <el-row style="width: 100%">
             <el-col :span="8">
               <el-form-item prop="countryId">
-                <el-select
-                  v-model="formData.data.countryId"
-                  placeholder="国家"
-                  filterable
-                  @change="(val) => getCityData(val, '20', true)"
-                >
-                  <el-option
-                    v-for="item in countryData"
-                    :label="item.name"
-                    :value="item.id"
-                  >
+                <el-select v-model="formData.data.countryId" placeholder="国家" filterable @change="(val) => getCityData(val, '20', true)">
+                  <el-option v-for="item in countryData" :label="item.name" :value="item.id">
                   </el-option>
                 </el-select>
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item prop="provinceName">
-                <selectCity
-                  placeholder="省/洲"
-                  @change="(val) => getCityData(val, '30', true)"
-                  addressId="provinceId"
-                  addressName="provinceName"
-                  v-model="formData.data"
-                  :data="provinceData"
-                >
+                <selectCity placeholder="省/洲" @change="(val) => getCityData(val, '30', true)" addressId="provinceId" addressName="provinceName"
+                            v-model="formData.data" :data="provinceData">
                 </selectCity>
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item prop="cityName">
-                <selectCity
-                  placeholder="城市"
-                  addressId="cityId"
-                  addressName="cityName"
-                  v-model="formData.data"
-                  :data="cityData"
-                ></selectCity>
+                <selectCity placeholder="城市" addressId="cityId" addressName="cityName" v-model="formData.data" :data="cityData"></selectCity>
               </el-form-item>
             </el-col>
           </el-row>
@@ -263,18 +153,11 @@
         <template #person>
           <div style="width: 100%">
             <el-button type="primary" @click="clickAddPerson">添 加</el-button>
-            <el-table
-              :data="formData.data.customerUserList"
-              style="width: 100%; margin-top: 16px"
-            >
+            <el-table :data="formData.data.customerUserList" style="width: 100%; margin-top: 16px">
               <el-table-column label="联系人" width="160">
                 <template #default="{ row, $index }">
                   <div style="width: 100%">
-                    <el-form-item
-                      :prop="'customerUserList.' + $index + '.name'"
-                      :rules="rules.name2"
-                      :inline-message="true"
-                    >
+                    <el-form-item :prop="'customerUserList.' + $index + '.name'" :rules="rules.name2" :inline-message="true">
                       <el-input v-model="row.name" placeholder="请输入联系人" />
                     </el-form-item>
                   </div>
@@ -283,35 +166,16 @@
               <el-table-column label="电子邮箱">
                 <template #default="{ row, $index }">
                   <div style="width: 100%">
-                    <el-form-item
-                      :prop="'customerUserList.' + $index + '.email'"
-                      :rules="rules.email"
-                      :inline-message="true"
-                    >
-                      <el-input
-                        v-model="row.email"
-                        placeholder="请输入电子邮箱"
-                      />
+                    <el-form-item :prop="'customerUserList.' + $index + '.email'" :rules="rules.email" :inline-message="true">
+                      <el-input v-model="row.email" placeholder="请输入电子邮箱" />
                     </el-form-item>
                   </div>
                 </template>
               </el-table-column>
-              <el-table-column
-                align="center"
-                label="操作"
-                width="120"
-                fixed="right"
-              >
+              <el-table-column align="center" label="操作" width="120" fixed="right">
                 <template #default="{ row, $index }">
-                  <el-button
-                    type="primary"
-                    link
-                    @click="clickInformationMore(row, $index)"
-                    >更多</el-button
-                  >
-                  <el-button type="primary" link @click="clickDelete($index)"
-                    >删除</el-button
-                  >
+                  <el-button type="primary" link @click="clickInformationMore(row, $index)">更多</el-button>
+                  <el-button type="primary" link @click="clickDelete($index)">删除</el-button>
                 </template>
               </el-table-column>
             </el-table>
@@ -320,28 +184,12 @@
       </byForm>
       <template #footer>
         <el-button @click="dialogVisible = false" size="large">取 消</el-button>
-        <el-button
-          type="primary"
-          @click="submitForm()"
-          size="large"
-          :loading="submitLoading"
-          >确 定</el-button
-        >
+        <el-button type="primary" @click="submitForm()" size="large" :loading="submitLoading">确 定</el-button>
       </template>
     </el-dialog>
 
-    <el-dialog
-      title="更多联系方式"
-      v-if="openPerson"
-      v-model="openPerson"
-      width="700"
-    >
-      <el-form
-        :label-position="'top'"
-        :model="formPerson.data"
-        :rules="rulesPerson"
-        ref="person"
-      >
+    <el-dialog title="更多联系方式" v-if="openPerson" v-model="openPerson" width="700">
+      <el-form :label-position="'top'" :model="formPerson.data" :rules="rulesPerson" ref="person">
         <el-form-item label="联系人" prop="name">
           <el-input v-model="formPerson.data.name" />
         </el-form-item>
@@ -350,32 +198,14 @@
         </el-form-item>
         <el-form-item label="更多联系方式">
           <div style="width: 100%">
-            <el-button type="primary" @click="clickAddMoreInformation"
-              >添 加</el-button
-            >
-            <el-table
-              :data="formPerson.data.contact"
-              style="width: 100%; margin-top: 16px"
-            >
+            <el-button type="primary" @click="clickAddMoreInformation">添 加</el-button>
+            <el-table :data="formPerson.data.contact" style="width: 100%; margin-top: 16px">
               <el-table-column label="类型" width="180">
                 <template #default="{ row, $index }">
                   <div style="width: 100%">
-                    <el-form-item
-                      :prop="'contact.' + $index + '.type'"
-                      :rules="rulesPerson.type"
-                      :inline-message="true"
-                    >
-                      <el-select
-                        v-model="row.type"
-                        placeholder="请选择类型"
-                        style="width: 100%"
-                      >
-                        <el-option
-                          v-for="item in contactType"
-                          :key="item.value"
-                          :label="item.label"
-                          :value="item.value"
-                        />
+                    <el-form-item :prop="'contact.' + $index + '.type'" :rules="rulesPerson.type" :inline-message="true">
+                      <el-select v-model="row.type" placeholder="请选择类型" style="width: 100%">
+                        <el-option v-for="item in contactType" :key="item.value" :label="item.label" :value="item.value" />
                       </el-select>
                     </el-form-item>
                   </div>
@@ -384,32 +214,15 @@
               <el-table-column label="联系号码">
                 <template #default="{ row, $index }">
                   <div style="width: 100%">
-                    <el-form-item
-                      :prop="'contact.' + $index + '.contactNo'"
-                      :rules="rulesPerson.contactNo"
-                      :inline-message="true"
-                    >
-                      <el-input
-                        v-model="row.contactNo"
-                        placeholder="请输入联系号码"
-                      />
+                    <el-form-item :prop="'contact.' + $index + '.contactNo'" :rules="rulesPerson.contactNo" :inline-message="true">
+                      <el-input v-model="row.contactNo" placeholder="请输入联系号码" />
                     </el-form-item>
                   </div>
                 </template>
               </el-table-column>
-              <el-table-column
-                align="center"
-                label="操作"
-                width="120"
-                fixed="right"
-              >
+              <el-table-column align="center" label="操作" width="120" fixed="right">
                 <template #default="{ $index }">
-                  <el-button
-                    type="primary"
-                    link
-                    @click="clickInformationDelete($index)"
-                    >删除</el-button
-                  >
+                  <el-button type="primary" link @click="clickInformationDelete($index)">删除</el-button>
                 </template>
               </el-table-column>
             </el-table>
@@ -418,60 +231,25 @@
       </el-form>
       <template #footer>
         <el-button @click="openPerson = false" size="large">取 消</el-button>
-        <el-button type="primary" @click="submitPerson()" size="large"
-          >确 定</el-button
-        >
+        <el-button type="primary" @click="submitPerson()" size="large">确 定</el-button>
       </template>
     </el-dialog>
 
-    <el-dialog
-      title="分配"
-      v-if="openAllocation"
-      v-model="openAllocation"
-      width="300"
-    >
-      <byForm
-        :formConfig="formConfigAllocation"
-        :formOption="formOption"
-        v-model="formAllocation.data"
-        :rules="rulesAllocation"
-        ref="allocation"
-      >
+    <el-dialog title="分配" v-if="openAllocation" v-model="openAllocation" width="300">
+      <byForm :formConfig="formConfigAllocation" :formOption="formOption" v-model="formAllocation.data" :rules="rulesAllocation" ref="allocation">
       </byForm>
       <template #footer>
-        <el-button @click="openAllocation = false" size="large"
-          >取 消</el-button
-        >
-        <el-button type="primary" @click="submitAllocation()" size="large"
-          >确 定</el-button
-        >
+        <el-button @click="openAllocation = false" size="large">取 消</el-button>
+        <el-button type="primary" @click="submitAllocation()" size="large">确 定</el-button>
       </template>
     </el-dialog>
 
-    <el-dialog
-      title="添加跟进记录"
-      v-if="openFollow"
-      v-model="openFollow"
-      width="500"
-      destroy-on-close
-    >
-      <byForm
-        :formConfig="formConfigAFollow"
-        :formOption="formOption"
-        v-model="formFollow.data"
-        :rules="rulesFollow"
-        ref="follow"
-      >
+    <el-dialog title="添加跟进记录" v-if="openFollow" v-model="openFollow" width="500" destroy-on-close>
+      <byForm :formConfig="formConfigAFollow" :formOption="formOption" v-model="formFollow.data" :rules="rulesFollow" ref="follow">
         <template #fileSlot>
           <div style="width: 100%">
-            <el-upload
-              v-model:fileList="fileList"
-              action="https://winfaster.obs.cn-south-1.myhuaweicloud.com"
-              :data="uploadData"
-              multiple
-              :before-upload="uploadFile"
-              :on-preview="onPreviewFile"
-            >
+            <el-upload v-model:fileList="fileList" action="https://winfaster.obs.cn-south-1.myhuaweicloud.com" :data="uploadData" multiple
+                       :before-upload="uploadFile" :on-preview="onPreviewFile">
               <el-button type="primary">文件上传</el-button>
             </el-upload>
           </div>
@@ -479,57 +257,32 @@
       </byForm>
       <template #footer>
         <el-button @click="openFollow = false" size="large">取 消</el-button>
-        <el-button type="primary" @click="submitFollow()" size="large"
-          >确 定</el-button
-        >
+        <el-button type="primary" @click="submitFollow()" size="large">确 定</el-button>
       </template>
     </el-dialog>
 
-    <el-dialog
-      title="跟进记录"
-      v-if="openRecordMore"
-      v-model="openRecordMore"
-      width="800"
-      destroy-on-close
-    >
+    <el-dialog title="跟进记录" v-if="openRecordMore" v-model="openRecordMore" width="800" destroy-on-close>
       <div>
         <div style="padding: 8px 0">
-          <el-button type="primary" @click="clickFollowUp(rowData)" plain
-            >添加跟进记录</el-button
-          >
+          <el-button type="primary" @click="clickFollowUp(rowData)" plain>添加跟进记录</el-button>
         </div>
         <div style="padding-top: 16px">
-          <div
-            v-infinite-scroll="infiniteScroll"
-            class="infinite-scroll"
-            :infinite-scroll-disabled="judgeTotal()"
-          >
+          <div v-infinite-scroll="infiniteScroll" class="infinite-scroll" :infinite-scroll-disabled="judgeTotal()">
             <el-timeline>
-              <el-timeline-item
-                v-for="(record, index) in recordList"
-                :key="index"
-                :timestamp="record.date"
-                hide-timestamp
-              >
+              <el-timeline-item v-for="(record, index) in recordList" :key="index" :timestamp="record.date" hide-timestamp>
                 <div>
-                  <div
-                    style="
+                  <div style="
                       padding: 0 0 8px 0;
                       display: flex;
                       justify-content: space-between;
-                    "
-                  >
+                    ">
                     <span>{{
                       dictValueLabel(record.createUser, userList)
                     }}</span>
                     <span>{{ record.date }}</span>
                   </div>
                   <div v-if="record.type == '30'">
-                    <div
-                      style="word-wrap: break-word; margin: 8px 0"
-                      v-html="getStyle(record.content)"
-                      v-if="record.content"
-                    ></div>
+                    <div style="word-wrap: break-word; margin: 8px 0" v-html="getStyle(record.content)" v-if="record.content"></div>
                     <div v-else>跟进记录:</div>
                   </div>
                   <div v-else>
@@ -537,21 +290,11 @@
                       {{ getContent(record) }}
                     </div>
                   </div>
-                  <div
-                    style="margin: 8px 0; display: flex"
-                    v-if="record.fileList && record.fileList.length > 0"
-                  >
+                  <div style="margin: 8px 0; display: flex" v-if="record.fileList && record.fileList.length > 0">
                     <div style="width: 36px">附件:</div>
                     <div style="width: calc(100% - 36px)">
-                      <div
-                        v-for="(file, index) in record.fileList"
-                        :key="index"
-                      >
-                        <a
-                          style="color: #409eff; cursor: pointer"
-                          @click="openFile(file.fileUrl)"
-                          >{{ file.fileName }}</a
-                        >
+                      <div v-for="(file, index) in record.fileList" :key="index">
+                        <a style="color: #409eff; cursor: pointer" @click="openFile(file.fileUrl)">{{ file.fileName }}</a>
                       </div>
                     </div>
                   </div>
@@ -562,107 +305,51 @@
         </div>
       </div>
       <template #footer>
-        <el-button @click="openRecordMore = false" size="large"
-          >关 闭</el-button
-        >
+        <el-button @click="openRecordMore = false" size="large">关 闭</el-button>
       </template>
     </el-dialog>
 
-    <el-dialog
-      title="高级检索"
-      v-if="openSearch"
-      v-model="openSearch"
-      width="600"
-      :before-close="cancelSearch"
-    >
-      <byForm
-        :formConfig="formSearchConfig"
-        :formOption="formOption"
-        v-model="sourceList.pagination"
-      >
+    <el-dialog title="高级检索" v-if="openSearch" v-model="openSearch" width="600" :before-close="cancelSearch">
+      <byForm :formConfig="formSearchConfig" :formOption="formOption" v-model="sourceList.pagination">
         <template #address>
           <el-row style="width: 100%">
             <el-col :span="8">
               <el-form-item prop="countryId">
-                <el-select
-                  v-model="sourceList.pagination.countryId"
-                  placeholder="国家"
-                  clearable
-                  filterable
-                  @change="(val) => getCitySearchData(val, '20', true)"
-                >
-                  <el-option
-                    v-for="item in countrySearchData"
-                    :label="item.name"
-                    :value="item.id"
-                  >
+                <el-select v-model="sourceList.pagination.countryId" placeholder="国家" clearable filterable
+                           @change="(val) => getCitySearchData(val, '20', true)">
+                  <el-option v-for="item in countrySearchData" :label="item.name" :value="item.id">
                   </el-option>
                 </el-select>
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item prop="provinceName">
-                <selectCity
-                  placeholder="省/洲"
-                  @change="(val) => getCitySearchData(val, '30', true)"
-                  addressId="provinceId"
-                  addressName="provinceName"
-                  v-model="sourceList.pagination"
-                  :data="provinceSearchData"
-                >
+                <selectCity placeholder="省/洲" @change="(val) => getCitySearchData(val, '30', true)" addressId="provinceId" addressName="provinceName"
+                            v-model="sourceList.pagination" :data="provinceSearchData">
                 </selectCity>
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item prop="cityName">
-                <selectCity
-                  placeholder="城市"
-                  addressId="cityId"
-                  addressName="cityName"
-                  v-model="sourceList.pagination"
-                  :data="citySearchData"
-                ></selectCity>
+                <selectCity placeholder="城市" addressId="cityId" addressName="cityName" v-model="sourceList.pagination" :data="citySearchData">
+                </selectCity>
               </el-form-item>
             </el-col>
           </el-row>
         </template>
         <template #tags>
           <div style="width: 100%">
-            <el-tag
-              style="margin-right: 8px"
-              type="info"
-              v-for="(tag, index) in sourceList.pagination.tags"
-              closable
-              :key="index"
-              @close="tagSearchClose(tag)"
-            >
+            <el-tag style="margin-right: 8px" type="info" v-for="(tag, index) in sourceList.pagination.tags" closable :key="index"
+                    @close="tagSearchClose(tag)">
               {{ dictValueLabel(tag, customerTag) }}
             </el-tag>
-            <template
-              v-if="sourceList.pagination.tags.length !== customerTag.length"
-            >
-              <el-select
-                v-if="addTagSearchShow"
-                v-model="addSearchTag"
-                style="margin-top: 8px"
-                @change="changeSearchTag"
-              >
-                <el-option
-                  v-for="tag in customerTag"
-                  :key="tag.value"
-                  :label="tag.label"
-                  :value="tag.value"
-                  :disabled="
+            <template v-if="sourceList.pagination.tags.length !== customerTag.length">
+              <el-select v-if="addTagSearchShow" v-model="addSearchTag" style="margin-top: 8px" @change="changeSearchTag">
+                <el-option v-for="tag in customerTag" :key="tag.value" :label="tag.label" :value="tag.value" :disabled="
                     judgeTagSelect(sourceList.pagination.tags, tag.value)
-                  "
-                />
+                  " />
               </el-select>
-              <el-tag
-                style="cursor: pointer"
-                type="info"
-                @click="addTagSearchShow = true"
-                v-else
-              >
+              <el-tag style="cursor: pointer" type="info" @click="addTagSearchShow = true" v-else>
                 +
               </el-tag>
             </template>
@@ -671,9 +358,7 @@
       </byForm>
       <template #footer>
         <el-button @click="cancelSearch()" size="large">取 消</el-button>
-        <el-button type="primary" @click="submitSearch()" size="large"
-          >确 定</el-button
-        >
+        <el-button type="primary" @click="submitSearch()" size="large">确 定</el-button>
       </template>
     </el-dialog>
   </div>
@@ -1746,7 +1431,7 @@ const formSearchConfig = computed(() => {
 });
 const addSearchTag = ref("");
 const addTagSearchShow = ref(false);
-let copySearch = ref({});
+// let copySearch = ref({});
 const moreSearch = () => {
   if (sourceList.value.pagination.tag) {
     sourceList.value.pagination.tags =
@@ -1755,11 +1440,11 @@ const moreSearch = () => {
     sourceList.value.pagination.tags = [];
   }
   addTagSearchShow.value = false;
-  copySearch.value = proxy.deepClone(sourceList.value.pagination);
+  // copySearch.value = proxy.deepClone(sourceList.value.pagination);
   openSearch.value = true;
 };
 const cancelSearch = () => {
-  sourceList.value.pagination = copySearch.value;
+  // sourceList.value.pagination = copySearch.value;
   openSearch.value = false;
 };
 const submitSearch = () => {

+ 89 - 389
src/views/customer/highseas/index.vue

@@ -1,37 +1,16 @@
 <template>
   <div class="tenant">
     <div style="padding: 20px; background: #fff; margin-bottom: 20px">
-      <el-button type="primary" style="margin-left: 10px" @click="openModal()"
-        >添加客户</el-button
-      >
+      <el-button type="primary" style="margin-left: 10px" @click="openModal()">添加客户</el-button>
     </div>
 
-    <byTable
-      :source="sourceList.data"
-      :pagination="sourceList.pagination"
-      :config="config"
-      :loading="loading"
-      :statConfig="statConfig"
-      :selectConfig="selectConfig"
-      highlight-current-row
-      @moreSearch="moreSearch"
-      @get-list="getList"
-      ref="table"
-    >
+    <byTable :source="sourceList.data" :pagination="sourceList.pagination" :config="config" :loading="loading" :statConfig="statConfig"
+             :selectConfig="selectConfig" highlight-current-row @moreSearch="moreSearch" @get-list="getList" ref="table">
       <template #isTop="{ item }">
         <div>
-          <img
-            style="cursor: pointer; width: 20px; transform: translateY(5px)"
-            :src="'/img/isTop.png'"
-            @click="deleteTop(item)"
-            v-if="item.isTop === 1"
-          />
-          <img
-            style="cursor: pointer; width: 20px; transform: translateY(5px)"
-            :src="'/img/noTop.png'"
-            @click="addTop(item)"
-            v-else
-          />
+          <img style="cursor: pointer; width: 20px; transform: translateY(5px)" :src="'/img/isTop.png'" @click="deleteTop(item)"
+               v-if="item.isTop === 1" />
+          <img style="cursor: pointer; width: 20px; transform: translateY(5px)" :src="'/img/noTop.png'" @click="addTop(item)" v-else />
         </div>
       </template>
       <template #address="{ item }">
@@ -40,50 +19,25 @@
         <span v-if="item.cityName"> ,{{ item.cityName }}</span>
       </template>
       <template #name="{ item }">
-        <div
-          style="cursor: pointer; color: #409eff; word-break: break-all"
-          @click="handleClickName(item)"
-        >
+        <div style="cursor: pointer; color: #409eff; word-break: break-all" @click="handleClickName(item)">
           {{ item.name }}
         </div>
       </template>
       <template #tags="{ item }">
         <div style="width: 100%">
-          <el-tag
-            style="margin-right: 8px"
-            type="success"
-            v-for="(tag, index) in item.tag"
-            closable
-            :key="index"
-            @close="tagClose(tag, item)"
-          >
+          <el-tag style="margin-right: 8px" type="success" v-for="(tag, index) in item.tag" closable :key="index" @close="tagClose(tag, item)">
             {{ dictValueLabel(tag, customerTag) }}
           </el-tag>
           <template v-if="item.tag.length !== customerTag.length">
-            <el-select
-              v-if="item.addTagShow"
-              v-model="addTag"
-              style="width: 100%"
-              @change="
+            <el-select v-if="item.addTagShow" v-model="addTag" style="width: 100%" @change="
                 (val) => {
                   return changeTag(val, item);
                 }
-              "
-            >
-              <el-option
-                v-for="tag in customerTag"
-                :key="tag.value"
-                :label="tag.label"
-                :value="tag.value"
-                :disabled="judgeTagSelect(item.tag, tag.value)"
-              />
+              ">
+              <el-option v-for="tag in customerTag" :key="tag.value" :label="tag.label" :value="tag.value"
+                         :disabled="judgeTagSelect(item.tag, tag.value)" />
             </el-select>
-            <el-tag
-              style="cursor: pointer"
-              type="success"
-              @click="showSelect(item)"
-              v-else
-            >
+            <el-tag style="cursor: pointer" type="success" @click="showSelect(item)" v-else>
               +
             </el-tag>
           </template>
@@ -92,37 +46,24 @@
       <template #follow="{ item }">
         <div :class="'getWidth' + item.id" style="width: 100%">
           <div style="width: 100%; display: flex">
-            <template
-              v-if="
+            <template v-if="
                 item.customerFollowRecordsList &&
                 item.customerFollowRecordsList.length > 0
-              "
-            >
-              <div
-                :style="
+              ">
+              <div :style="
                   index > 2
                     ? 'line-height: 32px; margin-right: 8px; padding: 0 8px; background-color: #eeeeee; border-radius: 4px; cursor: pointer; display: none'
                     : 'line-height: 32px; margin-right: 8px; padding: 0 8px; background-color: #eeeeee; border-radius: 4px; cursor: pointer'
-                "
-                v-for="(record, index) in item.customerFollowRecordsList"
-                :key="record.id"
-              >
-                <el-popover
-                  placement="bottom"
-                  :width="300"
-                  trigger="hover"
-                  @show="recordShow(record)"
-                >
+                " v-for="(record, index) in item.customerFollowRecordsList" :key="record.id">
+                <el-popover placement="bottom" :width="300" trigger="hover" @show="recordShow(record)">
                   <template #reference>
                     <div>
                       <span v-if="record.date">{{
                         record.date.substr(0, 10)
                       }}</span>
-                      <el-icon
-                        style="margin-left: 8px; transform: translateY(2px)"
-                        @click="deleteFollow(record)"
-                        ><DeleteFilled
-                      /></el-icon>
+                      <el-icon style="margin-left: 8px; transform: translateY(2px)" @click="deleteFollow(record)">
+                        <DeleteFilled />
+                      </el-icon>
                     </div>
                   </template>
                   <template #default>
@@ -135,11 +76,7 @@
                         {{ dictValueLabel(record.createUser, userList) }}
                       </div>
                       <div v-if="record.type == '30'">
-                        <div
-                          style="word-wrap: break-word; margin: 8px 0"
-                          v-html="getStyle(record.content)"
-                          v-if="record.content"
-                        ></div>
+                        <div style="word-wrap: break-word; margin: 8px 0" v-html="getStyle(record.content)" v-if="record.content"></div>
                         <div v-else>跟进记录:</div>
                       </div>
                       <div v-else>
@@ -147,21 +84,11 @@
                           {{ getContent(record) }}
                         </div>
                       </div>
-                      <div
-                        style="margin: 8px 0; display: flex"
-                        v-if="record.fileList && record.fileList.length > 0"
-                      >
+                      <div style="margin: 8px 0; display: flex" v-if="record.fileList && record.fileList.length > 0">
                         <div style="width: 36px">附件:</div>
                         <div style="width: calc(100% - 36px)">
-                          <div
-                            v-for="(file, index) in record.fileList"
-                            :key="index"
-                          >
-                            <a
-                              style="color: #409eff; cursor: pointer"
-                              @click="openFile(file.fileUrl)"
-                              >{{ file.fileName }}</a
-                            >
+                          <div v-for="(file, index) in record.fileList" :key="index">
+                            <a style="color: #409eff; cursor: pointer" @click="openFile(file.fileUrl)">{{ file.fileName }}</a>
                           </div>
                         </div>
                       </div>
@@ -169,18 +96,14 @@
                   </template>
                 </el-popover>
               </div>
-              <div
-                style="
+              <div style="
                   line-height: 32px;
                   margin-right: 8px;
                   padding: 0 8px;
                   background-color: #eeeeee;
                   border-radius: 4px;
                   cursor: pointer;
-                "
-                @click="clickMore(item)"
-                v-if="item.customerFollowRecordsList.length >= 3"
-              >
+                " @click="clickMore(item)" v-if="item.customerFollowRecordsList.length >= 3">
                 更多
               </div>
             </template>
@@ -189,61 +112,28 @@
       </template>
     </byTable>
 
-    <el-dialog
-      :title="modalType == 'add' ? '新增' : '编辑'"
-      v-if="dialogVisible"
-      v-model="dialogVisible"
-      width="800"
-      v-loading="loadingOperation"
-    >
-      <byForm
-        :formConfig="formConfig"
-        :formOption="formOption"
-        v-model="formData.data"
-        :rules="rules"
-        ref="submit"
-      >
+    <el-dialog :title="modalType == 'add' ? '新增' : '编辑'" v-if="dialogVisible" v-model="dialogVisible" width="800" v-loading="loadingOperation">
+      <byForm :formConfig="formConfig" :formOption="formOption" v-model="formData.data" :rules="rules" ref="submit">
         <template #address>
           <el-row style="width: 100%">
             <el-col :span="8">
               <el-form-item prop="countryId">
-                <el-select
-                  v-model="formData.data.countryId"
-                  placeholder="国家"
-                  filterable
-                  @change="(val) => getCityData(val, '20', true)"
-                >
-                  <el-option
-                    v-for="item in countryData"
-                    :label="item.name"
-                    :value="item.id"
-                  >
+                <el-select v-model="formData.data.countryId" placeholder="国家" filterable @change="(val) => getCityData(val, '20', true)">
+                  <el-option v-for="item in countryData" :label="item.name" :value="item.id">
                   </el-option>
                 </el-select>
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item prop="provinceName">
-                <selectCity
-                  placeholder="省/洲"
-                  @change="(val) => getCityData(val, '30', true)"
-                  addressId="provinceId"
-                  addressName="provinceName"
-                  v-model="formData.data"
-                  :data="provinceData"
-                >
+                <selectCity placeholder="省/洲" @change="(val) => getCityData(val, '30', true)" addressId="provinceId" addressName="provinceName"
+                            v-model="formData.data" :data="provinceData">
                 </selectCity>
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item prop="cityName">
-                <selectCity
-                  placeholder="城市"
-                  addressId="cityId"
-                  addressName="cityName"
-                  v-model="formData.data"
-                  :data="cityData"
-                ></selectCity>
+                <selectCity placeholder="城市" addressId="cityId" addressName="cityName" v-model="formData.data" :data="cityData"></selectCity>
               </el-form-item>
             </el-col>
           </el-row>
@@ -259,18 +149,11 @@
         <template #person>
           <div style="width: 100%">
             <el-button type="primary" @click="clickAddPerson">添 加</el-button>
-            <el-table
-              :data="formData.data.customerUserList"
-              style="width: 100%; margin-top: 16px"
-            >
+            <el-table :data="formData.data.customerUserList" style="width: 100%; margin-top: 16px">
               <el-table-column label="联系人" width="160">
                 <template #default="{ row, $index }">
                   <div style="width: 100%">
-                    <el-form-item
-                      :prop="'customerUserList.' + $index + '.name'"
-                      :rules="rules.name2"
-                      :inline-message="true"
-                    >
+                    <el-form-item :prop="'customerUserList.' + $index + '.name'" :rules="rules.name2" :inline-message="true">
                       <el-input v-model="row.name" placeholder="请输入联系人" />
                     </el-form-item>
                   </div>
@@ -279,35 +162,16 @@
               <el-table-column label="电子邮箱">
                 <template #default="{ row, $index }">
                   <div style="width: 100%">
-                    <el-form-item
-                      :prop="'customerUserList.' + $index + '.email'"
-                      :rules="rules.email"
-                      :inline-message="true"
-                    >
-                      <el-input
-                        v-model="row.email"
-                        placeholder="请输入电子邮箱"
-                      />
+                    <el-form-item :prop="'customerUserList.' + $index + '.email'" :rules="rules.email" :inline-message="true">
+                      <el-input v-model="row.email" placeholder="请输入电子邮箱" />
                     </el-form-item>
                   </div>
                 </template>
               </el-table-column>
-              <el-table-column
-                align="center"
-                label="操作"
-                width="120"
-                fixed="right"
-              >
+              <el-table-column align="center" label="操作" width="120" fixed="right">
                 <template #default="{ row, $index }">
-                  <el-button
-                    type="primary"
-                    link
-                    @click="clickInformationMore(row, $index)"
-                    >更多</el-button
-                  >
-                  <el-button type="primary" link @click="clickDelete($index)"
-                    >删除</el-button
-                  >
+                  <el-button type="primary" link @click="clickInformationMore(row, $index)">更多</el-button>
+                  <el-button type="primary" link @click="clickDelete($index)">删除</el-button>
                 </template>
               </el-table-column>
             </el-table>
@@ -316,28 +180,12 @@
       </byForm>
       <template #footer>
         <el-button @click="dialogVisible = false" size="large">取 消</el-button>
-        <el-button
-          type="primary"
-          @click="submitForm()"
-          size="large"
-          :loading="submitLoading"
-          >确 定</el-button
-        >
+        <el-button type="primary" @click="submitForm()" size="large" :loading="submitLoading">确 定</el-button>
       </template>
     </el-dialog>
 
-    <el-dialog
-      title="更多联系方式"
-      v-if="openPerson"
-      v-model="openPerson"
-      width="700"
-    >
-      <el-form
-        :label-position="'top'"
-        :model="formPerson.data"
-        :rules="rulesPerson"
-        ref="person"
-      >
+    <el-dialog title="更多联系方式" v-if="openPerson" v-model="openPerson" width="700">
+      <el-form :label-position="'top'" :model="formPerson.data" :rules="rulesPerson" ref="person">
         <el-form-item label="联系人" prop="name">
           <el-input v-model="formPerson.data.name" />
         </el-form-item>
@@ -346,32 +194,14 @@
         </el-form-item>
         <el-form-item label="更多联系方式">
           <div style="width: 100%">
-            <el-button type="primary" @click="clickAddMoreInformation"
-              >添 加</el-button
-            >
-            <el-table
-              :data="formPerson.data.contact"
-              style="width: 100%; margin-top: 16px"
-            >
+            <el-button type="primary" @click="clickAddMoreInformation">添 加</el-button>
+            <el-table :data="formPerson.data.contact" style="width: 100%; margin-top: 16px">
               <el-table-column label="类型" width="180">
                 <template #default="{ row, $index }">
                   <div style="width: 100%">
-                    <el-form-item
-                      :prop="'contact.' + $index + '.type'"
-                      :rules="rulesPerson.type"
-                      :inline-message="true"
-                    >
-                      <el-select
-                        v-model="row.type"
-                        placeholder="请选择类型"
-                        style="width: 100%"
-                      >
-                        <el-option
-                          v-for="item in contactType"
-                          :key="item.value"
-                          :label="item.label"
-                          :value="item.value"
-                        />
+                    <el-form-item :prop="'contact.' + $index + '.type'" :rules="rulesPerson.type" :inline-message="true">
+                      <el-select v-model="row.type" placeholder="请选择类型" style="width: 100%">
+                        <el-option v-for="item in contactType" :key="item.value" :label="item.label" :value="item.value" />
                       </el-select>
                     </el-form-item>
                   </div>
@@ -380,32 +210,15 @@
               <el-table-column label="联系号码">
                 <template #default="{ row, $index }">
                   <div style="width: 100%">
-                    <el-form-item
-                      :prop="'contact.' + $index + '.contactNo'"
-                      :rules="rulesPerson.contactNo"
-                      :inline-message="true"
-                    >
-                      <el-input
-                        v-model="row.contactNo"
-                        placeholder="请输入联系号码"
-                      />
+                    <el-form-item :prop="'contact.' + $index + '.contactNo'" :rules="rulesPerson.contactNo" :inline-message="true">
+                      <el-input v-model="row.contactNo" placeholder="请输入联系号码" />
                     </el-form-item>
                   </div>
                 </template>
               </el-table-column>
-              <el-table-column
-                align="center"
-                label="操作"
-                width="120"
-                fixed="right"
-              >
+              <el-table-column align="center" label="操作" width="120" fixed="right">
                 <template #default="{ $index }">
-                  <el-button
-                    type="primary"
-                    link
-                    @click="clickInformationDelete($index)"
-                    >删除</el-button
-                  >
+                  <el-button type="primary" link @click="clickInformationDelete($index)">删除</el-button>
                 </template>
               </el-table-column>
             </el-table>
@@ -414,36 +227,16 @@
       </el-form>
       <template #footer>
         <el-button @click="openPerson = false" size="large">取 消</el-button>
-        <el-button type="primary" @click="submitPerson()" size="large"
-          >确 定</el-button
-        >
+        <el-button type="primary" @click="submitPerson()" size="large">确 定</el-button>
       </template>
     </el-dialog>
 
-    <el-dialog
-      title="添加跟进记录"
-      v-if="openFollow"
-      v-model="openFollow"
-      width="500"
-      destroy-on-close
-    >
-      <byForm
-        :formConfig="formConfigAFollow"
-        :formOption="formOption"
-        v-model="formFollow.data"
-        :rules="rulesFollow"
-        ref="follow"
-      >
+    <el-dialog title="添加跟进记录" v-if="openFollow" v-model="openFollow" width="500" destroy-on-close>
+      <byForm :formConfig="formConfigAFollow" :formOption="formOption" v-model="formFollow.data" :rules="rulesFollow" ref="follow">
         <template #fileSlot>
           <div style="width: 100%">
-            <el-upload
-              v-model:fileList="fileList"
-              action="https://winfaster.obs.cn-south-1.myhuaweicloud.com"
-              :data="uploadData"
-              multiple
-              :before-upload="uploadFile"
-              :on-preview="onPreviewFile"
-            >
+            <el-upload v-model:fileList="fileList" action="https://winfaster.obs.cn-south-1.myhuaweicloud.com" :data="uploadData" multiple
+                       :before-upload="uploadFile" :on-preview="onPreviewFile">
               <el-button type="primary">文件上传</el-button>
             </el-upload>
           </div>
@@ -451,57 +244,32 @@
       </byForm>
       <template #footer>
         <el-button @click="openFollow = false" size="large">取 消</el-button>
-        <el-button type="primary" @click="submitFollow()" size="large"
-          >确 定</el-button
-        >
+        <el-button type="primary" @click="submitFollow()" size="large">确 定</el-button>
       </template>
     </el-dialog>
 
-    <el-dialog
-      title="跟进记录"
-      v-if="openRecordMore"
-      v-model="openRecordMore"
-      width="800"
-      destroy-on-close
-    >
+    <el-dialog title="跟进记录" v-if="openRecordMore" v-model="openRecordMore" width="800" destroy-on-close>
       <div>
         <div style="padding: 8px 0">
-          <el-button type="primary" @click="clickFollowUp(rowData)" plain
-            >添加跟进记录</el-button
-          >
+          <el-button type="primary" @click="clickFollowUp(rowData)" plain>添加跟进记录</el-button>
         </div>
         <div style="padding-top: 16px">
-          <div
-            v-infinite-scroll="infiniteScroll"
-            class="infinite-scroll"
-            :infinite-scroll-disabled="judgeTotal()"
-          >
+          <div v-infinite-scroll="infiniteScroll" class="infinite-scroll" :infinite-scroll-disabled="judgeTotal()">
             <el-timeline>
-              <el-timeline-item
-                v-for="(record, index) in recordList"
-                :key="index"
-                :timestamp="record.date"
-                hide-timestamp
-              >
+              <el-timeline-item v-for="(record, index) in recordList" :key="index" :timestamp="record.date" hide-timestamp>
                 <div>
-                  <div
-                    style="
+                  <div style="
                       padding: 0 0 8px 0;
                       display: flex;
                       justify-content: space-between;
-                    "
-                  >
+                    ">
                     <span>{{
                       dictValueLabel(record.createUser, userList)
                     }}</span>
                     <span>{{ record.date }}</span>
                   </div>
                   <div v-if="record.type == '30'">
-                    <div
-                      style="word-wrap: break-word; margin: 8px 0"
-                      v-html="getStyle(record.content)"
-                      v-if="record.content"
-                    ></div>
+                    <div style="word-wrap: break-word; margin: 8px 0" v-html="getStyle(record.content)" v-if="record.content"></div>
                     <div v-else>跟进记录:</div>
                   </div>
                   <div v-else>
@@ -509,21 +277,11 @@
                       {{ getContent(record) }}
                     </div>
                   </div>
-                  <div
-                    style="margin: 8px 0; display: flex"
-                    v-if="record.fileList && record.fileList.length > 0"
-                  >
+                  <div style="margin: 8px 0; display: flex" v-if="record.fileList && record.fileList.length > 0">
                     <div style="width: 36px">附件:</div>
                     <div style="width: calc(100% - 36px)">
-                      <div
-                        v-for="(file, index) in record.fileList"
-                        :key="index"
-                      >
-                        <a
-                          style="color: #409eff; cursor: pointer"
-                          @click="openFile(file.fileUrl)"
-                          >{{ file.fileName }}</a
-                        >
+                      <div v-for="(file, index) in record.fileList" :key="index">
+                        <a style="color: #409eff; cursor: pointer" @click="openFile(file.fileUrl)">{{ file.fileName }}</a>
                       </div>
                     </div>
                   </div>
@@ -534,107 +292,51 @@
         </div>
       </div>
       <template #footer>
-        <el-button @click="openRecordMore = false" size="large"
-          >关 闭</el-button
-        >
+        <el-button @click="openRecordMore = false" size="large">关 闭</el-button>
       </template>
     </el-dialog>
 
-    <el-dialog
-      title="高级检索"
-      v-if="openSearch"
-      v-model="openSearch"
-      width="600"
-      :before-close="cancelSearch"
-    >
-      <byForm
-        :formConfig="formSearchConfig"
-        :formOption="formOption"
-        v-model="sourceList.pagination"
-      >
+    <el-dialog title="高级检索" v-if="openSearch" v-model="openSearch" width="600" :before-close="cancelSearch">
+      <byForm :formConfig="formSearchConfig" :formOption="formOption" v-model="sourceList.pagination">
         <template #address>
           <el-row style="width: 100%">
             <el-col :span="8">
               <el-form-item prop="countryId">
-                <el-select
-                  v-model="sourceList.pagination.countryId"
-                  placeholder="国家"
-                  clearable
-                  filterable
-                  @change="(val) => getCitySearchData(val, '20', true)"
-                >
-                  <el-option
-                    v-for="item in countrySearchData"
-                    :label="item.name"
-                    :value="item.id"
-                  >
+                <el-select v-model="sourceList.pagination.countryId" placeholder="国家" clearable filterable
+                           @change="(val) => getCitySearchData(val, '20', true)">
+                  <el-option v-for="item in countrySearchData" :label="item.name" :value="item.id">
                   </el-option>
                 </el-select>
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item prop="provinceName">
-                <selectCity
-                  placeholder="省/洲"
-                  @change="(val) => getCitySearchData(val, '30', true)"
-                  addressId="provinceId"
-                  addressName="provinceName"
-                  v-model="sourceList.pagination"
-                  :data="provinceSearchData"
-                >
+                <selectCity placeholder="省/洲" @change="(val) => getCitySearchData(val, '30', true)" addressId="provinceId" addressName="provinceName"
+                            v-model="sourceList.pagination" :data="provinceSearchData">
                 </selectCity>
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item prop="cityName">
-                <selectCity
-                  placeholder="城市"
-                  addressId="cityId"
-                  addressName="cityName"
-                  v-model="sourceList.pagination"
-                  :data="citySearchData"
-                ></selectCity>
+                <selectCity placeholder="城市" addressId="cityId" addressName="cityName" v-model="sourceList.pagination" :data="citySearchData">
+                </selectCity>
               </el-form-item>
             </el-col>
           </el-row>
         </template>
         <template #tags>
           <div style="width: 100%">
-            <el-tag
-              style="margin-right: 8px"
-              type="info"
-              v-for="(tag, index) in sourceList.pagination.tags"
-              closable
-              :key="index"
-              @close="tagSearchClose(tag)"
-            >
+            <el-tag style="margin-right: 8px" type="info" v-for="(tag, index) in sourceList.pagination.tags" closable :key="index"
+                    @close="tagSearchClose(tag)">
               {{ dictValueLabel(tag, customerTag) }}
             </el-tag>
-            <template
-              v-if="sourceList.pagination.tags.length !== customerTag.length"
-            >
-              <el-select
-                v-if="addTagSearchShow"
-                v-model="addSearchTag"
-                style="margin-top: 8px"
-                @change="changeSearchTag"
-              >
-                <el-option
-                  v-for="tag in customerTag"
-                  :key="tag.value"
-                  :label="tag.label"
-                  :value="tag.value"
-                  :disabled="
+            <template v-if="sourceList.pagination.tags.length !== customerTag.length">
+              <el-select v-if="addTagSearchShow" v-model="addSearchTag" style="margin-top: 8px" @change="changeSearchTag">
+                <el-option v-for="tag in customerTag" :key="tag.value" :label="tag.label" :value="tag.value" :disabled="
                     judgeTagSelect(sourceList.pagination.tags, tag.value)
-                  "
-                />
+                  " />
               </el-select>
-              <el-tag
-                style="cursor: pointer"
-                type="info"
-                @click="addTagSearchShow = true"
-                v-else
-              >
+              <el-tag style="cursor: pointer" type="info" @click="addTagSearchShow = true" v-else>
                 +
               </el-tag>
             </template>
@@ -643,9 +345,7 @@
       </byForm>
       <template #footer>
         <el-button @click="cancelSearch()" size="large">取 消</el-button>
-        <el-button type="primary" @click="submitSearch()" size="large"
-          >确 定</el-button
-        >
+        <el-button type="primary" @click="submitSearch()" size="large">确 定</el-button>
       </template>
     </el-dialog>
   </div>
@@ -1616,11 +1316,11 @@ const moreSearch = () => {
     sourceList.value.pagination.tags = [];
   }
   addTagSearchShow.value = false;
-  copySearch.value = proxy.deepClone(sourceList.value.pagination);
+  // copySearch.value = proxy.deepClone(sourceList.value.pagination);
   openSearch.value = true;
 };
 const cancelSearch = () => {
-  sourceList.value.pagination = copySearch.value;
+  // sourceList.value.pagination = copySearch.value;
   openSearch.value = false;
 };
 const submitSearch = () => {

+ 90 - 390
src/views/customer/privatesea/index.vue

@@ -1,37 +1,16 @@
 <template>
   <div class="tenant">
     <div style="padding: 20px; background: #fff; margin-bottom: 20px">
-      <el-button type="primary" style="margin-left: 10px" @click="openModal()"
-        >添加客户</el-button
-      >
+      <el-button type="primary" style="margin-left: 10px" @click="openModal()">添加客户</el-button>
     </div>
 
-    <byTable
-      :source="sourceList.data"
-      :pagination="sourceList.pagination"
-      :config="config"
-      :loading="loading"
-      :statConfig="statConfig"
-      :selectConfig="selectConfig"
-      highlight-current-row
-      @moreSearch="moreSearch"
-      @get-list="getList"
-      ref="table"
-    >
+    <byTable :source="sourceList.data" :pagination="sourceList.pagination" :config="config" :loading="loading" :statConfig="statConfig"
+             :selectConfig="selectConfig" highlight-current-row @moreSearch="moreSearch" @get-list="getList" ref="table">
       <template #isTop="{ item }">
         <div>
-          <img
-            style="cursor: pointer; width: 20px; transform: translateY(5px)"
-            :src="'/img/isTop.png'"
-            @click="deleteTop(item)"
-            v-if="item.isTop === 1"
-          />
-          <img
-            style="cursor: pointer; width: 20px; transform: translateY(5px)"
-            :src="'/img/noTop.png'"
-            @click="addTop(item)"
-            v-else
-          />
+          <img style="cursor: pointer; width: 20px; transform: translateY(5px)" :src="'/img/isTop.png'" @click="deleteTop(item)"
+               v-if="item.isTop === 1" />
+          <img style="cursor: pointer; width: 20px; transform: translateY(5px)" :src="'/img/noTop.png'" @click="addTop(item)" v-else />
         </div>
       </template>
       <template #address="{ item }">
@@ -40,50 +19,25 @@
         <span v-if="item.cityName"> ,{{ item.cityName }}</span>
       </template>
       <template #name="{ item }">
-        <div
-          style="cursor: pointer; color: #409eff; word-break: break-all"
-          @click="handleClickName(item)"
-        >
+        <div style="cursor: pointer; color: #409eff; word-break: break-all" @click="handleClickName(item)">
           {{ item.name }}
         </div>
       </template>
       <template #tags="{ item }">
         <div style="width: 100%">
-          <el-tag
-            style="margin-right: 8px"
-            type="success"
-            v-for="(tag, index) in item.tag"
-            closable
-            :key="index"
-            @close="tagClose(tag, item)"
-          >
+          <el-tag style="margin-right: 8px" type="success" v-for="(tag, index) in item.tag" closable :key="index" @close="tagClose(tag, item)">
             {{ dictValueLabel(tag, customerTag) }}
           </el-tag>
           <template v-if="item.tag.length !== customerTag.length">
-            <el-select
-              v-if="item.addTagShow"
-              v-model="addTag"
-              style="width: 100%"
-              @change="
+            <el-select v-if="item.addTagShow" v-model="addTag" style="width: 100%" @change="
                 (val) => {
                   return changeTag(val, item);
                 }
-              "
-            >
-              <el-option
-                v-for="tag in customerTag"
-                :key="tag.value"
-                :label="tag.label"
-                :value="tag.value"
-                :disabled="judgeTagSelect(item.tag, tag.value)"
-              />
+              ">
+              <el-option v-for="tag in customerTag" :key="tag.value" :label="tag.label" :value="tag.value"
+                         :disabled="judgeTagSelect(item.tag, tag.value)" />
             </el-select>
-            <el-tag
-              style="cursor: pointer"
-              type="success"
-              @click="showSelect(item)"
-              v-else
-            >
+            <el-tag style="cursor: pointer" type="success" @click="showSelect(item)" v-else>
               +
             </el-tag>
           </template>
@@ -92,37 +46,24 @@
       <template #follow="{ item }">
         <div :class="'getWidth' + item.id" style="width: 100%">
           <div style="width: 100%; display: flex">
-            <template
-              v-if="
+            <template v-if="
                 item.customerFollowRecordsList &&
                 item.customerFollowRecordsList.length > 0
-              "
-            >
-              <div
-                :style="
+              ">
+              <div :style="
                   index > 2
                     ? 'line-height: 32px; margin-right: 8px; padding: 0 8px; background-color: #eeeeee; border-radius: 4px; cursor: pointer; display: none'
                     : 'line-height: 32px; margin-right: 8px; padding: 0 8px; background-color: #eeeeee; border-radius: 4px; cursor: pointer'
-                "
-                v-for="(record, index) in item.customerFollowRecordsList"
-                :key="record.id"
-              >
-                <el-popover
-                  placement="bottom"
-                  :width="300"
-                  trigger="hover"
-                  @show="recordShow(record)"
-                >
+                " v-for="(record, index) in item.customerFollowRecordsList" :key="record.id">
+                <el-popover placement="bottom" :width="300" trigger="hover" @show="recordShow(record)">
                   <template #reference>
                     <div>
                       <span v-if="record.date">{{
                         record.date.substr(0, 10)
                       }}</span>
-                      <el-icon
-                        style="margin-left: 8px; transform: translateY(2px)"
-                        @click="deleteFollow(record)"
-                        ><DeleteFilled
-                      /></el-icon>
+                      <el-icon style="margin-left: 8px; transform: translateY(2px)" @click="deleteFollow(record)">
+                        <DeleteFilled />
+                      </el-icon>
                     </div>
                   </template>
                   <template #default>
@@ -135,11 +76,7 @@
                         {{ dictValueLabel(record.createUser, userList) }}
                       </div>
                       <div v-if="record.type == '30'">
-                        <div
-                          style="word-wrap: break-word; margin: 8px 0"
-                          v-html="getStyle(record.content)"
-                          v-if="record.content"
-                        ></div>
+                        <div style="word-wrap: break-word; margin: 8px 0" v-html="getStyle(record.content)" v-if="record.content"></div>
                         <div v-else>跟进记录:</div>
                       </div>
                       <div v-else>
@@ -147,21 +84,11 @@
                           {{ getContent(record) }}
                         </div>
                       </div>
-                      <div
-                        style="margin: 8px 0; display: flex"
-                        v-if="record.fileList && record.fileList.length > 0"
-                      >
+                      <div style="margin: 8px 0; display: flex" v-if="record.fileList && record.fileList.length > 0">
                         <div style="width: 36px">附件:</div>
                         <div style="width: calc(100% - 36px)">
-                          <div
-                            v-for="(file, index) in record.fileList"
-                            :key="index"
-                          >
-                            <a
-                              style="color: #409eff; cursor: pointer"
-                              @click="openFile(file.fileUrl)"
-                              >{{ file.fileName }}</a
-                            >
+                          <div v-for="(file, index) in record.fileList" :key="index">
+                            <a style="color: #409eff; cursor: pointer" @click="openFile(file.fileUrl)">{{ file.fileName }}</a>
                           </div>
                         </div>
                       </div>
@@ -169,18 +96,14 @@
                   </template>
                 </el-popover>
               </div>
-              <div
-                style="
+              <div style="
                   line-height: 32px;
                   margin-right: 8px;
                   padding: 0 8px;
                   background-color: #eeeeee;
                   border-radius: 4px;
                   cursor: pointer;
-                "
-                @click="clickMore(item)"
-                v-if="item.customerFollowRecordsList.length >= 3"
-              >
+                " @click="clickMore(item)" v-if="item.customerFollowRecordsList.length >= 3">
                 更多
               </div>
             </template>
@@ -189,61 +112,28 @@
       </template>
     </byTable>
 
-    <el-dialog
-      :title="modalType == 'add' ? '新增' : '编辑'"
-      v-if="dialogVisible"
-      v-model="dialogVisible"
-      width="800"
-      v-loading="loadingOperation"
-    >
-      <byForm
-        :formConfig="formConfig"
-        :formOption="formOption"
-        v-model="formData.data"
-        :rules="rules"
-        ref="submit"
-      >
+    <el-dialog :title="modalType == 'add' ? '新增' : '编辑'" v-if="dialogVisible" v-model="dialogVisible" width="800" v-loading="loadingOperation">
+      <byForm :formConfig="formConfig" :formOption="formOption" v-model="formData.data" :rules="rules" ref="submit">
         <template #address>
           <el-row style="width: 100%">
             <el-col :span="8">
               <el-form-item prop="countryId">
-                <el-select
-                  v-model="formData.data.countryId"
-                  placeholder="国家"
-                  filterable
-                  @change="(val) => getCityData(val, '20', true)"
-                >
-                  <el-option
-                    v-for="item in countryData"
-                    :label="item.name"
-                    :value="item.id"
-                  >
+                <el-select v-model="formData.data.countryId" placeholder="国家" filterable @change="(val) => getCityData(val, '20', true)">
+                  <el-option v-for="item in countryData" :label="item.name" :value="item.id">
                   </el-option>
                 </el-select>
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item prop="provinceName">
-                <selectCity
-                  placeholder="省/洲"
-                  @change="(val) => getCityData(val, '30', true)"
-                  addressId="provinceId"
-                  addressName="provinceName"
-                  v-model="formData.data"
-                  :data="provinceData"
-                >
+                <selectCity placeholder="省/洲" @change="(val) => getCityData(val, '30', true)" addressId="provinceId" addressName="provinceName"
+                            v-model="formData.data" :data="provinceData">
                 </selectCity>
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item prop="cityName">
-                <selectCity
-                  placeholder="城市"
-                  addressId="cityId"
-                  addressName="cityName"
-                  v-model="formData.data"
-                  :data="cityData"
-                ></selectCity>
+                <selectCity placeholder="城市" addressId="cityId" addressName="cityName" v-model="formData.data" :data="cityData"></selectCity>
               </el-form-item>
             </el-col>
           </el-row>
@@ -259,18 +149,11 @@
         <template #person>
           <div style="width: 100%">
             <el-button type="primary" @click="clickAddPerson">添 加</el-button>
-            <el-table
-              :data="formData.data.customerUserList"
-              style="width: 100%; margin-top: 16px"
-            >
+            <el-table :data="formData.data.customerUserList" style="width: 100%; margin-top: 16px">
               <el-table-column label="联系人" width="160">
                 <template #default="{ row, $index }">
                   <div style="width: 100%">
-                    <el-form-item
-                      :prop="'customerUserList.' + $index + '.name'"
-                      :rules="rules.name2"
-                      :inline-message="true"
-                    >
+                    <el-form-item :prop="'customerUserList.' + $index + '.name'" :rules="rules.name2" :inline-message="true">
                       <el-input v-model="row.name" placeholder="请输入联系人" />
                     </el-form-item>
                   </div>
@@ -279,35 +162,16 @@
               <el-table-column label="电子邮箱">
                 <template #default="{ row, $index }">
                   <div style="width: 100%">
-                    <el-form-item
-                      :prop="'customerUserList.' + $index + '.email'"
-                      :rules="rules.email"
-                      :inline-message="true"
-                    >
-                      <el-input
-                        v-model="row.email"
-                        placeholder="请输入电子邮箱"
-                      />
+                    <el-form-item :prop="'customerUserList.' + $index + '.email'" :rules="rules.email" :inline-message="true">
+                      <el-input v-model="row.email" placeholder="请输入电子邮箱" />
                     </el-form-item>
                   </div>
                 </template>
               </el-table-column>
-              <el-table-column
-                align="center"
-                label="操作"
-                width="120"
-                fixed="right"
-              >
+              <el-table-column align="center" label="操作" width="120" fixed="right">
                 <template #default="{ row, $index }">
-                  <el-button
-                    type="primary"
-                    link
-                    @click="clickInformationMore(row, $index)"
-                    >更多</el-button
-                  >
-                  <el-button type="primary" link @click="clickDelete($index)"
-                    >删除</el-button
-                  >
+                  <el-button type="primary" link @click="clickInformationMore(row, $index)">更多</el-button>
+                  <el-button type="primary" link @click="clickDelete($index)">删除</el-button>
                 </template>
               </el-table-column>
             </el-table>
@@ -316,28 +180,12 @@
       </byForm>
       <template #footer>
         <el-button @click="dialogVisible = false" size="large">取 消</el-button>
-        <el-button
-          type="primary"
-          @click="submitForm()"
-          size="large"
-          :loading="submitLoading"
-          >确 定</el-button
-        >
+        <el-button type="primary" @click="submitForm()" size="large" :loading="submitLoading">确 定</el-button>
       </template>
     </el-dialog>
 
-    <el-dialog
-      title="更多联系方式"
-      v-if="openPerson"
-      v-model="openPerson"
-      width="700"
-    >
-      <el-form
-        :label-position="'top'"
-        :model="formPerson.data"
-        :rules="rulesPerson"
-        ref="person"
-      >
+    <el-dialog title="更多联系方式" v-if="openPerson" v-model="openPerson" width="700">
+      <el-form :label-position="'top'" :model="formPerson.data" :rules="rulesPerson" ref="person">
         <el-form-item label="联系人" prop="name">
           <el-input v-model="formPerson.data.name" />
         </el-form-item>
@@ -346,32 +194,14 @@
         </el-form-item>
         <el-form-item label="更多联系方式">
           <div style="width: 100%">
-            <el-button type="primary" @click="clickAddMoreInformation"
-              >添 加</el-button
-            >
-            <el-table
-              :data="formPerson.data.contact"
-              style="width: 100%; margin-top: 16px"
-            >
+            <el-button type="primary" @click="clickAddMoreInformation">添 加</el-button>
+            <el-table :data="formPerson.data.contact" style="width: 100%; margin-top: 16px">
               <el-table-column label="类型" width="180">
                 <template #default="{ row, $index }">
                   <div style="width: 100%">
-                    <el-form-item
-                      :prop="'contact.' + $index + '.type'"
-                      :rules="rulesPerson.type"
-                      :inline-message="true"
-                    >
-                      <el-select
-                        v-model="row.type"
-                        placeholder="请选择类型"
-                        style="width: 100%"
-                      >
-                        <el-option
-                          v-for="item in contactType"
-                          :key="item.value"
-                          :label="item.label"
-                          :value="item.value"
-                        />
+                    <el-form-item :prop="'contact.' + $index + '.type'" :rules="rulesPerson.type" :inline-message="true">
+                      <el-select v-model="row.type" placeholder="请选择类型" style="width: 100%">
+                        <el-option v-for="item in contactType" :key="item.value" :label="item.label" :value="item.value" />
                       </el-select>
                     </el-form-item>
                   </div>
@@ -380,32 +210,15 @@
               <el-table-column label="联系号码">
                 <template #default="{ row, $index }">
                   <div style="width: 100%">
-                    <el-form-item
-                      :prop="'contact.' + $index + '.contactNo'"
-                      :rules="rulesPerson.contactNo"
-                      :inline-message="true"
-                    >
-                      <el-input
-                        v-model="row.contactNo"
-                        placeholder="请输入联系号码"
-                      />
+                    <el-form-item :prop="'contact.' + $index + '.contactNo'" :rules="rulesPerson.contactNo" :inline-message="true">
+                      <el-input v-model="row.contactNo" placeholder="请输入联系号码" />
                     </el-form-item>
                   </div>
                 </template>
               </el-table-column>
-              <el-table-column
-                align="center"
-                label="操作"
-                width="120"
-                fixed="right"
-              >
+              <el-table-column align="center" label="操作" width="120" fixed="right">
                 <template #default="{ $index }">
-                  <el-button
-                    type="primary"
-                    link
-                    @click="clickInformationDelete($index)"
-                    >删除</el-button
-                  >
+                  <el-button type="primary" link @click="clickInformationDelete($index)">删除</el-button>
                 </template>
               </el-table-column>
             </el-table>
@@ -414,36 +227,16 @@
       </el-form>
       <template #footer>
         <el-button @click="openPerson = false" size="large">取 消</el-button>
-        <el-button type="primary" @click="submitPerson()" size="large"
-          >确 定</el-button
-        >
+        <el-button type="primary" @click="submitPerson()" size="large">确 定</el-button>
       </template>
     </el-dialog>
 
-    <el-dialog
-      title="添加跟进记录"
-      v-if="openFollow"
-      v-model="openFollow"
-      width="500"
-      destroy-on-close
-    >
-      <byForm
-        :formConfig="formConfigAFollow"
-        :formOption="formOption"
-        v-model="formFollow.data"
-        :rules="rulesFollow"
-        ref="follow"
-      >
+    <el-dialog title="添加跟进记录" v-if="openFollow" v-model="openFollow" width="500" destroy-on-close>
+      <byForm :formConfig="formConfigAFollow" :formOption="formOption" v-model="formFollow.data" :rules="rulesFollow" ref="follow">
         <template #fileSlot>
           <div style="width: 100%">
-            <el-upload
-              v-model:fileList="fileList"
-              action="https://winfaster.obs.cn-south-1.myhuaweicloud.com"
-              :data="uploadData"
-              multiple
-              :before-upload="uploadFile"
-              :on-preview="onPreviewFile"
-            >
+            <el-upload v-model:fileList="fileList" action="https://winfaster.obs.cn-south-1.myhuaweicloud.com" :data="uploadData" multiple
+                       :before-upload="uploadFile" :on-preview="onPreviewFile">
               <el-button type="primary">文件上传</el-button>
             </el-upload>
           </div>
@@ -451,57 +244,32 @@
       </byForm>
       <template #footer>
         <el-button @click="openFollow = false" size="large">取 消</el-button>
-        <el-button type="primary" @click="submitFollow()" size="large"
-          >确 定</el-button
-        >
+        <el-button type="primary" @click="submitFollow()" size="large">确 定</el-button>
       </template>
     </el-dialog>
 
-    <el-dialog
-      title="跟进记录"
-      v-if="openRecordMore"
-      v-model="openRecordMore"
-      width="800"
-      destroy-on-close
-    >
+    <el-dialog title="跟进记录" v-if="openRecordMore" v-model="openRecordMore" width="800" destroy-on-close>
       <div>
         <div style="padding: 8px 0">
-          <el-button type="primary" @click="clickFollowUp(rowData)" plain
-            >添加跟进记录</el-button
-          >
+          <el-button type="primary" @click="clickFollowUp(rowData)" plain>添加跟进记录</el-button>
         </div>
         <div style="padding-top: 16px">
-          <div
-            v-infinite-scroll="infiniteScroll"
-            class="infinite-scroll"
-            :infinite-scroll-disabled="judgeTotal()"
-          >
+          <div v-infinite-scroll="infiniteScroll" class="infinite-scroll" :infinite-scroll-disabled="judgeTotal()">
             <el-timeline>
-              <el-timeline-item
-                v-for="(record, index) in recordList"
-                :key="index"
-                :timestamp="record.date"
-                hide-timestamp
-              >
+              <el-timeline-item v-for="(record, index) in recordList" :key="index" :timestamp="record.date" hide-timestamp>
                 <div>
-                  <div
-                    style="
+                  <div style="
                       padding: 0 0 8px 0;
                       display: flex;
                       justify-content: space-between;
-                    "
-                  >
+                    ">
                     <span>{{
                       dictValueLabel(record.createUser, userList)
                     }}</span>
                     <span>{{ record.date }}</span>
                   </div>
                   <div v-if="record.type == '30'">
-                    <div
-                      style="word-wrap: break-word; margin: 8px 0"
-                      v-html="getStyle(record.content)"
-                      v-if="record.content"
-                    ></div>
+                    <div style="word-wrap: break-word; margin: 8px 0" v-html="getStyle(record.content)" v-if="record.content"></div>
                     <div v-else>跟进记录:</div>
                   </div>
                   <div v-else>
@@ -509,21 +277,11 @@
                       {{ getContent(record) }}
                     </div>
                   </div>
-                  <div
-                    style="margin: 8px 0; display: flex"
-                    v-if="record.fileList && record.fileList.length > 0"
-                  >
+                  <div style="margin: 8px 0; display: flex" v-if="record.fileList && record.fileList.length > 0">
                     <div style="width: 36px">附件:</div>
                     <div style="width: calc(100% - 36px)">
-                      <div
-                        v-for="(file, index) in record.fileList"
-                        :key="index"
-                      >
-                        <a
-                          style="color: #409eff; cursor: pointer"
-                          @click="openFile(file.fileUrl)"
-                          >{{ file.fileName }}</a
-                        >
+                      <div v-for="(file, index) in record.fileList" :key="index">
+                        <a style="color: #409eff; cursor: pointer" @click="openFile(file.fileUrl)">{{ file.fileName }}</a>
                       </div>
                     </div>
                   </div>
@@ -534,107 +292,51 @@
         </div>
       </div>
       <template #footer>
-        <el-button @click="openRecordMore = false" size="large"
-          >关 闭</el-button
-        >
+        <el-button @click="openRecordMore = false" size="large">关 闭</el-button>
       </template>
     </el-dialog>
 
-    <el-dialog
-      title="高级检索"
-      v-if="openSearch"
-      v-model="openSearch"
-      width="600"
-      :before-close="cancelSearch"
-    >
-      <byForm
-        :formConfig="formSearchConfig"
-        :formOption="formOption"
-        v-model="sourceList.pagination"
-      >
+    <el-dialog title="高级检索" v-if="openSearch" v-model="openSearch" width="600" :before-close="cancelSearch">
+      <byForm :formConfig="formSearchConfig" :formOption="formOption" v-model="sourceList.pagination">
         <template #address>
           <el-row style="width: 100%">
             <el-col :span="8">
               <el-form-item prop="countryId">
-                <el-select
-                  v-model="sourceList.pagination.countryId"
-                  placeholder="国家"
-                  clearable
-                  filterable
-                  @change="(val) => getCitySearchData(val, '20', true)"
-                >
-                  <el-option
-                    v-for="item in countrySearchData"
-                    :label="item.name"
-                    :value="item.id"
-                  >
+                <el-select v-model="sourceList.pagination.countryId" placeholder="国家" clearable filterable
+                           @change="(val) => getCitySearchData(val, '20', true)">
+                  <el-option v-for="item in countrySearchData" :label="item.name" :value="item.id">
                   </el-option>
                 </el-select>
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item prop="provinceName">
-                <selectCity
-                  placeholder="省/洲"
-                  @change="(val) => getCitySearchData(val, '30', true)"
-                  addressId="provinceId"
-                  addressName="provinceName"
-                  v-model="sourceList.pagination"
-                  :data="provinceSearchData"
-                >
+                <selectCity placeholder="省/洲" @change="(val) => getCitySearchData(val, '30', true)" addressId="provinceId" addressName="provinceName"
+                            v-model="sourceList.pagination" :data="provinceSearchData">
                 </selectCity>
               </el-form-item>
             </el-col>
             <el-col :span="8">
               <el-form-item prop="cityName">
-                <selectCity
-                  placeholder="城市"
-                  addressId="cityId"
-                  addressName="cityName"
-                  v-model="sourceList.pagination"
-                  :data="citySearchData"
-                ></selectCity>
+                <selectCity placeholder="城市" addressId="cityId" addressName="cityName" v-model="sourceList.pagination" :data="citySearchData">
+                </selectCity>
               </el-form-item>
             </el-col>
           </el-row>
         </template>
         <template #tags>
           <div style="width: 100%">
-            <el-tag
-              style="margin-right: 8px"
-              type="info"
-              v-for="(tag, index) in sourceList.pagination.tags"
-              closable
-              :key="index"
-              @close="tagSearchClose(tag)"
-            >
+            <el-tag style="margin-right: 8px" type="info" v-for="(tag, index) in sourceList.pagination.tags" closable :key="index"
+                    @close="tagSearchClose(tag)">
               {{ dictValueLabel(tag, customerTag) }}
             </el-tag>
-            <template
-              v-if="sourceList.pagination.tags.length !== customerTag.length"
-            >
-              <el-select
-                v-if="addTagSearchShow"
-                v-model="addSearchTag"
-                style="margin-top: 8px"
-                @change="changeSearchTag"
-              >
-                <el-option
-                  v-for="tag in customerTag"
-                  :key="tag.value"
-                  :label="tag.label"
-                  :value="tag.value"
-                  :disabled="
+            <template v-if="sourceList.pagination.tags.length !== customerTag.length">
+              <el-select v-if="addTagSearchShow" v-model="addSearchTag" style="margin-top: 8px" @change="changeSearchTag">
+                <el-option v-for="tag in customerTag" :key="tag.value" :label="tag.label" :value="tag.value" :disabled="
                     judgeTagSelect(sourceList.pagination.tags, tag.value)
-                  "
-                />
+                  " />
               </el-select>
-              <el-tag
-                style="cursor: pointer"
-                type="info"
-                @click="addTagSearchShow = true"
-                v-else
-              >
+              <el-tag style="cursor: pointer" type="info" @click="addTagSearchShow = true" v-else>
                 +
               </el-tag>
             </template>
@@ -643,9 +345,7 @@
       </byForm>
       <template #footer>
         <el-button @click="cancelSearch()" size="large">取 消</el-button>
-        <el-button type="primary" @click="submitSearch()" size="large"
-          >确 定</el-button
-        >
+        <el-button type="primary" @click="submitSearch()" size="large">确 定</el-button>
       </template>
     </el-dialog>
   </div>
@@ -1609,7 +1309,7 @@ const formSearchConfig = computed(() => {
 });
 const addSearchTag = ref("");
 const addTagSearchShow = ref(false);
-let copySearch = ref({});
+// let copySearch = ref({});
 const moreSearch = () => {
   if (sourceList.value.pagination.tag) {
     sourceList.value.pagination.tags =
@@ -1618,11 +1318,11 @@ const moreSearch = () => {
     sourceList.value.pagination.tags = [];
   }
   addTagSearchShow.value = false;
-  copySearch.value = proxy.deepClone(sourceList.value.pagination);
+  // copySearch.value = proxy.deepClone(sourceList.value.pagination);
   openSearch.value = true;
 };
 const cancelSearch = () => {
-  sourceList.value.pagination = copySearch.value;
+  // sourceList.value.pagination = copySearch.value;
   openSearch.value = false;
 };
 const submitSearch = () => {

+ 2 - 0
src/views/process/processApproval/index.vue

@@ -747,6 +747,8 @@ const getFlowName = () => {
     display: flex;
     flex-direction: column;
     .top {
+      /* 宽度和高度 */
+
       flex: 1;
       overflow-y: auto;
       background: #fff;