Prechádzať zdrojové kódy

小东西以及样式修改

cz 1 rok pred
rodič
commit
35d16a4068

+ 2 - 2
src/components/byForm/index.vue

@@ -14,8 +14,8 @@
         " :class="i.isHide ? 'dn' : ''">
           <el-input v-if="i.type == 'input'" v-model="formData[i.prop]" :placeholder="i.placeholder || $t('common.pleaseEnter')"
                     @input="(e) => commonsEmit(e, i)" @change="(e) => commonsEmitChange(e, i)" :type="i.itemType ? i.itemType : 'text'"
-                    :disabled="i.disabled ? i.disabled : false" :max="i.max" :min="i.min" :maxlength="i.maxlength"
-                    :readonly="i.readonly ? i.readonly : false" :style="i.style" />
+                    :disabled="i.disabled ? i.disabled : false" :rows="i.itemType=='textarea'?i.rows:''" :max="i.max" :min="i.min"
+                    :maxlength="i.maxlength" :readonly="i.readonly ? i.readonly : false" :style="i.style" />
           <el-input v-if="i.type == 'selectInput'" v-model="formData[i.prop]" :placeholder="i.placeholder || $t('common.pleaseEnter')"
                     @input="(e) => commonsEmit(e, i)" :type="i.itemType ? i.itemType : 'text'" :disabled="i.disabled ? i.disabled : false"
                     :max="i.max" :min="i.min" :maxlength="i.maxlength" :readonly="i.readonly ? i.readonly : false">

+ 75 - 190
src/components/headerBar/header-bar.vue

@@ -3,97 +3,49 @@
     <header>
       <ul class="nav">
         <!-- <div class="logo">ByteSailing</div> -->
-        <div
-          class="logo"
-          style="display: flex; align-items: center; justify-content: center"
-        >
+        <div class="logo" style="display: flex; align-items: center; justify-content: center">
           <img v-if="!logoUrl" :src="'/img/logo2.png'" />
-          <el-image
-            v-else
-            style="width: 120px; height: 30px"
-            :src="logoUrl"
-            fit="scale-down"
-          />
+          <el-image v-else style="width: 120px; height: 30px" :src="logoUrl" fit="scale-down" />
         </div>
-        <li
-          class="header-bar-hover-warp nav-li"
-          :class="isChildMenu ? 'active' : ''"
-        >
+        <li class="header-bar-hover-warp nav-li" :class="isChildMenu ? 'active' : ''">
           <div @click.stop="isChildMenu = !isChildMenu" class="menu-modal">
-            <i
-              class="iconfont icon-icomx_gongndh"
-              style="margin: 0 5px 0 0"
-            ></i>
+            <i class="iconfont icon-icomx_gongndh" style="margin: 0 5px 0 0"></i>
             {{ $t("header.functionGuide") }}
-            <i
-              class="iconfont icon-iconm_xialan1"
-              style="margin: 0 0 0 3px"
-            ></i>
+            <i class="iconfont icon-iconm_xialan1" style="margin: 0 0 0 3px"></i>
           </div>
         </li>
         <div class="auto-list">
-          <li
-            class="nav-li"
-            @click="commonsBannerToRouter(i)"
-            v-for="(i, index) in commonsRouterList"
-            v-show="index < autoListChidrenNum - 1"
-            :key="i.id"
-          >
+          <li class="nav-li" @click="commonsBannerToRouter(i)" v-for="(i, index) in commonsRouterList" v-show="index < autoListChidrenNum - 1"
+              :key="i.id">
             <span>{{ i.menuName }}</span>
           </li>
-          <li
-            class="nav-li more-box"
-            v-show="commonsRouterList.length > autoListChidrenNum - 1"
-          >
+          <li class="nav-li more-box" v-show="commonsRouterList.length > autoListChidrenNum - 1">
             {{ $t("header.more") }}
             <i class="iconfont icon-iconm_xialan1"></i>
             <ul class="more-list">
-              <li
-                v-for="(i, index) in commonsRouterList"
-                v-show="index >= autoListChidrenNum - 1"
-                :key="i.id"
-              >
+              <li v-for="(i, index) in commonsRouterList" v-show="index >= autoListChidrenNum - 1" :key="i.id">
                 <span @click="commonsBannerToRouter(i)">{{ i.menuName }}</span>
               </li>
             </ul>
           </li>
         </div>
-        <div
-          class="header-bar-warp"
-          v-if="isChildMenu"
-          @click.stop="isChildMenu = false"
-        >
+        <div class="header-bar-warp" v-if="isChildMenu" @click.stop="isChildMenu = false">
           <div class="header-bar-hover" @click.stop>
             <div class="header-bar-hover-content">
               <div class="left-banner">
                 <!-- :style="leftBanerType == 2 ? 'color:#0084ff' : ''" -->
                 <div class="first-order" @click="leftBanerType = 2">
-                  <i
-                    class="iconfont icon-iconm_changycd"
-                    style="position: relative; top: -1px"
-                  ></i>
+                  <i class="iconfont icon-iconm_changycd" style="position: relative; top: -1px"></i>
                   {{ $t("header.commonFunctions") }}
                 </div>
                 <div class="first-order">
-                  <i
-                    class="iconfont icon-iconm_gongncd"
-                    style="position: relative; top: -1px"
-                  ></i>
+                  <i class="iconfont icon-iconm_gongncd" style="position: relative; top: -1px"></i>
                   {{ $t("header.functionMenu") }}
                 </div>
                 <ul>
-                  <li
-                    :class="menuName == i.menuName ? 'active' : ''"
-                    @click="openLeftBaner(i, index)"
-                    v-for="(i, index) in sidebarRoutersCopy"
-                    :key="i.name"
-                    v-show="i.type == 1 && i.status == '0'"
-                  >
-                    <i
-                      :class="'iconfont icon-' + i.icon"
-                      style="position: relative; top: -1px"
-                    ></i
-                    >{{ i.menuName }}
+                  <li :class="menuName == i.menuName ? 'active' : ''" @click="openLeftBaner(i, index)" v-for="(i, index) in sidebarRoutersCopy"
+                      :key="i.name" v-show="i.type == 1 && i.status == '0'">
+                    <i :class="'iconfont icon-' + i.icon" style="position: relative; top: -1px"></i>{{ i.menuName }}
                   </li>
                 </ul>
                 <!-- <div class="first-order">
@@ -120,34 +72,18 @@
 								</ul> -->
                 <ul class="second-level">
                   <div v-for="(i, index) in activeLeftData" :key="index">
-                    <li
-                      v-if="i.isNone"
-                      class="menu-ul"
-                      style="cursor: auto"
-                    ></li>
+                    <li v-if="i.isNone" class="menu-ul" style="cursor: auto"></li>
                     <li class="menu-title" v-else-if="i.isTitle">
-                      <a
-                        v-if="i.icon && i.icon !== '#'"
-                        :class="'iconfont icon-' + i.icon"
-                        style="margin-right: 4px"
-                      ></a
-                      ><span>{{ i.menuName }}</span>
+                      <a v-if="i.icon && i.icon !== '#'" :class="'iconfont icon-' + i.icon"
+                         style="margin-right: 4px"></a><span>{{ i.menuName }}</span>
                     </li>
-                    <li
-                      v-else
-                      class="menu-ul"
-                      @click="commonsBannerToRouter(i)"
-                      style="cursor: pointer; display: flex"
-                    >
-                      <a
-                        :class="'iconfont icon-' + i.icon"
-                        style="
+                    <li v-else class="menu-ul" @click="commonsBannerToRouter(i)" style="cursor: pointer; display: flex">
+                      <a :class="'iconfont icon-' + i.icon" style="
                           margin-right: 4px;
                           width: 20px;
                           min-height: 20px;
                           display: block;
-                        "
-                      ></a>
+                        "></a>
                       <span>{{ i.menuName }}</span>
                     </li>
                   </div>
@@ -159,28 +95,16 @@
                 </div>
                 <div class="commons-warp">
                   <div>
-                    <div
-                      class="header-button-box cp"
-                      v-for="(i, index) in commonsRouterList"
-                      :key="i.name"
-                      @click="commonsBannerToRouter(i)"
-                    >
+                    <div class="header-button-box cp" v-for="(i, index) in commonsRouterList" :key="i.name" @click="commonsBannerToRouter(i)">
                       <span>{{ i.menuName }}</span>
-                      <div
-                        class="right-icon"
-                        @click.stop="deleteCommonsRouter(i, index)"
-                      >
+                      <div class="right-icon" @click.stop="deleteCommonsRouter(i, index)">
                         <!-- <el-icon color="#46A6FF"><CirclePlus /></el-icon> -->
                         <el-icon color="#BBBBBB" v-show="isEidtType">
                           <Close />
                         </el-icon>
                       </div>
                     </div>
-                    <div
-                      class="header-add-button-box"
-                      v-if="!isEidtType"
-                      @click="isEidtType = true"
-                    >
+                    <div class="header-add-button-box" v-if="!isEidtType" @click="isEidtType = true">
                       <el-icon color="#46A6FF">
                         <CirclePlus />
                       </el-icon>
@@ -192,32 +116,16 @@
                   {{ $t("header.toAdd") }}
                 </div>
                 <div class="all-menu-warp" v-if="isEidtType">
-                  <div
-                    v-for="(i, index) in sidebarRoutersCopy"
-                    :key="i.name"
-                    v-show="i.type === 1"
-                  >
-                    <div
-                      class="all-menu-title"
-                      v-for="(j, jindex) in i.children"
-                      :key="j.name"
-                    >
+                  <div v-for="(i, index) in sidebarRoutersCopy" :key="i.name" v-show="i.type === 1">
+                    <div class="all-menu-title" v-for="(j, jindex) in i.children" :key="j.name">
                       <div class="title">
                         {{ j.menuName }}
                       </div>
                       <div class="all-menu-lists">
-                        <div
-                          class="header-button-box"
-                          v-for="(n, nindex) in j.children"
-                          v-show="n.visible == '0'"
-                          :key="n.name"
-                        >
+                        <div class="header-button-box" v-for="(n, nindex) in j.children" v-show="n.visible == '0'" :key="n.name">
                           <span>{{ n.menuName }}</span>
 
-                          <div
-                            class="right-icon"
-                            @click="addCommonsRouter(index, jindex, nindex, n)"
-                          >
+                          <div class="right-icon" @click="addCommonsRouter(index, jindex, nindex, n)">
                             <el-icon color="#46A6FF">
                               <CirclePlus />
                             </el-icon>
@@ -228,74 +136,55 @@
                   </div>
                 </div>
                 <div class="btn-warp" v-if="isEidtType">
-                  <el-button type="" @click="isEidtType = false"
-                    >取消</el-button
-                  >
-                  <el-button type="primary" @click="userMenuEdit"
-                    >保存</el-button
-                  >
+                  <el-button type="" @click="isEidtType = false">取消</el-button>
+                  <el-button type="primary" @click="userMenuEdit">保存</el-button>
                 </div>
               </div>
             </div>
           </div>
         </div>
       </ul>
-        <div
-            class="jdTokenStatus"
-            style="display: flex; align-items: center; justify-content: center"
-        >
+      <div class="jdTokenStatus" style="display: flex; align-items: center; justify-content: center">
 
-          <div v-if="tokenStatus" style="width: 40px;text-align: center; cursor: pointer;">
-            <img :src="'/img/jd-on.jpg'" style="width: 25px;display: block;margin: 0 auto"/>
-            <span style="color: white;font-size: 12px;display: block;">在线</span>
-          </div>
-          <div v-if="!tokenStatus" style="width: 40px;text-align: center; cursor: pointer;"  @click="changeJdLoginModal">
-            <img :src="'/img/jd-off.jpg'" style="width: 25px;display: block;margin: 0 auto"/>
-            <span style="color: white;font-size: 12px;display: block;">离线</span>
-          </div>
+        <div v-if="tokenStatus" style="width: 40px;text-align: center; cursor: pointer;">
+          <img :src="'/img/jd-on.jpg'" style="width: 25px;display: block;margin: 0 auto" />
+          <span style="color: white;font-size: 12px;display: block;">在线</span>
+        </div>
+        <div v-if="!tokenStatus" style="width: 40px;text-align: center; cursor: pointer;" @click="changeJdLoginModal">
+          <img :src="'/img/jd-off.jpg'" style="width: 25px;display: block;margin: 0 auto" />
+          <span style="color: white;font-size: 12px;display: block;">离线</span>
         </div>
+      </div>
       <jdStatus v-model="jdLoginModal" :iframeUrl="jdLoginUrl"></jdStatus>
