| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763 | <template>  <div>    <basic-container v-show="isShow">      <avue-crud :option="option" :data="dataList" ref="crud" v-model="form" :page.sync="page" @row-del="rowDel"        @row-update="rowUpdate" :before-open="beforeOpen" :before-close="beforeClose" :search.sync="search"        @row-save="rowSave" @saveColumn="saveColumn" @search-change="searchChange" @search-reset="searchReset"        @selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange"        @refresh-change="refreshChange" @on-load="onLoad" @tree-load="treeLoad" :cell-style="tableRowClassName"        :table-loading="loading" @expand-change="expandChange" @resetColumn="resetColumn"        @search-criteria-switch="searchCriteriaSwitch">        <template slot-scope="scope" slot="expand">          <el-table :data="scope.row.insideList" v-loading="scope.row.loading" :cell-style="tableRowClassName">            <el-table-column label="产品分类" prop="priceCategory" align="center" show-overflow-tooltip width="200">            </el-table-column>            <el-table-column label="价格类别" prop="priceType" align="center" show-overflow-tooltip width="180">            </el-table-column>            <el-table-column label="商品名称" prop="cname" align="center" show-overflow-tooltip width="120">            </el-table-column>            <el-table-column label="编码" prop="code" align="center" show-overflow-tooltip width="120"></el-table-column>            <el-table-column label="规格型号" prop="typeno" align="center" show-overflow-tooltip width="120">            </el-table-column>            <el-table-column label="供应商" prop="corpName" align="center" show-overflow-tooltip width="120">            </el-table-column>            <el-table-column label="订货数量" prop="orderQuantity" align="center" show-overflow-tooltip width="180">            </el-table-column>            <el-table-column label="发货数量" prop="actualQuantity" align="center" show-overflow-tooltip width="200">            </el-table-column>            <el-table-column label="库存" prop="storageQuantity" align="center" show-overflow-tooltip width="200">            </el-table-column>            <el-table-column label="采购价格" prop="purchaseAmount" align="center" show-overflow-tooltip width="200">            </el-table-column>            <el-table-column label="最新单价" prop="price" align="center" show-overflow-tooltip width="200">            </el-table-column>            <el-table-column label="金额" prop="amount" align="center" show-overflow-tooltip width="200">            </el-table-column>          </el-table>        </template>        <template slot-scope="scope" slot="orderNo">          <span style="color: #409EFF;cursor: pointer" @click.stop="beforeOpenPage(scope.row, scope.index)">{{scope.row.orgOrderNo}}</span>        </template>        <template slot="corpIdSearch">          <crop-select v-model="search.corpId" corpType="KH"></crop-select>        </template>        <template slot-scope="scope" slot="corpId">          <span style="color: #409EFF;cursor: pointer" @click.stop="beforeOpenPage(scope.row, scope.index)">{{scope.row.corpsName}}</span>        </template>        <template slot-scope="scope" slot="createUser">          {{ scope.row.createUserName }}        </template>        <template slot-scope="scope" slot="createPurchase">          {{ scope.row.createPurchase == 1 ? "是" : "否" }}        </template>        <template slot-scope="scope" slot="createFreight">          {{ scope.row.createFreight == 1 ? "是" : "否" }}        </template>        <template slot="status" slot-scope="scope">          <span v-if="scope.row.status == 0">暂存</span>          <span v-else-if="scope.row.status == 1">提交请核</span>          <span v-else-if="scope.row.status == 2">审批中</span>          <span v-else-if="scope.row.status == 3">审批通过</span>        </template>        <template slot="specialCheck" slot-scope="scope">          <span v-if="scope.row.specialCheck == 0">否</span>          <span v-else>是</span>        </template>        <template slot="specialCheckStatus" slot-scope="scope">          <span v-if="scope.row.specialCheckStatus == 0">未提交</span>          <span v-if="scope.row.specialCheckStatus == 1">提交</span>          <span v-if="scope.row.specialCheckStatus == 2">审批中</span>          <span v-if="scope.row.specialCheckStatus == 3">审批通过</span>        </template>        <template slot="menuLeft" slot-scope="{ size }">          <el-button type="success" :size="size" @click="copyOrder" :disabled="single">复制单据</el-button>          <el-button type="info" :size="size" icon="el-icon-printer" @click="exportExcel">导 出</el-button>          <el-button type="info" size="small" icon="el-icon-download" @click="exportHandle">库 存</el-button>        </template>        <template slot-scope="scope" slot="menu">          <el-button type="text" size="small" v-debounce @click="saveSell(scope.row)"            :disabled="scope.row.status < 3 || scope.row.createPurchase == 1" v-if="isProcurements">生成采购</el-button>          <el-button type="text" size="small" v-debounce @click="customerReceipt(scope.row)" :disabled="            !scope.row.status ||            scope.row.status < 3 ||            scope.row.createFreight == 1          ">客户收货</el-button>          <el-button type="text" icon="el-icon-delete" size="small" @click.stop="rowDel(scope.row, scope.index)"            :disabled="scope.row.status > 0">删除          </el-button>        </template>      </avue-crud>    </basic-container>    <detail-page ref="detail" :isProcurements = "isProcurements" @goBack="goBack" :detailData="detailData" v-if="!isShow"></detail-page>  </div></template><script>import option from "./configuration/mainList.json";import {  customerList,  typeSave,  deleteDetails,  saveSell,  detail,  generateShipment,  genClient,  warehouseList,  isProcurement} from "@/api/basicData/configuration";import detailPage from "./detailsPageEdit";import search from "../../../page/index/search";import { defaultDate } from "@/util/date";import { getToken } from "@/util/auth";import os from "os";import { gainUser } from "@/api/basicData/customerInquiry";import { getCurrentDate } from "@/util/date";export default {  name: "customerInformation",  components: {    detailPage  },  data() {    return {      loading: false,      configuration: {        multipleChoices: false,        multiple: false,        collapseTags: false,        placeholder: "请点击右边按钮选择",        dicData: [],        clearable: true      },      form: {},      option: {},      parentId: 0,      search: {},      dataList: [],      isProcurements:true,      page: {        pageSize: 10,        currentPage: 1,        total: 0,        pageSizes: [10, 50, 100, 200, 300]      },      // 非单个禁用      single: true,      // 非多个禁用      multiple: true,      selection: [],      isShow: true,      detailData: {},      warehouseTypeOption: [],      warehouseList: []    };  },  async created() {    // this.search.businesDate = defaultDate(1);    this.search.createTime = defaultDate(3);    // this.option = option    this.option = await this.getColumnData(this.getColumnName(14), option);    this.getWorkDicts("payment_term").then(res => {      this.findObject(this.option.column, "paymentType").dicData =        res.data.data;    });    this.getWorkDicts("order_status").then(res => {      this.findObject(this.option.column, "orderStatus").dicData =        res.data.data;    });    gainUser().then(res => {      this.findObject(this.option.column, "createUser").dicData = res.data.data;    });    let i = 0;    this.option.column.forEach(item => {      if (item.search) i++;    });    if (i % 3 !== 0) {      const num = 3 - Number(i % 3);      this.option.searchMenuSpan = num * 8;      this.option.searchMenuPosition = "right";    }    this.option.column.forEach(item => {      if (item.pickerOptions) {        item.pickerOptions = {          shortcuts: [            {              text: "最近一周",              onClick(picker) {                const end = new Date();                const start = new Date();                start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);                picker.$emit("pick", [start, end]);              }            },            {              text: "最近一个月",              onClick(picker) {                const end = new Date();                const start = new Date();                start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);                picker.$emit("pick", [start, end]);              }            },            {              text: "最近三个月",              onClick(picker) {                const end = new Date();                const start = new Date();                start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);                picker.$emit("pick", [start, end]);              }            }          ]        };      }    });    this.getWorkDicts("warehouseType").then(res => {      this.warehouseTypeOption = res.data.data    })    warehouseList().then(res => {      this.warehouseList = res.data.data.records    })  },  activated() {    setTimeout(() => {      if (this.$route.query.id) {        this.isShow = true;        this.beforeOpenPage({ id: this.$route.query.id });      }      if (this.$route.query.check) {        this.isShow = true;        // this.beforeOpenPage({id: this.$route.query.check.billId})        this.detailData = {          id: this.$route.query.check.billId,          check: this.$route.query.check,          auditId: this.$route.query.check.id        };        this.isShow = false;        this.$store.commit("DOMXS_IN_DETAIL");      }      if (this.$route.query.params) {        this.beforeOpenPage({ id: this.$route.query.params });      }    }, 100);  },  methods: {    searchCriteriaSwitch(type) {      if (type) {        this.option.height = this.option.height - 190;      } else {        this.option.height = this.option.height + 190;      }      this.$refs.crud.getTableHeight();    },    tableRowClassName({ row, column, rowIndex, columnIndex }) {      if (row.orderStatus == "录入" && columnIndex == 19) {        return {          background: "#eceb3c"        };      } else if (row.orderStatus == "成交") {        return "success-row";      } else if (row.orderStatus == "已报价") {        return "quote-row";      } else if (row.orderStatus == "未成交") {        return "warning-row";      }      return "padding:0;height:40px;";    },    //删除列表后面的删除按钮触发触发(row, index, done)    rowDel(row, index, done) {      this.$confirm("确定将选择数据删除?", {        confirmButtonText: "确定",        cancelButtonText: "取消",        type: "warning"      })        .then(() => {          return deleteDetails(row.id);        })        .then(() => {          this.$message({            type: "success",            message: "操作成功!"          });          this.page.currentPage = 1;          this.onLoad(this.page, { parentId: 0 });        });    },    //修改时的修改按钮点击触发    rowUpdate(row, index, done, loading) {      typeSave(row).then(        () => {          this.$message({            type: "success",            message: "操作成功!"          });          // 数据回调进行刷新          done(row);        },        error => {          window.console.log(error);          loading();        }      );    },    //新增修改时保存触发    rowSave(row, done, loading) {      typeSave(row).then(res => {        console.log(res);        done();      });    },    //查询全部    initData() {      customerList().then(res => {        console.log(this.form);        const column = this.findObject(this.option.column, "parentId");        column.dicData = res.data.data.records;      });    },    //新增子项触发    handleAdd(row) {      this.parentId = row.id;      const column = this.findObject(this.option.column, "parentId");      column.value = row.id;      column.addDisabled = true;      this.$refs.crud.rowAdd();    },    closeDetailPage() {      this.isShow = true;    },    //查看跳转页面    beforeOpenPage(row, index) {      const data = {        moduleName: "xs",        tableName: "business_order",        billId: row.id,        no: localStorage.getItem("browserID")      };      this.checkLock(data).then(res => {          if (res.data.code == 200) {            this.detailData = {              seeDisabled: true,              id: row.id            };            this.isShow = false;            this.$store.commit("DOMXS_IN_DETAIL");          }        }).catch(err => {          this.detailData = {            id: row.id,            seeDisabled: true,            opDisabled: true          };          this.isShow = false;          this.$store.commit("DOMXS_IN_DETAIL");        });    },    //新增跳转页面    beforeOpen(row, index) {      this.detailData = {        id: row.id      };      this.isShow = false;      this.$store.commit("DOMXS_IN_DETAIL");    },    editOpen(row, index) {      this.detailData = {        id: row.id      };      this.isShow = false;      this.$store.commit("DOMXS_IN_DETAIL");    },    // 复制新单    copyOrder() {      const id = this.selection[0].id;      this.detailData = {        copyId: id      };      this.isShow = false;      this.$store.commit("DOMXS_IN_DETAIL");    },    //点击新增时触发    beforeClose(done) {      this.parentId = "";      const column = this.findObject(this.option.column, "parentId");      column.value = "";      column.addDisabled = false;      done();    },    //点击搜索按钮触发    searchChange(params, done) {      if (params.businesDate) {        params.orderStartDate = params.businesDate[0] + " " + "00:00:00";        params.orderEndDate = params.businesDate[1] + " " + "23:59:59";        delete params.businesDate;      }      if (params.requiredDeliveryDate) {        params.deliveryStartDate =          params.requiredDeliveryDate[0] + " " + "00:00:00";        params.deliveryEndDate =          params.requiredDeliveryDate[1] + " " + "23:59:59";        this.$delete(params, "requiredDeliveryDate");      }      if (params.requiredArrivalDate) {        params.arrivalDateStart =          params.requiredArrivalDate[0] + " " + "00:00:00";        params.arrivalDateEnd =          params.requiredArrivalDate[1] + " " + "23:59:59";        this.$delete(params, "requiredArrivalDate");      }      if (params.actualDeliveryDate) {        params.actualDeliveryDateStart =          params.actualDeliveryDate[0] + " " + "00:00:00";        params.actualDeliveryDateEnd =          params.actualDeliveryDate[1] + " " + "23:59:59";        this.$delete(params, "actualDeliveryDate");      }      if (params.createTime) {        params.createTimeStart = params.createTime[0] + " " + "00:00:00";        params.createTimeEnd = params.createTime[1] + " " + "23:59:59";        this.$delete(params, "createTime");      }      this.page.currentPage = 1;      this.onLoad(this.page, params);      done();    },    searchReset() {      this.configuration.dicData = [];    },    // 选择框    selectionChange(list) {      this.selection = list;      this.single = list.length !== 1;    },    currentChange(currentPage) {      this.page.currentPage = currentPage;    },    sizeChange(pageSize) {      this.page.pageSize = pageSize;    },    //列表刷新触发    refreshChange() {      this.dataList.forEach(item => {        this.$refs.crud.toggleRowExpansion(item, false);      });      this.page.currentPage = 1;      this.onLoad(this.page, this.search);    },    // 表格展开触发    expandChange(row, index) {      if (row.loading) {        detail(row.id).then(res => {          row.insideList = res.data.data.orderItemsList;          row.loading = false;        });      }    },    onLoad(page, params) {      // 重置掉展开      this.dataList.forEach(item => {        this.$refs.crud.toggleRowExpansion(item, false);      });      let data = this.gobackSearch(params);      console.log(data)      let queryParams = Object.assign({}, data, {        size: page.pageSize,        current: page.currentPage,        billType: "XS",        corpsTypeId: this.treeDeptId      });      this.loading = true;      customerList(queryParams)        .then(res => {          this.dataList = res.data.data.records;          this.dataList.forEach(item => {            this.$set(item, "insideList", []);            this.$set(item, "loading", true);          });          this.page.total = res.data.data.total;          this.option.height = window.innerHeight - 240;        })        .finally(() => {          this.loading = false;        });                isProcurement({"param":"synchronous"})          .then(res=>{            this.isProcurements = res.data.data          })    },    //树桩列点击展开触发    treeLoad(tree, treeNode, resolve) {      const parentId = tree.id;      customerList({ parentId: parentId }).then(res => {        resolve(res.data.data.records);      });    },    goBack() {      this.detailData = this.$options.data().detailData;      if (JSON.stringify(this.$route.query) != "{}") {        this.$router.$avueRouter.closeTag();        this.$router.push({          path: "/businessManagement/salesOrder/index"        });      }      this.dataList.forEach(item => {        this.$refs.crud.toggleRowExpansion(item, false);      });      this.isShow = true;      this.onLoad(this.page, this.search);    },    gobackSearch(params) {      params = Object.assign({}, this.search);      if (params.businesDate && params.businesDate != "") {        params.orderStartDate = params.businesDate[0] + " " + "00:00:00";        params.orderEndDate = params.businesDate[1] + " " + "23:59:59";        this.$delete(params, "businesDate");      }      if (params.receiptTime && params.receiptTime != "") {        params.receiptTimeStart = params.receiptTime[0] + " " + "00:00:00";        params.receiptTimeEnd = params.receiptTime[1] + " " + "23:59:59";        this.$delete(params, "receiptTime");      }      if (params.arrivalTime && params.arrivalTime != "") {        params.arrivalTimeStart = params.arrivalTime[0] + " " + "00:00:00";        params.arrivalTimeEnd = params.arrivalTime[1] + " " + "23:59:59";        this.$delete(params, "arrivalTime");      }      if (params.requiredDeliveryDate && params.requiredDeliveryDate != "") {        params.deliveryStartDate =          params.requiredDeliveryDate[0] + " " + "00:00:00";        params.deliveryEndDate =          params.requiredDeliveryDate[1] + " " + "23:59:59";        this.$delete(params, "requiredDeliveryDate");      }      if (params.requiredArrivalDate && params.requiredArrivalDate != "") {        params.arrivalDateStart =          params.requiredArrivalDate[0] + " " + "00:00:00";        params.arrivalDateEnd =          params.requiredArrivalDate[1] + " " + "23:59:59";        this.$delete(params, "requiredArrivalDate");      }      if (params.actualDeliveryDate && params.actualDeliveryDate != "") {        params.actualDeliveryDateStart =          params.actualDeliveryDate[0] + " " + "00:00:00";        params.actualDeliveryDateEnd =          params.actualDeliveryDate[1] + " " + "23:59:59";        this.$delete(params, "actualDeliveryDate");      }      if (params.createTime && params.createTime != "") {        params.createTimeStart = params.createTime[0] + " " + "00:00:00";        params.createTimeEnd = params.createTime[1] + " " + "23:59:59";        this.$delete(params, "createTime");      }      return params;    },    exportExcel() {      let data = this.gobackSearch()      const routeData = this.$router.resolve({        path: '/api/blade-purchase-sales/order/saleOrderExport',      //跳转目标窗口的地址        query: {          'Blade-Auth': getToken(),          ...data    //括号内是要传递给新窗口的参数        }      })      window.open(routeData.href.slice(1, routeData.href.length));    },    //列保存触发    async saveColumn() {      /**       * 已定义全局方法,直接使用,saveColumnData保存列数据方法,参数传值(表格名称,当前表格的option数据)       * 已定义全局方法,直接使用,getColumnName方法用来获取枚举值,参数根据自己定义的code值获取中文名       * 一定要执行异步操作,要等接口成功返回,才能执行下一行代码       */      const inSave = await this.saveColumnData(        this.getColumnName(14),        this.option      );      if (inSave) {        this.$message.success("保存成功");        //关闭窗口        this.$refs.crud.$refs.dialogColumn.columnBox = false;        this.$nextTick(() => {          this.$refs.crud.doLayout();        });      }    },    async resetColumn() {      this.option = option;      const inSave = await this.delColumnData(this.getColumnName(14), option);      if (inSave) {        this.$nextTick(() => {          this.$refs.crud.doLayout();        });        this.$message.success("重置成功");        //关闭窗口        this.$refs.crud.$refs.dialogColumn.columnBox = false;      }    },    // 导出    exportHandle() {      this.$confirm("是否导出产品信息?", "提示", {        confirmButtonText: "确定",        cancelButtonText: "取消",        type: "warning"      })        .then(() => {          window.open(            `/api/blade-client/goodsdesc/export-out-info?${this.website.tokenHeader            }=${getToken()}`          );        })        .catch(() => {          this.$message({            type: "info",            message: "已取消" //          });        });    },    // 生成采购    saveSell(row) {      if (        Number(row.settlmentAmount) < Number(row.debitAmount) &&        row.specialCheckStatus != 3      )        return this.$message.error("收款未收齐,禁止生成采购单");      this.$confirm("是否生成采购单?", {        confirmButtonText: "确定",        cancelButtonText: "取消",        type: "warning"      }).then(() => {        this.loading = true        saveSell(row.id).then(res => {          if (res.data.code == 200) {            this.$message.success("生成成功");          }        }).finally(() => {          this.loading = false;          this.onLoad(this.page, this.search);        })      });    },    customerReceipt(row) {      if (this.$store.getters.inStatus) {        this.$alert("客户收货存在,请保存客户收货再进行操作", "温馨提示", {          confirmButtonText: "确定",          type: "warning",          callback: action => { }        });      } else {        let arr = [];        this.openFullScreen(false, "正在生成客户收货...");        detail(row.id).then(res => {          console.log('detail',res.data.data);            arr = res.data.data.orderItemsList              ? res.data.data.orderItemsList              : [];            if (arr.length === 0)              return this.$message.error("该单子明细为空,不能生成客户收货");            let ids = [];            let storageIds = res.data.data.storageId            arr.forEach(item => ids.push(item.id));            this.$confirm("此操作将进行客户收货,是否继续?", {              confirmButtonText: "确定",              cancelButtonText: "取消",              type: "warning"            }).then(() => {              this.openFullScreen(false, "正在生成客户收货...");              res.data.data.orgId = res.data.data.id              res.data.data.deliveryStatus = '录入'              res.data.data.srcOrderNo = res.data.data.orgOrderNo              res.data.data.arrivalContact = res.data.data.corpAttn              res.data.data.arrivalTel = res.data.data.corpTel              res.data.data.totalWeight = res.data.data.cartonWeight              res.data.data.totalVolumn = res.data.data.cntrVolumn              res.data.data.deliveryItemsList = res.data.data.orderItemsList              res.data.data.deliveryFeesList = res.data.data.orderFeesList              res.data.data.salesCompany = res.data.data.belongToCorpId              res.data.data.deliveryAmount = 0              res.data.data.totalQuantity = 0              res.data.data.totalCost = 0              res.data.data.billType = 'FH'              res.data.data.saleman = res.data.data.chargeMember              res.data.data.orderItemsList.forEach(item => {                item.containerVolume = item.cntrVolumn                item.actualWeight = item.cartonWeight                item.specificationAndModel = item.itemType                item.orgOrderNo = res.data.data.orgOrderNo                item.srcOrderNo = res.data.data.srcOrderNo                item.srcId = item.id                item.actualQuantity = (Number(item.orderQuantity) - Number(item.actualQuantity))                item.arrivalQuantity = item.actualQuantity                item.deliveryAmount = item.amount                item.purchaseTotalAmount = (Number(item.purchaseAmount) * Number(item.actualQuantity))                item.purchaseTotalAmount = item.purchaseTotalAmount.toFixed(2)                item.inventoryNumber = item.storageQuantity                res.data.data.deliveryAmount += Number(item.deliveryAmount)                res.data.data.totalQuantity += Number(item.actualQuantity)                res.data.data.totalCost += Number(item.deliveryAmount)                delete item.id                delete item.pid                delete item.createTime                delete item.createUser                delete item.status                delete item.updateTime                delete item.updateUser              })              res.data.data.orderFeesList.forEach(item => {                delete item.createDept                delete item.createTime                delete item.createUser                delete item.id                delete item.isDeleted                delete item.pid                delete item.status                delete item.tenantId                delete item.updateTime                delete item.updateUser              })              this.warehouseTypeOption.forEach((item, index) => {                if (index == 0) {                  res.data.data.warehouseType = item.dictValue                }              })              this.warehouseList.forEach((item, index) => {                if (index == 0) {                  res.data.data.storageId = item.id                }              })              res.data.data.businessDate = getCurrentDate()              delete res.data.data.createTime              delete res.data.data.id              delete res.data.data.sysNo              delete res.data.data.corpName              delete res.data.data.belongToCorpList              //上面接口返回的storageId赋给下面的              res.data.data.storageId = storageIds              genClient(res.data.data).then(() => {                this.$message.success('客户收货成功')                this.openFullScreen(true);                this.onLoad(this.page, this.search);              })            });          }).finally(() => {            this.openFullScreen(true);          });      }    },    //遮罩层    openFullScreen(res, text) {      const loading = this.$loading({        lock: true,        text: text,        spinner: "el-icon-loading",        background: "rgba(0, 0, 0, 0.7)"      });      if (res === true) loading.close();    }  }};</script><style scoped></style>
 |