-        <div class="fr">
-          <!-- :value="12" -->
-          <el-badge
-            :value="badgeNum"
-            style="cursor: pointer"
-            class="badge"
-            @click="noticeTableModal = true"
-          >
-            <el-icon :size="20">
-              <BellFilled />
-            </el-icon>
-          </el-badge>
-          <notice
-            v-model="noticeTableModal"
-            @changeNum="(e) => (badgeNum = e)"
-          ></notice>
-          <el-dropdown
-            @command="handleCommand"
-            class="right-menu-item hover-effect"
-            trigger="click"
-          >
-            <div class="dropdown-box">
-              {{ userData }}
-            </div>
-            <template #dropdown>
-              <el-dropdown-menu>
-                <router-link to="/user/profile">
-                  <el-dropdown-item>{{
+      <div class="fr">
+        <!-- :value="12" -->
+        <el-badge :value="badgeNum" style="cursor: pointer" class="badge" @click="noticeTableModal = true">
+          <el-icon :size="20">
+            <BellFilled />
+          </el-icon>
+        </el-badge>
+        <notice v-model="noticeTableModal" @changeNum="(e) => (badgeNum = e)"></notice>
+        <el-dropdown @command="handleCommand" class="right-menu-item hover-effect" trigger="click">
+          <div class="dropdown-box">
+            {{ userData }}
+          </div>
+          <template #dropdown>
+            <el-dropdown-menu>
+              <router-link to="/user/profile">
+                <el-dropdown-item>{{
                     $t("header.personalCenter")
                   }}</el-dropdown-item>
-                </router-link>
-                <el-dropdown-item command="setLayout">
-                  <span>{{ $t("header.layoutSettings") }}</span>
-                </el-dropdown-item>
-                <el-dropdown-item divided command="logout">
-                  <span>{{ $t("header.logout") }}</span>
-                </el-dropdown-item>
-              </el-dropdown-menu>
-            </template>
-          </el-dropdown>
-        </div>
+              </router-link>
+              <el-dropdown-item command="setLayout">
+                <span>{{ $t("header.layoutSettings") }}</span>
+              </el-dropdown-item>
+              <el-dropdown-item divided command="logout">
+                <span>{{ $t("header.logout") }}</span>
+              </el-dropdown-item>
+            </el-dropdown-menu>
+          </template>
+        </el-dropdown>
+      </div>
     </header>
   </div>
 </template>
@@ -307,7 +196,7 @@ import useUserStore from "@/store/modules/user";
 import "@/components/headerBar/header.scss";
 import notice from "@/components/notice/index";
 import jdStatus from "@/components/jdStatus/index";
-import {getToken} from "@/utils/auth";
+import { getToken } from "@/utils/auth";
 const router = useRouter();
 const userStore = useUserStore();
 const { proxy } = getCurrentInstance();
@@ -324,20 +213,18 @@ const activeLeftData = ref({});
 let tokenStatus = ref(false);
 
 const jdLoginModal = ref(false);
-const jdLoginUrl = ref('');
-
+const jdLoginUrl = ref("");
 
 const changeJdLoginModal = () => {
   getJd2LoginUrl();
   jdLoginModal.value = true;
 };
 
-
 const getJd2LoginUrl = async () => {
   proxy.get("/open/jd/build2LoginUrl").then((res) => {
     jdLoginUrl.value = res.data;
   });
-}
+};
 
 const openLeftBaner = (i, index) => {
   leftBanerType.value = 1;
@@ -501,17 +388,16 @@ function calcAutoListChidren() {
   autoListChidrenNum.value = Math.floor((getBrowserWidth() - 616) / 120);
 }
 
-
 const intervalId = ref(null);
 const scoket = ref(null);
 const socketInit = () => {
   window.ws = new WebSocket(
-      "ws://" +
+    "ws://" +
       import.meta.env.VITE_APP_IP +
       import.meta.env.VITE_APP_WS_API +
       "/webStock/" +
       getToken()
-      // 'ws://192.168.1.97:8300/webStock/' + window.localStorage.getItem('token')
+    // 'ws://192.168.1.97:8300/webStock/' + window.localStorage.getItem('token')
   );
   //申请一个WebSocket对象,参数是服务端地址,同http协议使用http://开头一样,WebSocket协议的url使用ws://开头,另外安全的WebSocket协议使用wss://开头
   window.ws.onopen = function () {
@@ -527,7 +413,7 @@ const socketInit = () => {
     //当客户端收到服务端发来的消息时,触发onmessage事件,参数e.data包含server传递过来的数据
     //在data.value前面插入
     let jsonObj = JSON.parse(e.data);
-    if(jsonObj.cmd == "jdStatus"){
+    if (jsonObj.cmd == "jdStatus") {
       console.log(jsonObj.status);
       tokenStatus.value = jsonObj.status;
     }
@@ -535,16 +421,15 @@ const socketInit = () => {
   window.ws.onclose = function (e) {
     //当客户端收到服务端发送的关闭连接请求时,触发onclose事件
     console.log("close");
-    if(intervalId.value) clearInterval(intervalId.value);
+    if (intervalId.value) clearInterval(intervalId.value);
   };
   window.ws.onerror = function (e) {
     //如果出现连接、处理、接收、发送数据失败的时候触发onerror事件
     console.log("error");
-    if(intervalId.value) clearInterval(intervalId.value);
+    if (intervalId.value) clearInterval(intervalId.value);
   };
 };
 
-
 // 定义要执行的函数
 function sendSocketMsg() {
   let jsonData = {
@@ -552,7 +437,7 @@ function sendSocketMsg() {
     content: "heartbeat",
   };
   scoket.value.send(JSON.stringify(jsonData));
-  console.log('Timer executed!');
+  console.log("Timer executed!");
 }
 
 //一维数组转tree

+ 14 - 23
src/components/jdStatus/index.vue

@@ -1,10 +1,6 @@
 <template>
   <div class="commons-notice">
-    <div
-        class="table-warp"
-        :class="modelValue ? 'table-warp-open' : ''"
-        @click.stop="closeNoticeTableModal"
-    >
+    <div class="table-warp" :class="modelValue ? 'table-warp-open' : ''" @click.stop="closeNoticeTableModal">
       <div class="table" @click.stop v-loading="loading">
         <iframe id="myIframe" :src="iframeUrl" width="300" height="200"></iframe>
       </div>
@@ -12,13 +8,12 @@
   </div>
 </template>
 <script setup>
-
-import {watch} from "@vue/runtime-core";
+import { watch } from "@vue/runtime-core";
 import { ElMessage, ElMessageBox } from "element-plus";
 
 const { proxy } = getCurrentInstance();
-const iframeSrc = ref('');
-const { modelValue, iframeUrl } = defineProps(['modelValue', 'iframeUrl']);
+const iframeSrc = ref("");
+const { modelValue, iframeUrl } = defineProps(["modelValue", "iframeUrl"]);
 
 const emit = defineEmits();
 
@@ -31,26 +26,23 @@ let index = ref(0);
 let data = ref([]);
 const loading = ref(false);
 
-
 // 监听来自子页面的消息
-window.addEventListener('message', function(event) {
-  if (event.data === 'closeIframe') {
+window.addEventListener("message", function (event) {
+  if (event.data === "closeIframe") {
     closeIframe();
-  }else if (event.data.indexOf('alertAndCloseIframe')>=0){
-    alertAndCloseIframe(decodeURIComponent(event.data.split('#')[1]));
+  } else if (event.data.indexOf("alertAndCloseIframe") >= 0) {
+    alertAndCloseIframe(decodeURIComponent(event.data.split("#")[1]));
   }
 });
 
-
 onMounted(() => {
-  console.log('222', modelValue)
-  console.log('333', iframeUrl)
+  console.log("222", modelValue);
+  console.log("333", iframeUrl);
 });
 
-
 const noneUrl = () => {
-  return '';
-}
+  return "";
+};
 
 function closeIframe() {
   closeNoticeTableModal();
@@ -58,15 +50,14 @@ function closeIframe() {
 
 function alertAndCloseIframe(msg) {
   closeNoticeTableModal();
-  ElMessageBox.alert(msg)
+  ElMessageBox.alert(msg);
 }
-
 </script>
 <style lang="scss">
 iframe {
   border: none; /* 移除边框 */
   width: 100%; /* 使其填充父元素的宽度 */
-  height: 500px; /* 设置 iframe 的高度 */
+  height: 650px; /* 设置 iframe 的高度 */
 }
 .table-warp {
   position: fixed;

+ 150 - 190
src/views/WDLY/blessing/cover.vue

@@ -1,73 +1,51 @@
 <template>
   <div class="tenant">
-    <byTable
-        :source="sourceList.data"
-        :pagination="sourceList.pagination"
-        :config="config"
-        :loading="loading"
-        highlight-current-row
-        :selectConfig="selectConfig"
-        :table-events="{
+    <byTable :source="sourceList.data" :pagination="sourceList.pagination" :config="config" :loading="loading" highlight-current-row
+             :selectConfig="selectConfig" :table-events="{
           select: select,
-        }"
-        :action-list="[
+        }" :action-list="[
         {
           text: '添加封面',
           action: () => openModal('add'),
         },
-      ]"
-        @get-list="getList">
+      ]" @get-list="getList">
 
       <template #coverUrl="{ item }">
         <div v-if="item.coverList.length > 0">
-          <img
-              :src="item.coverList[0].fileUrl"
-              class="pic"
-              @click="handleClickFile(item.coverList[0])"
-          />
+          <img :src="item.coverList[0].fileUrl" class="pic" @click="handleClickFile(item.coverList[0])" />
         </div>
         <div v-else></div>
       </template>
 
-
       <template #audioUrl="{ item }">
         <div v-if="item.audioList.length > 0">
-          <audio controls   >
-            <source :src="item.audioList[0].fileUrl" type="audio/mp3" >
+          <audio controls>
+            <source :src="item.audioList[0].fileUrl" type="audio/mp3">
           </audio>
         </div>
         <div v-else></div>
       </template>
     </byTable>
 
-    <el-dialog z-index="1100" :title="modalType == 'add' ? '添加封面信息' : '编辑封面信息'" v-if="dialogVisible" v-model="dialogVisible" width="800px" v-loading="loading">
+    <el-dialog z-index="1100" :title="modalType == 'add' ? '添加封面信息' : '编辑封面信息'" v-if="dialogVisible" v-model="dialogVisible" width="800px"
+               v-loading="loading">
       <el-row style="width: 100%">
         <el-col :span="15">
           <byForm :formConfig="formConfig" :formOption="formOption" v-model="formData.data" :rules="rules" ref="byform">
             <template #coverList>
               <el-row style="width: 100%">
                 <el-col :span="24">
-                  <el-form-item  prop="coverList">
-                    <el-upload
-                        class="avatar-uploader"
-                        action="https://winfaster.obs.cn-south-1.myhuaweicloud.com"
-                        :data="uploadDataOne"
-                        :show-file-list="false"
-                        accept=".gif, .jpeg, .jpg, .png"
-                        :on-success="coverListSuccess"
-                        :before-upload="uploadFileOne">
-                      <el-image
-                          v-if="formData.data.coverList && formData.data.coverList.length > 0"
-                          :src="formData.data.coverList[0].fileUrl"
-                          fit="scale-down"
-                          class="avatar" />
-                      <el-icon v-else class="avatar-uploader-icon"><Plus /></el-icon>
+                  <el-form-item prop="coverList">
+                    <el-upload class="avatar-uploader" action="https://winfaster.obs.cn-south-1.myhuaweicloud.com" :data="uploadDataOne"
+                               :show-file-list="false" accept=".gif, .jpeg, .jpg, .png" :on-success="coverListSuccess" :before-upload="uploadFileOne">
+                      <el-image v-if="formData.data.coverList && formData.data.coverList.length > 0" :src="formData.data.coverList[0].fileUrl"
+                                fit="scale-down" class="avatar" />
+                      <el-icon v-else class="avatar-uploader-icon">
+                        <Plus />
+                      </el-icon>
                     </el-upload>
-                    <el-button
-                        class="delete-btn"
-                        type="danger"
-                        v-if="formData.data.coverList && formData.data.coverList.length > 0"
-                        @click="formData.data.coverList = []">
+                    <el-button class="delete-btn" type="danger" v-if="formData.data.coverList && formData.data.coverList.length > 0"
+                               @click="formData.data.coverList = []">
                       删除
                     </el-button>
                   </el-form-item>
@@ -77,25 +55,18 @@
             <template #audioList>
               <el-row style="width: 100%">
                 <el-col :span="24">
-                  <el-form-item  prop="audioList">
-                    <el-upload
-                        class="avatar-uploader"
-                        action="https://winfaster.obs.cn-south-1.myhuaweicloud.com"
-                        :data="uploadDataTwo"
-                        :show-file-list="false"
-                        accept="audio/*"
-                        :on-success="audioListSuccess"
-                        :before-upload="uploadFileTwo">
-                      <audio controls style="margin-top: 20px"  v-if="formData.data.audioList && formData.data.audioList.length > 0" >
-                        <source :src="formData.data.audioList[0].fileUrl" type="audio/mp3" >
+                  <el-form-item prop="audioList">
+                    <el-upload class="avatar-uploader" action="https://winfaster.obs.cn-south-1.myhuaweicloud.com" :data="uploadDataTwo"
+                               :show-file-list="false" accept="audio/*" :on-success="audioListSuccess" :before-upload="uploadFileTwo">
+                      <audio controls style="margin-top: 20px" v-if="formData.data.audioList && formData.data.audioList.length > 0">
+                        <source :src="formData.data.audioList[0].fileUrl" type="audio/mp3">
                       </audio>
-                      <el-icon v-else class="avatar-uploader-icon"><Plus /></el-icon>
+                      <el-icon v-else class="avatar-uploader-icon">
+                        <Plus />
+                      </el-icon>
                     </el-upload>
-                    <el-button
-                        class="delete-btn"
-                        type="danger"
-                        v-if="formData.data.audioList && formData.data.audioList.length > 0"
-                        @click="formData.data.audioList = []">
+                    <el-button class="delete-btn" type="danger" v-if="formData.data.audioList && formData.data.audioList.length > 0"
+                               @click="formData.data.audioList = []">
                       删除
                     </el-button>
                   </el-form-item>
@@ -106,13 +77,15 @@
         </el-col>
         <el-col :span="9">
           <div class="blessingClass">
-              <div :style="coverStyle">
+            <div :style="coverStyle">
 
-                <div :style="fontStyle">
-                  <p>xxxxx:</p>
-                  <p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;朋友生日到,千里送鹅毛。信息虽一毛,情谊伴到老。今生有缘遇,相知无争吵。虽非日夜伴,心中牵挂绕。问候不可少,祝福也送到。愿你身体健,快乐无烦恼;愿你事业顺,业绩步步高;愿你幸福笑,如意直到老。祝生日快乐!</p>
-                </div>
+              <div :style="fontStyle">
+                <p>xxxxx:</p>
+                <p>
+                  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;朋友生日到,千里送鹅毛。信息虽一毛,情谊伴到老。今生有缘遇,相知无争吵。虽非日夜伴,心中牵挂绕。问候不可少,祝福也送到。愿你身体健,快乐无烦恼;愿你事业顺,业绩步步高;愿你幸福笑,如意直到老。祝生日快乐!
+                </p>
               </div>
+            </div>
           </div>
         </el-col>
 
@@ -129,7 +102,7 @@
 import { ElMessage, ElMessageBox } from "element-plus";
 import byTable from "@/components/byTable/index";
 import byForm from "@/components/byForm/index";
-import {computed, nextTick, reactive, ref} from "vue";
+import { computed, nextTick, reactive, ref } from "vue";
 const { proxy } = getCurrentInstance();
 
 const router = useRouter();
@@ -159,19 +132,19 @@ const selectConfig = computed(() => {
     {
       label: "封面类型",
       prop: "status",
-      data: coverTypeList.value
+      data: coverTypeList.value,
     },
-  ]});
+  ];
+});
 
 const config = computed(() => {
   return [
-
     {
       attrs: {
         label: "封面类型",
         prop: "coverType",
-        width: '240',
-        align: "center"
+        width: "240",
+        align: "left",
       },
       render(type) {
         return proxy.dictValueLabel(type, coverTypeList.value);
@@ -181,23 +154,23 @@ const config = computed(() => {
       attrs: {
         label: "封面名称",
         prop: "coverName",
-        align: "center"
+        align: "left",
       },
     },
     {
       attrs: {
         label: "封面",
         slot: "coverUrl",
-        width: 150,
-        align: "center"
+        width: 100,
+        align: "left",
       },
     },
     {
       attrs: {
         label: "音频",
         slot: "audioUrl",
-        width: 400,
-        align: "center"
+        width: 320,
+        align: "left",
       },
     },
     {
@@ -227,13 +200,15 @@ const config = computed(() => {
             },
             el: "button",
             click() {
-              ElMessageBox.confirm("此操作将永久删除该数据, 是否继续?", "提示", {
-                confirmButtonText: "确定",
-                cancelButtonText: "取消",
-                type: "warning",
-              }).then(() => {
-
-              });
+              ElMessageBox.confirm(
+                "此操作将永久删除该数据, 是否继续?",
+                "提示",
+                {
+                  confirmButtonText: "确定",
+                  cancelButtonText: "取消",
+                  type: "warning",
+                }
+              ).then(() => {});
             },
           },
         ];
@@ -244,8 +219,8 @@ const config = computed(() => {
 
 let formData = reactive({
   data: {
-    coverList:[],
-    audioList:[],
+    coverList: [],
+    audioList: [],
   },
 });
 const formOption = reactive({
@@ -258,7 +233,6 @@ const byform = ref(null);
 
 const formConfig = computed(() => {
   return [
-
     {
       type: "select",
       prop: "coverType",
@@ -287,22 +261,16 @@ const formConfig = computed(() => {
       label: "音频文件",
       required: true,
     },
-
-
   ];
 });
 
 const getDictlist = async () => {
-  proxy
-      .getDictOne([
-        "cover_type"
-      ])
-      .then((res) => {
-        coverTypeList.value = res["cover_type"].map((x) => ({
-          label: x.dictValue,
-          value: x.dictKey,
-        }));
-      });
+  proxy.getDictOne(["cover_type"]).then((res) => {
+    coverTypeList.value = res["cover_type"].map((x) => ({
+      label: x.dictValue,
+      value: x.dictKey,
+    }));
+  });
 };
 
 const getList = async (req) => {
@@ -321,10 +289,10 @@ const openModal = () => {
   dialogVisible.value = true;
   modalType.value = "add";
   formData.data = {
-    content:'',
+    content: "",
   };
-  coverStyle.value = null
-  previewBlessingInit()
+  coverStyle.value = null;
+  previewBlessingInit();
 };
 const selection = ref({
   data: [],
@@ -339,42 +307,44 @@ const getDtl = (row) => {
     formData.data = res;
     dialogVisible.value = true;
 
-    proxy.post("/fileInfo/getList", { businessIdList: [res.id], fileType: 1 }).then((resFile) => {
-      formData.data.coverList = resFile[res.id];
-      formData.data.coverUrl = resFile[res.id][0].fileUrl;
+    proxy
+      .post("/fileInfo/getList", { businessIdList: [res.id], fileType: 1 })
+      .then((resFile) => {
+        formData.data.coverList = resFile[res.id];
+        formData.data.coverUrl = resFile[res.id][0].fileUrl;
 
-      previewBlessing()
-    });
-    proxy.post("/fileInfo/getList", { businessIdList: [res.id], fileType: 2 }).then((resFile) => {
-      formData.data.audioList = resFile[res.id];
-      formData.data.audioUrl = resFile[res.id][0].fileUrl;
-    });
+        previewBlessing();
+      });
+    proxy
+      .post("/fileInfo/getList", { businessIdList: [res.id], fileType: 2 })
+      .then((resFile) => {
+        formData.data.audioList = resFile[res.id];
+        formData.data.audioUrl = resFile[res.id][0].fileUrl;
+      });
   });
 };
 
-
 const submitForm = () => {
   byform.value.handleSubmit(() => {
-      submitLoading.value = true;
-      proxy.post("/blessingCover/" + modalType.value, formData.data).then(
-          () => {
-            ElMessage({
-              message: modalType.value == "add" ? "添加成功" : "编辑成功",
-              type: "success",
-            });
-            dialogVisible.value = false;
-            submitLoading.value = false;
-            getList();
-          },
-          (err) => {
-            console.log(err);
-            submitLoading.value = false;
-          }
-      );
+    submitLoading.value = true;
+    proxy.post("/blessingCover/" + modalType.value, formData.data).then(
+      () => {
+        ElMessage({
+          message: modalType.value == "add" ? "添加成功" : "编辑成功",
+          type: "success",
+        });
+        dialogVisible.value = false;
+        submitLoading.value = false;
+        getList();
+      },
+      (err) => {
+        console.log(err);
+        submitLoading.value = false;
+      }
+    );
   });
 };
 
-
 const uploadDataOne = ref({});
 const uploadFileOne = async (file) => {
   const res = await proxy.post("/fileInfo/getSing", { fileName: file.name });
@@ -403,9 +373,9 @@ const coverListSuccess = (response, uploadFile) => {
     },
   ];
 
-  formData.data.coverUrl =  uploadFile.raw.fileUrl;
+  formData.data.coverUrl = uploadFile.raw.fileUrl;
 
-  previewBlessing()
+  previewBlessing();
 };
 const audioListSuccess = (response, uploadFile) => {
   formData.data.audioList = [
@@ -423,78 +393,69 @@ const handleClickFile = (file) => {
   window.open(file.fileUrl, "_blank");
 };
 
-
-
-const coverStyle = ref({})
-const fontStyle = ref({})
+const coverStyle = ref({});
+const fontStyle = ref({});
 //模拟获取屏幕的宽高
-var offsetWidth = 262, offsetHeight = 520;
+var offsetWidth = 262,
+  offsetHeight = 520;
 
 const previewBlessingInit = () => {
-  coverStyle.value =
-      {
-
-        width: offsetWidth+'px',
-        height: offsetHeight+'px',
-        position: 'relative'
-      }
-
-  fontStyle.value =
-      {
-        position: 'absolute',
-        top: '50%',
-        transform: 'translateY(-50%)',
-        margin: '0 25px'
-      }
+  coverStyle.value = {
+    width: offsetWidth + "px",
+    height: offsetHeight + "px",
+    position: "relative",
+  };
 
-}
+  fontStyle.value = {
+    position: "absolute",
+    top: "50%",
+    transform: "translateY(-50%)",
+    margin: "0 25px",
+  };
+};
 const previewBlessing = () => {
+  //背景图片
+  const coverUrl = formData.data.coverUrl;
+
+  //获取图片的宽高
+  var img = new Image();
+  img.src = coverUrl;
+  var naturalWidth = img.width,
+    naturalHeight = img.height;
+
+  //等比自适应
+  var backgroundSize = "";
+  if (naturalWidth / naturalHeight > offsetWidth / offsetHeight) {
+    backgroundSize = "100% auto";
+  } else {
+    backgroundSize = "auto 100%";
+  }
+  coverStyle.value = {
+    backgroundImage: "url(" + coverUrl + ") ",
+    width: offsetWidth + "px",
+    height: offsetHeight + "px",
+    backgroundRepeat: "no-repeat",
+    backgroundSize: backgroundSize,
+    backgroundPosition: "center center",
+    position: "relative",
+  };
 
-    //背景图片
-    const coverUrl = formData.data.coverUrl;
-
-    //获取图片的宽高
-    var img = new Image();
-    img.src = coverUrl;
-    var naturalWidth = img.width , naturalHeight = img.height
-
-    //等比自适应
-    var backgroundSize = "";
-    if (naturalWidth / naturalHeight > offsetWidth / offsetHeight) {
-      backgroundSize = '100% auto'
-    } else {
-      backgroundSize = 'auto 100%'
-    }
-    coverStyle.value =
-    {
-      backgroundImage: 'url(' + coverUrl + ') ',
-      width: offsetWidth+'px',
-      height: offsetHeight+'px',
-      backgroundRepeat: 'no-repeat',
-      backgroundSize: backgroundSize,
-      backgroundPosition: 'center center',
-      position: 'relative'
-    }
-
-    fontStyle.value =
-    {
-      position: 'absolute',
-      top: '50%',
-      transform: 'translateY(-50%)',
-      margin: '0 25px'
-    }
-
-
+  fontStyle.value = {
+    position: "absolute",
+    top: "50%",
+    transform: "translateY(-50%)",
+    margin: "0 25px",
+  };
 };
 
-getDictlist()
-getList()
+getDictlist();
+getList();
 </script>
 
 <style lang='scss' scoped>
 .tenant {
   padding: 20px;
-  .delete-btn{
+  .delete-btn {
     margin-top: 10px;
     margin-left: 25px;
   }
@@ -534,12 +495,11 @@ getList()
 }
 
 .blessingClass {
-  background-image: url("../../../assets/victoria/sjk.jpg") ;
+  background-image: url("../../../assets/victoria/sjk.jpg");
   background-size: cover;
   height: 600px;
   width: 300px;
 
-  padding:40px 19px;
-
+  padding: 40px 19px;
 }
 </style>

+ 31 - 45
src/views/WDLY/blessing/info.vue

@@ -1,34 +1,20 @@
 <template>
   <div class="tenant">
-    <byTable
-        :source="sourceList.data"
-        :pagination="sourceList.pagination"
-        :config="config"
-        :loading="loading"
-        highlight-current-row
-        :selectConfig="selectConfig"
-        @moreSearch="moreSearch"
-        :table-events="{
+    <byTable :source="sourceList.data" :pagination="sourceList.pagination" :config="config" :loading="loading" highlight-current-row
+             :selectConfig="selectConfig" @moreSearch="moreSearch" :table-events="{
           select: select,
-        }"
-        :action-list="[]"
-        @get-list="getList">
+        }" :action-list="[]" @get-list="getList">
       <template #coverUrl="{ item }">
         <div v-if="item.coverList != null && item.coverList.length > 0">
-          <img
-              :src="item.coverList[0].fileUrl"
-              class="pic"
-              @click="handleClickFile(item.coverList[0])"
-          />
+          <img :src="item.coverList[0].fileUrl" class="pic" @click="handleClickFile(item.coverList[0])" />
         </div>
         <div v-else></div>
       </template>
 
-
       <template #audioUrl="{ item }">
         <div v-if="item.audioList != null && item.audioList.length > 0">
-          <audio controls   >
-            <source :src="item.audioList[0].fileUrl" type="audio/mp3" >
+          <audio controls>
+            <source :src="item.audioList[0].fileUrl" type="audio/mp3">
           </audio>
         </div>
         <div v-else></div>
@@ -36,8 +22,6 @@
     </byTable>
   </div>
 
-
-
   <el-dialog title="高级检索" v-if="openSearch" v-model="openSearch" width="600">
     <byForm :formConfig="formSearchConfig" :formOption="formOption" v-model="sourceList.pagination">
 
@@ -53,7 +37,7 @@
 import { ElMessage, ElMessageBox } from "element-plus";
 import byTable from "@/components/byTable/index";
 import byForm from "@/components/byForm/index";
-import {computed, nextTick, reactive, ref} from "vue";
+import { computed, nextTick, reactive, ref } from "vue";
 const { proxy } = getCurrentInstance();
 
 const router = useRouter();
@@ -70,9 +54,8 @@ const sourceList = ref({
 });
 
 const selectConfig = computed(() => {
-  return [
-
-  ]});
+  return [];
+});
 
 const config = computed(() => {
   return [
@@ -80,72 +63,77 @@ const config = computed(() => {
       attrs: {
         label: "收礼人手机号",
         prop: "acceptPhone",
-        align: "center"
+        width: 120,
+        align: "left",
       },
     },
     {
       attrs: {
         label: "收礼人姓名",
         prop: "acceptName",
-        align: "center"
+        width: 100,
+        align: "left",
       },
     },
     {
       attrs: {
         label: "送礼人手机号",
         prop: "givePhone",
-        align: "center"
+        width: 120,
+        align: "left",
       },
     },
     {
       attrs: {
         label: "送礼人姓名",
         prop: "giveName",
-        align: "center"
+        width: 100,
+        align: "left",
       },
     },
     {
       attrs: {
         label: "送礼人性别",
         prop: "giveSex",
-        align: "center"
+        width: 100,
+        align: "left",
       },
     },
     {
       attrs: {
         label: "祝福语内容",
         prop: "blessingContent",
-        align: "center"
+        "min-width": 220,
+        align: "left",
       },
     },
     {
       attrs: {
         label: "封面名称",
         prop: "coverName",
-        align: "center"
+        width: 140,
+        align: "left",
       },
     },
     {
       attrs: {
         label: "封面",
         slot: "coverUrl",
-        width: 150,
-        align: "center"
+        width: 100,
+        align: "left",
       },
     },
     {
       attrs: {
         label: "音频",
         slot: "audioUrl",
-        width: 400,
-        align: "center"
+        width: 320,
+        align: "left",
       },
     },
   ];
 });
 
-
-
 const getList = async (req) => {
   sourceList.value.pagination = { ...sourceList.value.pagination, ...req };
   loading.value = true;
@@ -165,7 +153,6 @@ const select = (_selection, row) => {
   selection.value.data = _selection;
 };
 
-
 const handleClickFile = (file) => {
   window.open(file.fileUrl, "_blank");
 };
@@ -222,13 +209,13 @@ const submitSearch = () => {
   getList();
 };
 
-getList()
+getList();
 </script>
 
 <style lang='scss' scoped>
 .tenant {
   padding: 20px;
-  .delete-btn{
+  .delete-btn {
     margin-top: 10px;
     margin-left: 25px;
   }
@@ -268,12 +255,11 @@ getList()
 }
 
 .blessingClass {
-  background-image: url("../../../assets/victoria/sjk.jpg") ;
+  background-image: url("../../../assets/victoria/sjk.jpg");
   background-size: cover;
   height: 600px;
   width: 300px;
 
-  padding:40px 19px;
-
+  padding: 40px 19px;
 }
 </style>

+ 66 - 73
src/views/WDLY/blessing/language.vue

@@ -1,30 +1,22 @@
 <template>
   <div class="tenant">
-    <byTable
-        :source="sourceList.data"
-        :pagination="sourceList.pagination"
-        :config="config"
-        :loading="loading"
-        highlight-current-row
-        :selectConfig="selectConfig"
-        :table-events="{
+    <byTable :source="sourceList.data" :pagination="sourceList.pagination" :config="config" :loading="loading" highlight-current-row
+             :selectConfig="selectConfig" :table-events="{
           select: select,
-        }"
-        :action-list="[
+        }" :action-list="[
         {
           text: '添加祝福语',
           action: () => openModal('add'),
         },
-      ]"
-        @get-list="getList">
+      ]" @get-list="getList">
     </byTable>
 
-    <el-dialog z-index="1100" :title="modalType == 'add' ? '添加祝福语' : '编辑祝福语'" v-if="dialogVisible" v-model="dialogVisible" width="800px" v-loading="loading">
+    <el-dialog z-index="1100" :title="modalType == 'add' ? '添加祝福语' : '编辑祝福语'" v-if="dialogVisible" v-model="dialogVisible" width="800px"
+               v-loading="loading">
       <byForm :formConfig="formConfig" :formOption="formOption" v-model="formData.data" :rules="rules" ref="byform">
 
       </byForm>
 
-
       <template #footer>
         <el-button @click="dialogVisible = false" size="large">取 消</el-button>
         <el-button type="primary" @click="submitForm" size="large" :loading="submitLoading">确 定</el-button>
@@ -37,7 +29,7 @@
 import { ElMessage, ElMessageBox } from "element-plus";
 import byTable from "@/components/byTable/index";
 import byForm from "@/components/byForm/index";
-import {computed, nextTick, reactive, ref} from "vue";
+import { computed, nextTick, reactive, ref } from "vue";
 const { proxy } = getCurrentInstance();
 
 const router = useRouter();
@@ -54,8 +46,12 @@ const sourceList = ref({
 });
 
 let rules = ref({
-  blessingType: [{ required: true, message: "请选择祝福语类型", trigger: "change" }],
-  blessing_content: [{ required: true, message: "请输入祝福内容", trigger: "blur" }],
+  blessingType: [
+    { required: true, message: "请选择祝福语类型", trigger: "change" },
+  ],
+  blessing_content: [
+    { required: true, message: "请输入祝福内容", trigger: "blur" },
+  ],
 });
 let dialogVisible = ref(false);
 let modalType = ref("add");
@@ -64,19 +60,19 @@ const selectConfig = computed(() => {
     {
       label: "祝福语类型",
       prop: "blessingType",
-      data: blessingTypeList.value
+      data: blessingTypeList.value,
     },
-  ]});
+  ];
+});
 
 const config = computed(() => {
   return [
-
     {
       attrs: {
         label: "祝福语类型",
         prop: "blessingType",
-        width: '240',
-        align: "center"
+        width: "240",
+        align: "left",
       },
       render(type) {
         return proxy.dictValueLabel(type, blessingTypeList.value);
@@ -86,14 +82,14 @@ const config = computed(() => {
       attrs: {
         label: "祝福内容",
         prop: "blessingContent",
-        align: "center"
+        align: "left",
       },
     },
     {
       attrs: {
         label: "操作",
         width: "120",
-        align: "right",
+        align: "center",
       },
       renderHTML(row) {
         return [
@@ -116,13 +112,15 @@ const config = computed(() => {
             },
             el: "button",
             click() {
-              ElMessageBox.confirm("此操作将永久删除该数据, 是否继续?", "提示", {
-                confirmButtonText: "确定",
-                cancelButtonText: "取消",
-                type: "warning",
-              }).then(() => {
-
-              });
+              ElMessageBox.confirm(
+                "此操作将永久删除该数据, 是否继续?",
+                "提示",
+                {
+                  confirmButtonText: "确定",
+                  cancelButtonText: "取消",
+                  type: "warning",
+                }
+              ).then(() => {});
             },
           },
         ];
@@ -133,8 +131,8 @@ const config = computed(() => {
 
 let formData = reactive({
   data: {
-    coverList:[],
-    audioList:[],
+    coverList: [],
+    audioList: [],
   },
 });
 const formOption = reactive({
@@ -147,7 +145,6 @@ const byform = ref(null);
 
 const formConfig = computed(() => {
   return [
-
     {
       type: "select",
       prop: "blessingType",
@@ -158,6 +155,7 @@ const formConfig = computed(() => {
     {
       type: "input",
       itemType: "textarea",
+      rows: 10,
       prop: "blessingContent",
       label: "祝福内容",
       required: true,
@@ -166,35 +164,33 @@ const formConfig = computed(() => {
 });
 
 const getDictlist = async () => {
-  proxy
-      .getDictOne([
-        "blessing_type"
-      ])
-      .then((res) => {
-        blessingTypeList.value = res["blessing_type"].map((x) => ({
-          label: x.dictValue,
-          value: x.dictKey,
-        }));
-      });
+  proxy.getDictOne(["blessing_type"]).then((res) => {
+    blessingTypeList.value = res["blessing_type"].map((x) => ({
+      label: x.dictValue,
+      value: x.dictKey,
+    }));
+  });
 };
 
 const getList = async (req) => {
   sourceList.value.pagination = { ...sourceList.value.pagination, ...req };
   loading.value = true;
-  proxy.post("/blessingLanguage/page", sourceList.value.pagination).then((res) => {
-    sourceList.value.data = res.rows;
-    sourceList.value.pagination.total = res.total;
-    setTimeout(() => {
-      loading.value = false;
-    }, 200);
-  });
+  proxy
+    .post("/blessingLanguage/page", sourceList.value.pagination)
+    .then((res) => {
+      sourceList.value.data = res.rows;
+      sourceList.value.pagination.total = res.total;
+      setTimeout(() => {
+        loading.value = false;
+      }, 200);
+    });
 };
 
 const openModal = () => {
   dialogVisible.value = true;
   modalType.value = "add";
   formData.data = {
-    content:'',
+    content: "",
   };
 };
 const selection = ref({
@@ -212,37 +208,35 @@ const getDtl = (row) => {
   });
 };
 
-
 const submitForm = () => {
   byform.value.handleSubmit(() => {
     submitLoading.value = true;
     proxy.post("/blessingLanguage/" + modalType.value, formData.data).then(
-        () => {
-          ElMessage({
-            message: modalType.value == "add" ? "添加成功" : "编辑成功",
-            type: "success",
-          });
-          dialogVisible.value = false;
-          submitLoading.value = false;
-          getList();
-        },
-        (err) => {
-          console.log(err);
-          submitLoading.value = false;
-        }
+      () => {
+        ElMessage({
+          message: modalType.value == "add" ? "添加成功" : "编辑成功",
+          type: "success",
+        });
+        dialogVisible.value = false;
+        submitLoading.value = false;
+        getList();
+      },
+      (err) => {
+        console.log(err);
+        submitLoading.value = false;
+      }
     );
   });
 };
 
-
-getDictlist()
-getList()
+getDictlist();
+getList();
 </script>
 
 <style lang='scss' scoped>
 .tenant {
   padding: 20px;
-  .delete-btn{
+  .delete-btn {
     margin-top: 10px;
     margin-left: 25px;
   }
@@ -282,12 +276,11 @@ getList()
 }
 
 .blessingClass {
-  background-image: url("../../../assets/victoria/sjk.jpg") ;
+  background-image: url("../../../assets/victoria/sjk.jpg");
   background-size: cover;
   height: 600px;
   width: 300px;
 
-  padding:40px 19px;
-
+  padding: 40px 19px;
 }
 </style>

+ 378 - 372
src/views/WDLY/jd/backOrder/index.vue

@@ -1,169 +1,156 @@
 <template>
-    <div class="tenant">
-        <byTable
-                :source="sourceList.data"
-                :pagination="sourceList.pagination"
-                :config="config"
-                :loading="loading"
-                highlight-current-row
-                :selectConfig="selectConfig"
-                :table-events="{
+  <div class="tenant">
+    <byTable :source="sourceList.data" :pagination="sourceList.pagination" :config="config" :loading="loading" highlight-current-row
+             :selectConfig="selectConfig" :table-events="{
                     select: select,
-                }"
-                :action-list="[]"
-                @get-list="getList"
-                @moreSearch="() => (queryDialogVisible = true)"
-        >
-        </byTable>
-        <!--详情-->
-        <el-dialog z-index="1100" title="退货单详情" v-if="dialogVisible" v-model="formData.data" width="1500px" v-loading="loading">
-            <el-descriptions title="基础信息" />
-            <el-form label-width="auto" :rules="rules">
-                <el-row>
-                    <el-col :span="8">
-                        <el-form-item label="退货单号:" :span="8">
-                            {{formData.data.returnId}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="供应商名称:" :span="8">
-                            {{formData.data.providerName}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="创建日期:" :span="8">
-                            {{formData.data.createDate}}
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-                <el-row>
-                    <el-col :span="8">
-                        <el-form-item label="退货地配送中心名称:" :span="8">
-                            {{formData.data.fromDeliverCenterName}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="目的地配送中心名称:" :span="8">
-                            {{formData.data.toDeliverCenterName}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="退货单状态名称:" :span="8">
-                            {{formData.data.returnStateName}}
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-                <el-row>
-                    <el-col :span="8">
-                        <el-form-item label="退货总数量:" :span="8">
-                            {{formData.data.totalNum}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="退货总金额:" :span="8">
-                            {{formData.data.totalPrice}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="商品库房名称:" :span="8">
-                            {{formData.data.stockName}}
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-                <el-row>
-                    <el-col :span="8">
-                        <el-form-item label="退货地仓库地址:" :span="8">
-                            {{formData.data.wareHouseAddress}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="仓储联系人电话:" :span="8">
-                            {{formData.data.wareHouseCell}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="仓储联系人:" :span="8">
-                            {{formData.data.wareHouseContact}}
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-                <el-row>
-                    <el-col :span="8">
-                        <el-form-item label="退货单出库时间:" :span="8">
-                            {{formData.data.outStoreRoomDate}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="退货单品种数:" :span="8">
-                            {{formData.data.wareVariety}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="退货结算状态名称:" :span="8">
-                            {{formData.data.balanceStateName}}
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-                <el-row>
-                    <el-col :span="8">
-                        <el-form-item label="退货单结算时间:" :span="8">
-                            {{formData.data.balanceDate}}
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-                <el-row>
-                    <el-descriptions title="退货单明细" />
-                    <el-table :data="formData.data.jdBackDetailsList" stripe style="width: 100%">
-                        <!--            <el-table stripe style="width: 100%">-->
-                        <el-table-column prop="wareId" label="京东商品编号" width="180">
-                            <template #default="scope">
-                                <span :style="scope.row.productName=='' || scope.row.productName == undefined || scope.row.productName == 'undefined'?'color: red':''">{{scope.row.wareId}}</span>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="wareName" label="京东商品名称">
-                            <template #default="scope">
-                                <span :style="scope.row.productName=='' || scope.row.productName == undefined || scope.row.productName == 'undefined'?'color: red':''">{{scope.row.wareName}}</span>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="brandName" label="京东品牌名称"/>
-                        <el-table-column prop="productName" label="产品名称" />
-                        <el-table-column prop="returnsPrice" label="申请退货价格"/>
-                        <el-table-column prop="returnsNum" label="申请退货数量" />
-                        <el-table-column prop="factNum" label="实际退货数量" />
-                        <el-table-column prop="totalPrice" label="退货总金额" />
-                    </el-table>
-                </el-row>
-            </el-form>
-            <template #footer>
-                <el-button @click="dialogVisible = false" size="large">取 消</el-button>
-            </template>
-        </el-dialog>
+                }" :action-list="[]" @get-list="getList" @moreSearch="() => (queryDialogVisible = true)">
+    </byTable>
+    <!--详情-->
+    <el-dialog z-index="1100" title="退货单详情" v-if="dialogVisible" v-model="formData.data" width="1500px" v-loading="loading">
+      <el-descriptions title="基础信息" />
+      <el-form label-width="auto" :rules="rules">
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="退货单号:" :span="8">
+              {{formData.data.returnId}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="供应商名称:" :span="8">
+              {{formData.data.providerName}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="创建日期:" :span="8">
+              {{formData.data.createDate}}
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="退货地配送中心名称:" :span="8">
+              {{formData.data.fromDeliverCenterName}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="目的地配送中心名称:" :span="8">
+              {{formData.data.toDeliverCenterName}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="退货单状态名称:" :span="8">
+              {{formData.data.returnStateName}}
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="退货总数量:" :span="8">
+              {{formData.data.totalNum}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="退货总金额:" :span="8">
+              {{formData.data.totalPrice}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="商品库房名称:" :span="8">
+              {{formData.data.stockName}}
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="退货地仓库地址:" :span="8">
+              {{formData.data.wareHouseAddress}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="仓储联系人电话:" :span="8">
+              {{formData.data.wareHouseCell}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="仓储联系人:" :span="8">
+              {{formData.data.wareHouseContact}}
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="退货单出库时间:" :span="8">
+              {{formData.data.outStoreRoomDate}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="退货单品种数:" :span="8">
+              {{formData.data.wareVariety}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="退货结算状态名称:" :span="8">
+              {{formData.data.balanceStateName}}
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="退货单结算时间:" :span="8">
+              {{formData.data.balanceDate}}
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-descriptions title="退货单明细" />
+          <el-table :data="formData.data.jdBackDetailsList" stripe style="width: 100%">
+            <!--            <el-table stripe style="width: 100%">-->
+            <el-table-column prop="wareId" label="京东商品编号" width="180">
+              <template #default="scope">
+                <span
+                      :style="scope.row.productName=='' || scope.row.productName == undefined || scope.row.productName == 'undefined'?'color: red':''">{{scope.row.wareId}}</span>
+              </template>
+            </el-table-column>
+            <el-table-column prop="wareName" label="京东商品名称">
+              <template #default="scope">
+                <span
+                      :style="scope.row.productName=='' || scope.row.productName == undefined || scope.row.productName == 'undefined'?'color: red':''">{{scope.row.wareName}}</span>
+              </template>
+            </el-table-column>
+            <el-table-column prop="brandName" label="京东品牌名称" />
+            <el-table-column prop="productName" label="产品名称" />
+            <el-table-column prop="returnsPrice" label="申请退货价格" />
+            <el-table-column prop="returnsNum" label="申请退货数量" />
+            <el-table-column prop="factNum" label="实际退货数量" />
+            <el-table-column prop="totalPrice" label="退货总金额" />
+          </el-table>
+        </el-row>
+      </el-form>
+      <template #footer>
+        <el-button @click="dialogVisible = false" size="large">取 消</el-button>
+      </template>
+    </el-dialog>
 
-        <!--高级搜索-->
-        <el-dialog
-                :title="'高级检索'"
-                v-model="queryDialogVisible"
-                width="500px"
-                destroy-on-close
-        >
-            <el-form :model="sourceList.pagination" label-width="100px" label-position="top" >
-                <el-form-item label="退货单号">
-                    <el-input v-model="sourceList.pagination.returnId" placeholder="请输入退货单号" />
-                </el-form-item>
-            </el-form>
-            <template #footer>
-                <el-button @click="handleReset" size="large">重置</el-button>
-                <el-button @click="handleQuery" type="primary" size="large">搜索</el-button>
-            </template>
-        </el-dialog>
-    </div>
+    <!--高级搜索-->
+    <el-dialog :title="'高级检索'" v-model="queryDialogVisible" width="500px" destroy-on-close>
+      <el-form :model="sourceList.pagination" label-width="100px" label-position="top">
+        <el-form-item label="退货单号">
+          <el-input v-model="sourceList.pagination.returnId" placeholder="请输入退货单号" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <el-button @click="handleReset" size="large">重置</el-button>
+        <el-button @click="handleQuery" type="primary" size="large">搜索</el-button>
+      </template>
+    </el-dialog>
+  </div>
 </template>
 
 <script setup>
 import { ElMessage, ElMessageBox } from "element-plus";
 import byTable from "@/components/byTable/index";
 import byForm from "@/components/byForm/index";
-import {computed, nextTick, reactive, ref} from "vue";
+import { computed, nextTick, reactive, ref } from "vue";
 const { proxy } = getCurrentInstance();
 
 const router = useRouter();
@@ -171,268 +158,287 @@ const loading = ref(false);
 const returnStates = ref([]);
 const submitLoading = ref(false);
 const sourceList = ref({
-    data: [],
-    pagination: {
-        total: 0,
-        pageNum: 1,
-        pageSize: 10,
-    },
+  data: [],
+  pagination: {
+    total: 0,
+    pageNum: 1,
+    pageSize: 10,
+  },
 });
 
-let rules = ref({
-});
+let rules = ref({});
 let dialogVisible = ref(false);
 let queryDialogVisible = ref(false);
 
 let modalType = ref("add");
 const selectConfig = computed(() => {
-    return [
-        {
-            label: "退货单状态",
-            prop: "returnStateName",
-            data: returnStates.value
-        },
-    ]});
+  return [
+    {
+      label: "退货单状态",
+      prop: "returnStateName",
+      data: returnStates.value,
+    },
+  ];
+});
 
 const config = computed(() => {
-    return [
-
-        {
+  return [
+    {
+      attrs: {
+        label: "退货单号",
+        align: "left",
+        width: 110,
+      },
+      renderHTML(row) {
+        return [
+          {
             attrs: {
-                label: "退货单号",
-                align: "center"
-            },
-            renderHTML(row) {
-                return [
-                    {
-                        attrs: {
-                            label: row.returnId,
-                            type: "primary",
-                            text: true,
-                        },
-                        el: "button",
-                        click() {
-                            getDtl(row);
-                        },
-                    },
-                ];
+              label: row.returnId,
+              type: "primary",
+              text: true,
             },
-        },
-        {
-            attrs: {
-                label: "创建日期",
-                prop: "createDate",
-                align: "center"
-            },
-        },
-        {
-            attrs: {
-                label: "供应商名称",
-                prop: "providerName",
-                align: "center"
-            },
-        },
-        {
-            attrs: {
-                label: "退货地配送中心名称",
-                prop: "fromDeliverCenterName",
-                align: "center"
-            },
-        },
-        {
-            attrs: {
-                label: "目的地配送中心名称",
-                prop: "toDeliverCenterName",
-                align: "center"
+            el: "button",
+            click() {
+              getDtl(row);
             },
-        },
-        {
-            attrs: {
-                label: "退货总数量",
-                prop: "totalNum",
-                align: "center"
-            },
-        },
-        {
-            attrs: {
-                label: "退货总金额",
-                prop: "totalPrice",
-                align: "center"
-            },
-        },
-        {
-            attrs: {
-                label: "退货单出库时间",
-                prop: "outStoreRoomDate",
-                align: "center"
-            },
-        },
-        {
-            attrs: {
-                label: "退货单品种数",
-                prop: "wareVariety",
-                align: "center"
-            },
-        },
-        {
-            attrs: {
-                label: "是否确认",
-                prop: "businessStatus",
-                align: "center",
-            },
-            render(value) {
-                return value == '1' ? "已确认" : "未确认";
-            },
-        },
-        {
-            attrs: {
-                label: "操作",
-                width: "300",
-                align: "right",
-            },
-            renderHTML(row) {
-                return [
-                    {
-                        attrs: {
-                            label: "详情",
-                            type: "primary",
-                            text: true,
-                        },
-                        el: "button",
-                        click() {
-                            getDtl(row);
-                        },
-                    },
-                    row.businessStatus!=1?
-                        {
-                            attrs: {
-                                label: "退货单确认",
-                                type: "danger",
-                                text: true,
-                            },
-                            el: "button",
-                            click() {
-                                ElMessageBox.confirm("是否确认当前退货单?", "提示", {
-                                    confirmButtonText: "确定",
-                                    cancelButtonText: "取消",
-                                    type: "warning",
-                                }).then(() => {
-                                    confirmBusinessStatus(row);
-                                });
-                            },
-                        }
-                        :{},
-                ];
-            },
-        },
-    ];
+          },
+        ];
+      },
+    },
+    {
+      attrs: {
+        label: "创建日期",
+        prop: "createDate",
+        align: "left",
+        width: 160,
+      },
+    },
+    {
+      attrs: {
+        label: "供应商名称",
+        prop: "providerName",
+        align: "left",
+        width: 220,
+      },
+    },
+    {
+      attrs: {
+        label: "退货地配送中心名称",
+        prop: "fromDeliverCenterName",
+        align: "left",
+        "min-width": 220,
+      },
+    },
+    {
+      attrs: {
+        label: "目的地配送中心名称",
+        prop: "toDeliverCenterName",
+        align: "left",
+        "min-width": 220,
+      },
+    },
+    {
+      attrs: {
+        label: "退货总数量",
+        prop: "totalNum",
+        align: "left",
+        width: 100,
+      },
+    },
+    {
+      attrs: {
+        label: "退货总金额",
+        prop: "totalPrice",
+        align: "left",
+        width: 110,
+      },
+      render(totalPrice) {
+        return proxy.moneyFormat(totalPrice, 2);
+      },
+    },
+    {
+      attrs: {
+        label: "退货单出库时间",
+        prop: "outStoreRoomDate",
+        align: "left",
+        width: 155,
+      },
+    },
+    {
+      attrs: {
+        label: "退货单品种数",
+        prop: "wareVariety",
+        align: "left",
+        width: 110,
+      },
+    },
+    {
+      attrs: {
+        label: "是否确认",
+        prop: "businessStatus",
+        align: "left",
+        width: 80,
+      },
+      render(value) {
+        return value == "1" ? "已确认" : "未确认";
+      },
+    },
+    {
+      attrs: {
+        label: "操作",
+        width: "100",
+        align: "center",
+        fixed: "right",
+      },
+      renderHTML(row) {
+        return [
+          //   {
+          //     attrs: {
+          //       label: "详情",
+          //       type: "primary",
+          //       text: true,
+          //     },
+          //     el: "button",
+          //     click() {
+          //       getDtl(row);
+          //     },
+          //   },
+          row.businessStatus != 1
+            ? {
+                attrs: {
+                  label: "退货单确认",
+                  type: "danger",
+                  text: true,
+                },
+                el: "button",
+                click() {
+                  ElMessageBox.confirm("是否确认当前退货单?", "提示", {
+                    confirmButtonText: "确定",
+                    cancelButtonText: "取消",
+                    type: "warning",
+                  }).then(() => {
+                    confirmBusinessStatus(row);
+                  });
+                },
+              }
+            : {},
+        ];
+      },
+    },
+  ];
 });
 
 let formData = reactive({
-    data: {
-        coverList:[],
-        audioList:[],
-    },
+  data: {
+    coverList: [],
+    audioList: [],
+  },
 });
 const formOption = reactive({
-    inline: true,
-    labelWidth: 100,
-    itemWidth: 100,
-    rules: [],
+  inline: true,
+  labelWidth: 100,
+  itemWidth: 100,
+  rules: [],
 });
 
-
 const getDictlist = async () => {
-    proxy
-        .getDictOne([
-            "jd_return_states"
-        ])
-        .then((res) => {
-            returnStates.value = res["jd_return_states"].map((x) => ({
-                label: x.dictValue,
-                value: x.dictValue,
-            }));
-        });
+  proxy.getDictOne(["jd_return_states"]).then((res) => {
+    returnStates.value = res["jd_return_states"].map((x) => ({
+      label: x.dictValue,
+      value: x.dictValue,
+    }));
+  });
 };
 
 const getList = async (req) => {
-    sourceList.value.pagination = { ...sourceList.value.pagination, ...req };
-    loading.value = true;
-    proxy.post("/jdBack/page", sourceList.value.pagination).then((res) => {
-        sourceList.value.data = res.rows;
-        sourceList.value.pagination.total = res.total;
-        setTimeout(() => {
-            loading.value = false;
-        }, 200);
-    });
+  sourceList.value.pagination = { ...sourceList.value.pagination, ...req };
+  loading.value = true;
+  proxy.post("/jdBack/page", sourceList.value.pagination).then((res) => {
+    sourceList.value.data = res.rows;
+    sourceList.value.pagination.total = res.total;
+    setTimeout(() => {
+      loading.value = false;
+    }, 200);
+  });
 };
 
 const openModal = () => {
-    dialogVisible.value = true;
-    modalType.value = "add";
-    formData.data = {
-        content:'',
-    };
+  dialogVisible.value = true;
+  modalType.value = "add";
+  formData.data = {
+    content: "",
+  };
 };
 const selection = ref({
-    data: [],
+  data: [],
 });
 const select = (_selection, row) => {
-    selection.value.data = _selection;
+  selection.value.data = _selection;
 };
 
 const getDtl = (row) => {
-    modalType.value = "edit";
-    proxy.post("/jdBack/detail", { id: row.id }).then((res) => {
-        formData.data = res;
-        dialogVisible.value = true;
-    });
+  modalType.value = "edit";
+  proxy.post("/jdBack/detail", { id: row.id }).then((res) => {
+    formData.data = res;
+    dialogVisible.value = true;
+  });
 };
 
-
 const confirmBusinessStatus = (row) => {
-    let businessStatus = row.businessStatus=='1' ? 0 : 1;
+  let businessStatus = row.businessStatus == "1" ? 0 : 1;
 
-    proxy.post("/jdBack/confirmBusinessStatus", { id: row.id, businessStatus: businessStatus }).then(
-        () => {
-            ElMessage({
-                message: "确认成功",
-                type: "success",
-            });
-            dialogVisible.value = false;
-            submitLoading.value = false;
-            getList();
-        },
-        (err) => {
-            console.log(err);
-            submitLoading.value = false;
-        }
+  proxy
+    .post("/jdBack/confirmBusinessStatus", {
+      id: row.id,
+      businessStatus: businessStatus,
+    })
+    .then(
+      () => {
+        ElMessage({
+          message: "确认成功",
+          type: "success",
+        });
+        dialogVisible.value = false;
+        submitLoading.value = false;
+        getList();
+      },
+      (err) => {
+        console.log(err);
+        submitLoading.value = false;
+      }
     );
-}
-
+};
 
 //高级搜索
 const handleReset = () => {
-    sourceList.value.pagination = {
-        pageNum: sourceList.value.pagination.pageNum,
-        pageSize: sourceList.value.pagination.pageSize,
-        arr: [],
-    };
-    handleQuery();
+  sourceList.value.pagination = {
+    pageNum: sourceList.value.pagination.pageNum,
+    pageSize: sourceList.value.pagination.pageSize,
+    arr: [],
+  };
+  handleQuery();
 };
 
 const handleQuery = () => {
-    if (sourceList.value.pagination.arr && sourceList.value.pagination.arr.length > 1) {
-        sourceList.value.pagination.purchaseStartTime = sourceList.value.pagination.arr[0];
-        sourceList.value.pagination.purchaseEndTime = sourceList.value.pagination.arr[1];
-    }
-    queryDialogVisible.value = false;
-    getList();
+  if (
+    sourceList.value.pagination.arr &&
+    sourceList.value.pagination.arr.length > 1
+  ) {
+    sourceList.value.pagination.purchaseStartTime =
+      sourceList.value.pagination.arr[0];
+    sourceList.value.pagination.purchaseEndTime =
+      sourceList.value.pagination.arr[1];
+  }
+  queryDialogVisible.value = false;
+  getList();
 };
 
-getDictlist()
-getList()
+getDictlist();
+getList();
 </script>
 
 <style lang='scss' scoped>
+.tenant {
+  padding: 20px;
+}
 </style>

+ 641 - 622
src/views/WDLY/jd/order/index.vue

@@ -1,306 +1,290 @@
 <template>
-    <div class="tenant">
-        <byTable
-                :source="sourceList.data"
-                :pagination="sourceList.pagination"
-                :config="config"
-                :loading="loading"
-                highlight-current-row
-                :selectConfig="selectConfig"
-                :table-events="{
+  <div class="tenant">
+    <byTable :source="sourceList.data" :pagination="sourceList.pagination" :config="config" :loading="loading" highlight-current-row
+             :selectConfig="selectConfig" :table-events="{
                     select: select,
-                }"
-                :action-list="[]"
-                @get-list="getList"
-                @moreSearch="() => (queryDialogVisible = true)"
-        >
-        </byTable>
-        <!--回告-->
-        <el-dialog :z-index="1500" title="采购单回告" v-if="tellDialogVisible" v-model="formData.data" width="1500px" v-loading="loading">
-            <el-descriptions title="基础信息" />
-            <el-form label-width="auto" :rules="rules">
-                <el-row>
-                    <el-col :span="8">
-                        <el-form-item label="采购单号:" :span="8">
-                            {{formData.data.orderId}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="配送中心:" :span="8">
-                            {{formData.data.deliverCenterName}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="入库时间:" :span="8">
-                            {{formData.data.storageTime}}
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-                <el-row>
-                    <el-col :span="8">
-                        <el-form-item label="预计送货时间:" :span="8">
-                            <el-date-picker
-                                    v-model="formData.data.deliveryTime"
-                                    type="datetime"
-                                    format="YYYY-MM-DD HH:mm:ss"
-                                    value-format="YYYY-MM-DD HH:mm:ss"
-                                    placeholder="请选择预计送货时间"
-                            />
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-                <el-row>
-                    <el-descriptions title="采购单明细" />
-                    <el-table :data="formData.data.jdOrderDetailsList" stripe style="width: 100%">
-        <!--            <el-table stripe style="width: 100%">-->
-                        <el-table-column prop="wareId" label="京东商品编号" width="180">
-                            <template #default="scope">
-                                <span :style="scope.row.productName=='' || scope.row.productName == undefined || scope.row.productName == 'undefined'?'color: red':''">{{scope.row.wareId}}</span>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="wareName" label="京东商品名称">
-                            <template #default="scope">
-                                <span :style="scope.row.productName=='' || scope.row.productName == undefined || scope.row.productName == 'undefined'?'color: red':''">{{scope.row.wareName}}</span>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="productName" label="产品名称" />
-                        <el-table-column prop="originalNum" label="采购数量" />
-                        <el-table-column prop="confirmNum" label="确认数量" >
-                            <template v-slot="scope">
-                                <el-form-item :rules="rules['confirmNum']">
-                                    <el-input-number :min="0" :step="1" :max="scope.row.originalNum" v-model="scope.row.confirmNum" placeholder="请输入确认数量"/>
-                                </el-form-item>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="purchasePrice" label="采购价" />
-                        <el-table-column prop="nonDeliveryReason" label="不满足发货原因">
-                            <template v-slot="scope">
-                                <el-form-item :rules="rules['nonDeliveryReason']">
-                                    <el-input v-model="scope.row.nonDeliveryReason" placeholder="请输入不满足发货原因" />
-                                </el-form-item>
-                            </template>
-                        </el-table-column>
-                    </el-table>
-                </el-row>
-            </el-form>
-            <template #footer>
-                <el-button @click="tellDialogVisible = false" size="large">取 消</el-button>
-                <el-button type="primary" @click="submitForm" size="large" :loading="submitLoading">采购单回告</el-button>
-            </template>
-        </el-dialog>
-
-        <!--详情-->
-        <el-dialog :z-index="1500" title="采购单详情" v-if="dialogVisible" v-model="formData.data" width="1500px" v-loading="loading">
-            <el-descriptions title="基础信息" />
-            <el-form label-width="auto" :rules="rules">
-                <el-row>
-                    <el-col :span="8">
-                        <el-form-item label="京东订单号:" :span="8">
-                            {{formData.data.orderId}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="订购时间:" :span="8" label-position="right">
-                            {{formData.data.createdDate}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="供应商名称:" :span="8">
-                            {{formData.data.providerName}}
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-                <el-row>
-                    <el-col :span="8">
-                        <el-form-item label="采购总金额:" :span="8">
-                            {{formData.data.totalPrice}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="配送中心名称:" :span="8">
-                            {{formData.data.deliverCenterName}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="采购员姓名:" :span="8">
-                            {{formData.data.purchaserName}}
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-                <el-row>
-                    <el-col :span="8">
-                        <el-form-item label="删除状态:" :span="8">
-                            {{formData.data.statusName}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="是否EPT定制:" :span="8">
-                            {{formData.data.isEptCustomized?'是':'否'}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="订单状态:" :span="8">
-                            {{formData.data.stateName}}
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-                <el-row>
-                    <el-col :span="8">
-                        <el-form-item label="完成时间:" :span="8">
-                            {{formData.data.completedDate}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="账期:" :span="8">
-                            {{formData.data.accountPeriod}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="收货负责人:" :span="8">
-                            {{formData.data.receiverName}}
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-                <el-row>
-                    <el-col :span="8">
-                        <el-form-item label="收货电话:" :span="8">
-                            {{formData.data.warehousePhone}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="详细地址:" :span="8">
-                            {{formData.data.address}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="采购类型:" :span="8">
-                            {{formData.data.orderTypeName}}
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-                <el-row>
-                    <el-col :span="8">
-                        <el-form-item label="订单属性:" :span="8">
-                            {{formData.data.orderAttributeName}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="回告状态:" :span="8">
-                            {{formData.data.confirmStateName}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="顾客单号:" :span="8">
-                            {{formData.data.customerOrderid}}
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-                <el-row>
-                    <el-col :span="8">
-                        <el-form-item label="品种数量:" :span="8">
-                            {{formData.data.wareVariety}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="预计到货时间:" :span="8">
-                            {{formData.data.deliveryTime}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="是否可回告:" :span="8">
-                            {{formData.data.isCanConfirm?"可回告":"不可回告"}}
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-                <el-row>
-                    <el-col :span="8">
-                        <el-form-item label="是否有差异:" :span="8">
-                            {{formData.data.isExistActualNumDif=='0'?"存在差异":"无差异"}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="是否已结算:" :span="8">
-                            {{formData.data.balanceStatus?"已结算":"未结算"}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="入库时间:" :span="8">
-                            {{formData.data.storageTime}}
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-                <el-row>
-                    <el-col :span="8">
-                        <el-form-item label="TC转运标识:" :span="8">
-                            {{formData.data.tcFlagName}}
-                        </el-form-item>
-                    </el-col>
-                    <el-col :span="8">
-                        <el-form-item label="预约时间:" :span="8">
-                            {{formData.data.bookTime}}
-                        </el-form-item>
-                    </el-col>
-                </el-row>
-                <el-row>
-                    <el-descriptions title="采购单明细" />
-                    <el-table :data="formData.data.jdOrderDetailsList" stripe style="width: 100%">
-                        <!--            <el-table stripe style="width: 100%">-->
-                        <el-table-column prop="wareId" label="京东商品编号" width="180">
-                            <template #default="scope">
-                                <span :style="scope.row.productName=='' || scope.row.productName == undefined || scope.row.productName == 'undefined'?'color: red':''">{{scope.row.wareId}}</span>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="wareName" label="京东商品名称">
-                            <template #default="scope">
-                                <span :style="scope.row.productName=='' || scope.row.productName == undefined || scope.row.productName == 'undefined'?'color: red':''">{{scope.row.wareName}}</span>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="productName" label="产品名称" />
-                        <el-table-column prop="deliverCenterName" label="配送中心名称" width="180" />
-                        <el-table-column prop="purchasePrice" label="采购价" />
-                        <el-table-column prop="originalNum" label="原始采购数量" />
-                        <el-table-column prop="confirmNum" label="回告数量" />
-                        <el-table-column prop="actualNum" label="实收数量" />
-                        <el-table-column prop="nonDeliveryReason" label="不满足原因" />
-                        <el-table-column prop="totalPrice" label="采购总金额" />
-                        <el-table-column prop="storeName" label="库房名称" />
-                        <el-table-column prop="wareProperty" label="EPT采购单定制相关信息" />
-                    </el-table>
-                </el-row>
-            </el-form>
-            <template #footer>
-                <el-button @click="dialogVisible = false" size="large">取 消</el-button>
-            </template>
-        </el-dialog>
-
-        <!--高级搜索-->
-        <el-dialog
-                :title="'高级检索'"
-                v-model="queryDialogVisible"
-                width="500px"
-                destroy-on-close
-        >
-            <el-form :model="sourceList.pagination" label-width="100px" label-position="top" >
-                <el-form-item label="采购单号">
-                    <el-input v-model="sourceList.pagination.orderId" placeholder="请输入采购单号" />
+                }" :action-list="[]" @get-list="getList" @moreSearch="() => (queryDialogVisible = true)">
+    </byTable>
+    <!--回告-->
+    <el-dialog :z-index="1500" title="采购单回告" v-if="tellDialogVisible" v-model="formData.data" width="1500px" v-loading="loading">
+      <el-descriptions title="基础信息" />
+      <el-form label-width="auto" :rules="rules">
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="采购单号:" :span="8">
+              {{formData.data.orderId}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="配送中心:" :span="8">
+              {{formData.data.deliverCenterName}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="入库时间:" :span="8">
+              {{formData.data.storageTime}}
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="预计送货时间:" :span="8">
+              <el-date-picker v-model="formData.data.deliveryTime" type="datetime" format="YYYY-MM-DD HH:mm:ss" value-format="YYYY-MM-DD HH:mm:ss"
+                              placeholder="请选择预计送货时间" />
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-descriptions title="采购单明细" />
+          <el-table :data="formData.data.jdOrderDetailsList" stripe style="width: 100%">
+            <!--            <el-table stripe style="width: 100%">-->
+            <el-table-column prop="wareId" label="京东商品编号" width="180">
+              <template #default="scope">
+                <span
+                      :style="scope.row.productName=='' || scope.row.productName == undefined || scope.row.productName == 'undefined'?'color: red':''">{{scope.row.wareId}}</span>
+              </template>
+            </el-table-column>
+            <el-table-column prop="wareName" label="京东商品名称">
+              <template #default="scope">
+                <span
+                      :style="scope.row.productName=='' || scope.row.productName == undefined || scope.row.productName == 'undefined'?'color: red':''">{{scope.row.wareName}}</span>
+              </template>
+            </el-table-column>
+            <el-table-column prop="productName" label="产品名称" />
+            <el-table-column prop="originalNum" label="采购数量" />
+            <el-table-column prop="confirmNum" label="确认数量">
+              <template v-slot="scope">
+                <el-form-item :rules="rules['confirmNum']">
+                  <el-input-number :min="0" :step="1" :max="scope.row.originalNum" v-model="scope.row.confirmNum" placeholder="请输入确认数量" />
                 </el-form-item>
-                <el-form-item label="京东商品编号">
-                    <el-input v-model="sourceList.pagination.wareId" placeholder="请输入京东商品编号" />
+              </template>
+            </el-table-column>
+            <el-table-column prop="purchasePrice" label="采购价" />
+            <el-table-column prop="nonDeliveryReason" label="不满足发货原因">
+              <template v-slot="scope">
+                <el-form-item :rules="rules['nonDeliveryReason']">
+                  <el-input v-model="scope.row.nonDeliveryReason" placeholder="请输入不满足发货原因" />
                 </el-form-item>
-            </el-form>
-            <template #footer>
-                <el-button @click="handleReset" size="large">重置</el-button>
-                <el-button @click="handleQuery" type="primary" size="large">搜索</el-button>
-            </template>
-        </el-dialog>
-    </div>
+              </template>
+            </el-table-column>
+          </el-table>
+        </el-row>
+      </el-form>
+      <template #footer>
+        <el-button @click="tellDialogVisible = false" size="large">取 消</el-button>
+        <el-button type="primary" @click="submitForm" size="large" :loading="submitLoading">采购单回告</el-button>
+      </template>
+    </el-dialog>
+
+    <!--详情-->
+    <el-dialog :z-index="1500" title="采购单详情" v-if="dialogVisible" v-model="formData.data" width="1500px" v-loading="loading">
+      <el-descriptions title="基础信息" />
+      <el-form label-width="auto" :rules="rules">
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="京东订单号:" :span="8">
+              {{formData.data.orderId}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="订购时间:" :span="8" label-position="right">
+              {{formData.data.createdDate}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="供应商名称:" :span="8">
+              {{formData.data.providerName}}
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="采购总金额:" :span="8">
+              {{formData.data.totalPrice}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="配送中心名称:" :span="8">
+              {{formData.data.deliverCenterName}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="采购员姓名:" :span="8">
+              {{formData.data.purchaserName}}
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="删除状态:" :span="8">
+              {{formData.data.statusName}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="是否EPT定制:" :span="8">
+              {{formData.data.isEptCustomized?'是':'否'}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="订单状态:" :span="8">
+              {{formData.data.stateName}}
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="完成时间:" :span="8">
+              {{formData.data.completedDate}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="账期:" :span="8">
+              {{formData.data.accountPeriod}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="收货负责人:" :span="8">
+              {{formData.data.receiverName}}
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="收货电话:" :span="8">
+              {{formData.data.warehousePhone}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="详细地址:" :span="8">
+              {{formData.data.address}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="采购类型:" :span="8">
+              {{formData.data.orderTypeName}}
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="订单属性:" :span="8">
+              {{formData.data.orderAttributeName}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="回告状态:" :span="8">
+              {{formData.data.confirmStateName}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="顾客单号:" :span="8">
+              {{formData.data.customerOrderid}}
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="品种数量:" :span="8">
+              {{formData.data.wareVariety}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="预计到货时间:" :span="8">
+              {{formData.data.deliveryTime}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="是否可回告:" :span="8">
+              {{formData.data.isCanConfirm?"可回告":"不可回告"}}
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="是否有差异:" :span="8">
+              {{formData.data.isExistActualNumDif=='0'?"存在差异":"无差异"}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="是否已结算:" :span="8">
+              {{formData.data.balanceStatus?"已结算":"未结算"}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="入库时间:" :span="8">
+              {{formData.data.storageTime}}
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-col :span="8">
+            <el-form-item label="TC转运标识:" :span="8">
+              {{formData.data.tcFlagName}}
+            </el-form-item>
+          </el-col>
+          <el-col :span="8">
+            <el-form-item label="预约时间:" :span="8">
+              {{formData.data.bookTime}}
+            </el-form-item>
+          </el-col>
+        </el-row>
+        <el-row>
+          <el-descriptions title="采购单明细" />
+          <el-table :data="formData.data.jdOrderDetailsList" stripe style="width: 100%">
+            <!--            <el-table stripe style="width: 100%">-->
+            <el-table-column prop="wareId" label="京东商品编号" width="120">
+              <template #default="scope">
+                <span
+                      :style="scope.row.productName=='' || scope.row.productName == undefined || scope.row.productName == 'undefined'?'color: red':''">{{scope.row.wareId}}</span>
+              </template>
+            </el-table-column>
+            <el-table-column prop="wareName" label="京东商品名称" min-width="200">
+              <template #default="scope">
+                <span
+                      :style="scope.row.productName=='' || scope.row.productName == undefined || scope.row.productName == 'undefined'?'color: red':''">{{scope.row.wareName}}</span>
+              </template>
+            </el-table-column>
+            <el-table-column prop="productName" label="产品名称" width="150" />
+            <el-table-column prop="deliverCenterName" label="配送中心名称" width="110" />
+            <el-table-column prop="purchasePrice" label="采购价" width="80" />
+            <el-table-column prop="originalNum" label="原始采购数量" width="110" />
+            <el-table-column prop="confirmNum" label="回告数量" width="80" />
+            <el-table-column prop="actualNum" label="实收数量" width="80" />
+            <el-table-column prop="nonDeliveryReason" label="不满足原因" width="100" />
+            <el-table-column prop="totalPrice" label="采购总金额" width="110" />
+            <el-table-column prop="storeName" label="库房名称" width="180" />
+            <el-table-column prop="wareProperty" label="EPT采购单定制相关信息" width="180" />
+          </el-table>
+        </el-row>
+      </el-form>
+      <template #footer>
+        <el-button @click="dialogVisible = false" size="large">取 消</el-button>
+      </template>
+    </el-dialog>
+
+    <!--高级搜索-->
+    <el-dialog :title="'高级检索'" v-model="queryDialogVisible" width="500px" destroy-on-close>
+      <el-form :model="sourceList.pagination" label-width="100px" label-position="top">
+        <el-form-item label="采购单号">
+          <el-input v-model="sourceList.pagination.orderId" placeholder="请输入采购单号" />
+        </el-form-item>
+        <el-form-item label="京东商品编号">
+          <el-input v-model="sourceList.pagination.wareId" placeholder="请输入京东商品编号" />
+        </el-form-item>
+      </el-form>
+      <template #footer>
+        <el-button @click="handleReset" size="large">重置</el-button>
+        <el-button @click="handleQuery" type="primary" size="large">搜索</el-button>
+      </template>
+    </el-dialog>
+  </div>
 </template>
 
 <script setup>
 import { ElMessage, ElMessageBox } from "element-plus";
 import byTable from "@/components/byTable/index";
 import byForm from "@/components/byForm/index";
-import {computed, nextTick, reactive, ref} from "vue";
+import { computed, nextTick, reactive, ref } from "vue";
 const { proxy } = getCurrentInstance();
 
 const router = useRouter();
@@ -312,18 +296,22 @@ const orderState = ref([]);
 const blessingTypeList = ref([]);
 const submitLoading = ref(false);
 const sourceList = ref({
-    data: [],
-    pagination: {
-        total: 0,
-        pageNum: 1,
-        pageSize: 10,
-    },
+  data: [],
+  pagination: {
+    total: 0,
+    pageNum: 1,
+    pageSize: 10,
+  },
 });
 
 let rules = ref({
-    deliverCenterId: [{ required: true, message: "请选择配送中心", trigger: "blur" }],
-    nonDeliveryReason: [{ required: true, message: "请输入不满足发货原因", trigger: "blur" }],
-    confirmNum: [{ required: true, message: "请输入确认数量", trigger: "blur" }]
+  deliverCenterId: [
+    { required: true, message: "请选择配送中心", trigger: "blur" },
+  ],
+  nonDeliveryReason: [
+    { required: true, message: "请输入不满足发货原因", trigger: "blur" },
+  ],
+  confirmNum: [{ required: true, message: "请输入确认数量", trigger: "blur" }],
 });
 
 const queryDialogVisible = ref(false);
@@ -332,389 +320,420 @@ const tellDialogVisible = ref(false);
 
 let modalType = ref("add");
 const selectConfig = computed(() => {
-    return [
-        {
-            label: "订单状态",
-            prop: "state",
-            data: orderState.value
-        },
-        {
-            label: "回告状态",
-            prop: "confirmState",
-            data: confirmState.value
-        },
-        {
-            label: "是否确认",
-            prop: "businessStatus",
-            data: [
-                {
-                    label: "未确认",
-                    value: "0",
-                },
-                {
-                    label: "已确认",
-                    value: "1",
-                },
-                {
-                    label: "已回告",
-                    value: "2",
-                },
-            ],
-        },
-        {
-            label: "是否可回告",
-            prop: "isCanConfirm",
-            data: [
-                {
-                    label: "可回告",
-                    value: true,
-                },
-                {
-                    label: "不可回告",
-                    value: false,
-                },
-            ],
-        },
-    ]});
-
-const config = computed(() => {
-    return [
-
-        {
-            attrs: {
-                label: "京东订单号",
-                align: "center",
-            },
-            renderHTML(row) {
-                return [
-                    {
-                        attrs: {
-                            label: row.orderId,
-                            type: "primary",
-                            text: true,
-                        },
-                        el: "button",
-                        click() {
-                            getDtl(row);
-                        },
-                    },
-                ];
-            },
-        },
-        {
-            attrs: {
-                label: "订购时间",
-                prop: "createdDate",
-                align: "center"
-            },
-        },
-        {
-            attrs: {
-                label: "供应商名称",
-                prop: "providerName",
-                align: "center"
-            },
-        },
-        {
-            attrs: {
-                label: "采购总金额",
-                prop: "totalPrice",
-                align: "center"
-            },
-        },
-        {
-            attrs: {
-                label: "配送中心名称",
-                prop: "deliverCenterName",
-                align: "center"
-            },
-        },
+  return [
+    {
+      label: "订单状态",
+      prop: "state",
+      data: orderState.value,
+    },
+    {
+      label: "回告状态",
+      prop: "confirmState",
+      data: confirmState.value,
+    },
+    {
+      label: "是否确认",
+      prop: "businessStatus",
+      data: [
         {
-            attrs: {
-                label: "订单状态",
-                prop: "state",
-                align: "center"
-            },
-            render(value) {
-                return proxy.dictValueLabel(value, orderState.value);
-            }
+          label: "未确认",
+          value: "0",
         },
         {
-            attrs: {
-                label: "回告状态",
-                prop: "confirmState",
-                align: "center"
-            },
-            render(value) {
-                return proxy.dictValueLabel(value, confirmState.value);
-            }
+          label: "已确认",
+          value: "1",
         },
         {
-            attrs: {
-                label: "是否可回告",
-                prop: "isCanConfirm",
-                align: "center"
-            },
-            render(value) {
-                return value?"可回告":"不可回告"
-            }
+          label: "已回告",
+          value: "2",
         },
+      ],
+    },
+    {
+      label: "是否可回告",
+      prop: "isCanConfirm",
+      data: [
         {
-            attrs: {
-                label: "详细地址",
-                prop: "address",
-                align: "center"
-            },
+          label: "可回告",
+          value: true,
         },
         {
-            attrs: {
-                label: "采购类型",
-                prop: "orderTypeName",
-                align: "center"
-            },
+          label: "不可回告",
+          value: false,
         },
-        {
-            attrs: {
-                label: "是否确认",
-                prop: "businessStatus",
-                align: "center",
-            },
-            render(value) {
-                let label = "未确认";
-                if(value == '1'){
-                    label = "已确认";
-                }else if (value == '2'){
-                    label = "已回告";
-                }
-                return label;
-            },
-        },
-        {
+      ],
+    },
+  ];
+});
+
+const config = computed(() => {
+  return [
+    {
+      attrs: {
+        label: "京东订单号",
+        align: "left",
+        width: 120,
+      },
+      renderHTML(row) {
+        return [
+          {
             attrs: {
-                label: "操作",
-                width: "300",
-                align: "right",
+              label: row.orderId,
+              type: "primary",
+              text: true,
             },
-            renderHTML(row) {
-                return [
-                    {
-                        attrs: {
-                            label: "详情",
-                            type: "primary",
-                            text: true,
-                        },
-                        el: "button",
-                        click() {
-                            getDtl(row);
-                        },
-                    },
-                    row.businessStatus==0?
-                        {
-                            attrs: {
-                                label: "采购单确认",
-                                type: "danger",
-                                text: true,
-                            },
-                            el: "button",
-                            click() {
-                                ElMessageBox.confirm("是否确认当前采购单状态?", "提示", {
-                                    confirmButtonText: "确定",
-                                    cancelButtonText: "取消",
-                                    type: "warning",
-                                }).then(() => {
-                                    confirmBusinessStatus(row);
-                                });
-                            },
-                        }
-                        :{},
-                    row.businessStatus==1 && row.isCanConfirm?
-                        {
-                            attrs: {
-                                label: "回告",
-                                type: "danger",
-                                text: true,
-                            },
-                            el: "button",
-                            click() {
-                                getTellDtl(row);
-                            },
-                        }
-                        :{},
-                ];
+            el: "button",
+            click() {
+              getDtl(row);
             },
-        },
-    ];
+          },
+        ];
+      },
+    },
+    {
+      attrs: {
+        label: "订购时间",
+        prop: "createdDate",
+        align: "left",
+        width: 155,
+      },
+    },
+    {
+      attrs: {
+        label: "供应商名称",
+        prop: "providerName",
+        align: "left",
+        width: 220,
+      },
+    },
+    {
+      attrs: {
+        label: "采购总金额",
+        prop: "totalPrice",
+        align: "left",
+        width: 110,
+      },
+      render(totalPrice) {
+        return proxy.moneyFormat(totalPrice, 2);
+      },
+    },
+    {
+      attrs: {
+        label: "配送中心名称",
+        prop: "deliverCenterName",
+        align: "left",
+        width: 110,
+      },
+    },
+    {
+      attrs: {
+        label: "订单状态",
+        prop: "state",
+        align: "left",
+        width: 80,
+      },
+      render(value) {
+        return proxy.dictValueLabel(value, orderState.value);
+      },
+    },
+    {
+      attrs: {
+        label: "回告状态",
+        prop: "confirmState",
+        align: "left",
+        width: 80,
+      },
+      render(value) {
+        return proxy.dictValueLabel(value, confirmState.value);
+      },
+    },
+    {
+      attrs: {
+        label: "是否可回告",
+        prop: "isCanConfirm",
+        align: "left",
+        width: 100,
+      },
+      render(value) {
+        return value ? "可回告" : "不可回告";
+      },
+    },
+    {
+      attrs: {
+        label: "详细地址",
+        prop: "address",
+        align: "left",
+        "min-width": 200,
+      },
+    },
+    {
+      attrs: {
+        label: "采购类型",
+        prop: "orderTypeName",
+        align: "left",
+        width: 100,
+      },
+    },
+    {
+      attrs: {
+        label: "是否确认",
+        prop: "businessStatus",
+        align: "left",
+        width: 80,
+      },
+      render(value) {
+        let label = "未确认";
+        if (value == "1") {
+          label = "已确认";
+        } else if (value == "2") {
+          label = "已回告";
+        }
+        return label;
+      },
+    },
+    {
+      attrs: {
+        label: "操作",
+        width: "150",
+        align: "center",
+        fixed: "right",
+      },
+      renderHTML(row) {
+        return [
+          //   {
+          //     attrs: {
+          //       label: "详情",
+          //       type: "primary",
+          //       text: true,
+          //     },
+          //     el: "button",
+          //     click() {
+          //       getDtl(row);
+          //     },
+          //   },
+          row.businessStatus == 0
+            ? {
+                attrs: {
+                  label: "采购单确认",
+                  type: "danger",
+                  text: true,
+                },
+                el: "button",
+                click() {
+                  ElMessageBox.confirm("是否确认当前采购单状态?", "提示", {
+                    confirmButtonText: "确定",
+                    cancelButtonText: "取消",
+                    type: "warning",
+                  }).then(() => {
+                    confirmBusinessStatus(row);
+                  });
+                },
+              }
+            : {},
+          row.businessStatus == 1 && row.isCanConfirm
+            ? {
+                attrs: {
+                  label: "回告",
+                  type: "danger",
+                  text: true,
+                },
+                el: "button",
+                click() {
+                  getTellDtl(row);
+                },
+              }
+            : {},
+        ];
+      },
+    },
+  ];
 });
 
 let formData = reactive({
-    data: {
-        coverList:[],
-        audioList:[],
-    },
+  data: {
+    coverList: [],
+    audioList: [],
+  },
 });
 const formOption = reactive({
-    inline: true,
-    labelWidth: 100,
-    itemWidth: 100,
-    rules: [],
+  inline: true,
+  labelWidth: 100,
+  itemWidth: 100,
+  rules: [],
 });
 const byform = ref(null);
 
 const formConfig = computed(() => {
-    return [
-        {
-            type: "input",
-            prop: "orderId",
-            label: "京东订单号",
-            readonly: true
-        },
-        {
-            type: "input",
-            prop: "createdDate",
-            label: "订购时间",
-            readonly: true
-        },
-        {
-            type: "input",
-            label: "采购单明细,应该是个一对多还没弄",
-            readonly: true
-        },
-    ];
+  return [
+    {
+      type: "input",
+      prop: "orderId",
+      label: "京东订单号",
+      readonly: true,
+    },
+    {
+      type: "input",
+      prop: "createdDate",
+      label: "订购时间",
+      readonly: true,
+    },
+    {
+      type: "input",
+      label: "采购单明细,应该是个一对多还没弄",
+      readonly: true,
+    },
+  ];
 });
 
 const getDictlist = async () => {
-    proxy.getDictOne(["delivery_center", "confirmState", "OrderState"]).then((res) => {
-        deliveryCenter.value = res["delivery_center"].map((x) => ({
-            label: x.dictValue,
-            value: x.dictKey,
-        }));
-        confirmState.value = res["confirmState"].map((x) => ({
-            label: x.dictValue,
-            value: x.dictKey,
-        }));
-        orderState.value = res["OrderState"].map((x) => ({
-            label: x.dictValue,
-            value: x.dictKey,
-        }));
+  proxy
+    .getDictOne(["delivery_center", "confirmState", "OrderState"])
+    .then((res) => {
+      deliveryCenter.value = res["delivery_center"].map((x) => ({
+        label: x.dictValue,
+        value: x.dictKey,
+      }));
+      confirmState.value = res["confirmState"].map((x) => ({
+        label: x.dictValue,
+        value: x.dictKey,
+      }));
+      orderState.value = res["OrderState"].map((x) => ({
+        label: x.dictValue,
+        value: x.dictKey,
+      }));
     });
 };
 
 const getList = async (req) => {
-    sourceList.value.pagination = { ...sourceList.value.pagination, ...req };
-    loading.value = true;
-    proxy.post("/jdOrder/page", sourceList.value.pagination).then((res) => {
-        sourceList.value.data = res.rows;
-        sourceList.value.pagination.total = res.total;
-        setTimeout(() => {
-            loading.value = false;
-        }, 200);
-    });
+  sourceList.value.pagination = { ...sourceList.value.pagination, ...req };
+  loading.value = true;
+  proxy.post("/jdOrder/page", sourceList.value.pagination).then((res) => {
+    sourceList.value.data = res.rows;
+    sourceList.value.pagination.total = res.total;
+    setTimeout(() => {
+      loading.value = false;
+    }, 200);
+  });
 };
 
 const openModal = () => {
-    dialogVisible.value = true;
-    modalType.value = "add";
-    formData.data = {
-        content:'',
-    };
+  dialogVisible.value = true;
+  modalType.value = "add";
+  formData.data = {
+    content: "",
+  };
 };
 const selection = ref({
-    data: [],
+  data: [],
 });
 const select = (_selection, row) => {
-    selection.value.data = _selection;
+  selection.value.data = _selection;
 };
 
 const getDtl = (row) => {
-    modalType.value = "edit";
-    proxy.post("/jdOrder/detail", { id: row.id }).then((res) => {
-        formData.data = res;
-        dialogVisible.value = true;
-    });
+  modalType.value = "edit";
+  proxy.post("/jdOrder/detail", { id: row.id }).then((res) => {
+    formData.data = res;
+    dialogVisible.value = true;
+  });
 };
 
 const getTellDtl = (row) => {
-    modalType.value = "edit";
-    proxy.post("/jdOrder/detail", { id: row.id }).then((res) => {
-        formData.data = res;
-        tellDialogVisible.value = true;
-    });
+  modalType.value = "edit";
+  proxy.post("/jdOrder/detail", { id: row.id }).then((res) => {
+    formData.data = res;
+    tellDialogVisible.value = true;
+  });
 };
 
-
 /**
  * 确认采购单状态
  * @param row
  */
 const confirmBusinessStatus = (row) => {
-    let businessStatus = row.businessStatus=='1' ? 0 : 1;
-    proxy.post("/jdOrder/confirmBusinessStatus", { id: row.id, businessStatus: businessStatus }).then(
-        () => {
-            ElMessage({
-                message: "确认成功",
-                type: "success",
-            });
-            dialogVisible.value = false;
-            submitLoading.value = false;
-            getList();
-        },
-        (err) => {
-            console.log(err);
-            submitLoading.value = false;
-        }
+  let businessStatus = row.businessStatus == "1" ? 0 : 1;
+  proxy
+    .post("/jdOrder/confirmBusinessStatus", {
+      id: row.id,
+      businessStatus: businessStatus,
+    })
+    .then(
+      () => {
+        ElMessage({
+          message: "确认成功",
+          type: "success",
+        });
+        dialogVisible.value = false;
+        submitLoading.value = false;
+        getList();
+      },
+      (err) => {
+        console.log(err);
+        submitLoading.value = false;
+      }
     );
-}
+};
 
 //订单回告
 const submitForm = () => {
-    ElMessageBox.confirm("是否确认回告当前采购单?", "提示", {
-        confirmButtonText: "确定",
-        cancelButtonText: "取消",
-        type: "warning",
-    }).then(() => {
-        submitLoading.value = true;
-        //TODO 这里应该是订单回告
-        proxy.post("/jdOrder/tellBackOrer", formData.data).then(
-            () => {
-                ElMessage({
-                    message: "回告成功",
-                    type: "success",
-                });
-                tellDialogVisible.value = false;
-                submitLoading.value = false;
-                getList();
-            },
-            (err) => {
-                console.log(err);
-                submitLoading.value = false;
-            }
-        );
-    });
+  ElMessageBox.confirm("是否确认回告当前采购单?", "提示", {
+    confirmButtonText: "确定",
+    cancelButtonText: "取消",
+    type: "warning",
+  }).then(() => {
+    submitLoading.value = true;
+    //TODO 这里应该是订单回告
+    proxy.post("/jdOrder/tellBackOrer", formData.data).then(
+      () => {
+        ElMessage({
+          message: "回告成功",
+          type: "success",
+        });
+        tellDialogVisible.value = false;
+        submitLoading.value = false;
+        getList();
+      },
+      (err) => {
+        console.log(err);
+        submitLoading.value = false;
+      }
+    );
+  });
 };
 
-
 //高级搜索
 const handleReset = () => {
-    sourceList.value.pagination = {
-        pageNum: sourceList.value.pagination.pageNum,
-        pageSize: sourceList.value.pagination.pageSize,
-        arr: [],
-    };
-    handleQuery();
+  sourceList.value.pagination = {
+    pageNum: sourceList.value.pagination.pageNum,
+    pageSize: sourceList.value.pagination.pageSize,
+    arr: [],
+  };
+  handleQuery();
 };
 
 const handleQuery = () => {
-    if (sourceList.value.pagination.arr && sourceList.value.pagination.arr.length > 1) {
-        sourceList.value.pagination.purchaseStartTime = sourceList.value.pagination.arr[0];
-        sourceList.value.pagination.purchaseEndTime = sourceList.value.pagination.arr[1];
-    }
-    queryDialogVisible.value = false;
-    getList();
+  if (
+    sourceList.value.pagination.arr &&
+    sourceList.value.pagination.arr.length > 1
+  ) {
+    sourceList.value.pagination.purchaseStartTime =
+      sourceList.value.pagination.arr[0];
+    sourceList.value.pagination.purchaseEndTime =
+      sourceList.value.pagination.arr[1];
+  }
+  queryDialogVisible.value = false;
+  getList();
 };
 
-getDictlist()
-getList()
+getDictlist();
+getList();
 </script>
 
 <style lang='scss' scoped>
+.tenant {
+  padding: 20px;
+}
+:deep(.el-form-item--default) {
+  margin-bottom: 0px;
+}
 </style>