<style>
  @import "../../assets/css/customerManage.css";

  .el-table__fixed-body-wrapper table {
    padding-bottom: 8px !important;
  }

  .clueTitle {
    padding: 20px 20px 0 20px;
  }
</style>
<template>
  <div class="customerManage" style="display:flex;flex-direction:column;height:100%;">
    <div class="tools">
      <div class="tools-item">
        <h1 :class="isDrawer?'clueTitle':''" v-if="title==''">线索管理</h1>
        <el-tag class="f12" size="medium" style="margin-top:10px;margin-left:10px;" v-else>{{title}}</el-tag>
      </div>
      <template v-if="!isDrawer">
        <div style="width: 340px;">
          <el-input placeholder="请输入线索名称/手机" v-model="CustomerTypeText" class="input-with-select">
            <el-button slot="append" icon="el-icon-search" @click="getList"></el-button>
          </el-input>
        </div>
        <div class="rightmenu">
          <el-dropdown @command="handleCommand">
            <el-button icon="el-icon-plus" class="crm-btn org-btn">新建线索</el-button>
            <el-dropdown-menu slot="dropdown">
              <!-- <el-dropdown-item command="1"><i class="iconfont iconkehu"></i> 客户线索</el-dropdown-item> -->
              <el-dropdown-item command="2"><i class="iconfont icontongxunlu"></i> 直客线索</el-dropdown-item>
            </el-dropdown-menu>
          </el-dropdown>
          <el-dropdown @command="handleCommand">
            <el-button class="crm-btn crm-btn-more easy-btn margin-right0">
              <i class="iconfont icongengduo"></i>
            </el-button>
            <el-dropdown-menu slot="dropdown">
              <!-- <el-dropdown-item command="3"><i class="iconfont icondaoru"></i> 导入客户线索</el-dropdown-item> -->
              <el-dropdown-item command="4"><i class="iconfont icondaoru"></i> 导入直客线索</el-dropdown-item>
              <!-- <el-dropdown-item><i class="iconfont icondaochu"></i> 导出</el-dropdown-item> -->
            </el-dropdown-menu>
          </el-dropdown>
        </div>
      </template>
    </div>
    <div v-if="!isDrawer" class="query-box" :style="{'padding-bottom': sceneList.length > 0 ? '0px' : '10px'}">
      <el-row v-if="!multipleSelection.length" :gutter="30">
        <el-col :span="4">
          <span class="font-size-12" style="padding-right: 10px">场景</span>
          <el-popover placement="bottom" width="180" popper-class="popover-class" v-model="visible" trigger="click">
            <div data-v-16d669bb="" class="scene-container">
              <div class="scene-list">
                <div class="scene-list-item" :class="{'scene-list-item-select': sceneID === item.ID}"
                  v-for="(item, index) in SceneEmployeeList" :key="index" @click="changeWhere(item)">
                  {{item.SceneName}}</div>
              </div>
              <div class="handle-interval">
                <div class="vux-flexbox handle-button vux-flex-row" @click="MsgBus.$emit('sceneBoxShow', 4, 1)">
                  <i class="el-icon-circle-plus-outline handle-button-icon"></i>
                  <div class="handle-button-name">新建场景</div>
                </div>
                <div class="vux-flexbox handle-button vux-flex-row"
                  @click="MsgBus.$emit('sceneEditBoxShow', 4, SceneEmployeeList)">
                  <i class="el-icon-setting handle-button-icon"></i>
                  <div class="handle-button-name">管理</div>
                </div>
              </div>
            </div>

            <el-select size="mini" popper-class="select-no" slot="reference" v-model="msg.ID" placeholder="请选择">
              <el-option v-for="item in SceneEmployeeList" :key="item.ID" :label="item.SceneName" :value="item.ID">
              </el-option>
            </el-select>
          </el-popover>
        </el-col>
        <el-col :span="4">
          <span class="font-size-12" style="padding-right: 10px">客户类型</span>
          <el-select size="mini" v-model="msg.CustomerType" placeholder="请选择" @change="getList">
            <el-option key="0" label="客户" :value="0"></el-option>
            <el-option key="1" label="直客" :value="1"></el-option>
          </el-select>
        </el-col>
        <el-col :span="4">
          <el-button icon="iconfont iconshaixuan" class="crm-btn query-btn crm-btn-mini margin-right0"
            @click="MsgBus.$emit('sceneBoxShow', 4)">高级筛选</el-button>
        </el-col>
      </el-row>
      <div v-else class="flex-center">
        <p class="font-size-12">已选 <span class="font-color-link">{{multipleSelection.length}}</span> 项</p>
        <div class="selection-box">
          <div v-for="(item, index) in selectionList" :key="index">
            <template v-if="item.show">
              <el-button @click="item.myFun">
                <i :class="item.class"></i>{{item.name}}
              </el-button>
            </template>
          </div>

        </div>
      </div>
      <div class="scene-wrapper" v-if="sceneList.length > 0">
        <ul class="list">
          <li class="list-item" v-for="(item, index) in sceneList" :key="index">
            <span
              v-if="item.formType !== 'datetime'">{{item.str}}&nbsp;{{item.regionStr}}“{{item.nameFC ? item.nameFC : item.value}}”</span>
            <span v-else>{{item.str}}&nbsp;“{{item.start}}-{{item.end}}”</span>
            <i class="el-icon-close icon" @click="deleteScene(index)"></i>
          </li>
        </ul>
      </div>
    </div>
    <div class="page-content" style="flex:1;">
      <el-table v-if="loading" v-loading="true" :data="[]">
        <el-table-column v-for="(item, index) in queryType2" :key="index" :label="item.label">
        </el-table-column>
      </el-table>
      <el-table v-if="!loading" ref="multipleTable" :data="tableData" tooltip-effect="dark" style="width: 100%"
        height="100%" border row-class-name="font-size-12" @selection-change="handleSelectionChange">
        <el-table-column v-if="!isDrawer" fixed type="selection" width="40"></el-table-column>
        <el-table-column prop="ClueState" label="线索状态" show-overflow-tooltip width="80">
          <template slot-scope="scope">
            <template v-if="scope.row.ClueState==1">
              正常
            </template>
            <template v-else-if="scope.row.ClueState==2">
              无效
            </template>
          </template>
        </el-table-column>
        <el-table-column prop="ClueName" label="线索名称" v-if="queryType[0].show" show-overflow-tooltip>
          <template slot-scope="scope">
            <p @click="openDetails(scope)" class="font-color-link cp">
              {{msg.CustomerType===1?scope.row.ClueName:scope.row.CustomerName}}</p>
          </template>
        </el-table-column>
        <el-table-column prop="CustomerSourceTypeStr" label="线索来源" v-if="queryType[1].show" show-overflow-tooltip
          width="80">
        </el-table-column>
        <!--CustomerSource其他的来源 -->
        <el-table-column prop="SourceAccountName" label="来源细分" v-if="queryType[2].show && msg.CustomerType === 1"
          show-overflow-tooltip>
        </el-table-column>
        <el-table-column prop="ClueDemand" label="需求" v-if="queryType[3].show && msg.CustomerType === 1"
          show-overflow-tooltip width="260">
        </el-table-column>
        <el-table-column prop="CustomerLevelStr" label="客户级别" sortable width="100"
          v-if="queryType[4].show && msg.CustomerType === 0" show-overflow-tooltip>
        </el-table-column>
        <el-table-column prop="Contact" label="联系人" v-if="queryType[5].show&&msg.CustomerType!=1" show-overflow-tooltip>
        </el-table-column>
        <el-table-column prop="CustomerName" label="联系人" v-if="queryType[5].show&&msg.CustomerType===1"
          show-overflow-tooltip width="100">
        </el-table-column>
        <el-table-column prop="ContactNumber" label="联系电话" sortable v-if="queryType[6].show" show-overflow-tooltip>
        </el-table-column>

        <el-table-column prop="WeChatNo" label="微信号" sortable v-if="queryType[7].show && msg.CustomerType === 1"
          show-overflow-tooltip>
        </el-table-column>
        <el-table-column prop="PersonChargeStr" label="负责人" sortable v-if="queryType[8].show && msg.CustomerType === 1"
          show-overflow-tooltip width="90">
        </el-table-column>
        <el-table-column prop="CreateByStr" label="创建人" sortable v-if="queryType[9].show" show-overflow-tooltip
          width="90">
        </el-table-column>
        <el-table-column prop="UpdateTime" label="上次更新时间" sortable v-if="queryType[10].show" show-overflow-tooltip>
          <template slot-scope="scope">
            <span>{{scope.row.UpdateTime}}</span>
          </template>
        </el-table-column>
        <el-table-column prop="CreateTimestr" label="创建时间" sortable v-if="queryType[11].show" show-overflow-tooltip>
        </el-table-column>
        <el-table-column prop="IsCarefor" fixed="right" width="50" label="关注">
          <template slot-scope="scope">
            <p>
              <el-tooltip class="item" effect="dark" content="关注" placement="top">
                <i v-if="scope.row.IsCarefor === 0" @click="CareforCustomer(scope)"
                  class="iconfont iconwujiaoxing cp"></i>
              </el-tooltip>
              <el-tooltip class="item" effect="dark" content="取消关注" placement="top">
                <i v-if="scope.row.IsCarefor === 1" @click="CareforCustomer(scope)"
                  class="iconfont iconstar_full cp"></i>
              </el-tooltip>
            </p>
          </template>
        </el-table-column>
        <el-table-column width="40" fixed="right">
          <template slot="header" slot-scope="scope">
            <el-popover placement="bottom" width="240">
              <mySelect :queryType="queryType" @listenTochildEvent="showMessageFromChild" />
              <i class="el-icon-s-operation cp" slot="reference"></i>
            </el-popover>
          </template>
        </el-table-column>
      </el-table>
    </div>
    <div>
      <el-pagination class="Mypagination" background @current-change="handleCurrentChange"
        :page-sizes="[30, 60, 90, 100]" :page-size="msg.pageSize" layout="total, sizes, prev, pager, next"
        @size-change="handleSizeChange" :total="total">
      </el-pagination>
    </div>
    <el-drawer :with-header="false" size='70%' :visible.sync="isShowCustomerInfo" direction="rtl"
      :before-close="handleClose">
      <customerInfoBox :CustomerId="CustomerId" @transferS="transferClue" @deleteClue="deleteClue" @watersS="waters"
        @editCustS="editCust" @getList="getList" :activeNameNum="activeNameNum" :receiptType="receiptType" />
    </el-drawer>
    <el-drawer :with-header="false" size='70%' :visible.sync="isShowGuestInfo" direction="rtl"
      :before-close="handleClose">
      <guestInfoBox :CustomerId="CustomerId" @transferS="transferClue" @deleteClue="deleteClue" @watersS="waters"
        @editCustS="editCust" @getList="getList" />
    </el-drawer>
    <div v-if="dialogTableVisible">
      <customerDialogBox @getList="getList" :name="dialogTableVisibleName" :CustomerId="CustomerId" />
    </div>
    <div v-if="guestDialogBoxShow">
      <guestDialogBox @getList="getList" :name="dialogTableVisibleName" :CustomerId="CustomerId" />
    </div>
    <!--显示导入弹窗-->
    <div v-if="isShowImport">
      <importDialogBox @getList="getList" :importType="importType" />
    </div>
    <el-dialog :visible.sync="transferVisible" :close-on-click-modal="false" width="450px"
      custom-class="transfer-box add-box add-box2">
      <div class="add-tit" slot="title">
        <p><span></span>线索转移</p>
        <span icon="el-icon-close"></span>
      </div>
      <el-form :model="transferMsg" ref="form" class="MyEditForm">
        <div class="MyEditForm-item">
          <el-form-item label="变更负责人为" class="label-pad-left">
            <el-select filterable v-model="transferMsg.EmpId" placeholder="请选择">
              <el-option v-for="item in EmployeeList" :label='item.EmName' :value='item.EmployeeId'
                :key='item.EmployeeId'>
              </el-option>
            </el-select>
          </el-form-item>
        </div>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button type="primary" class="add-box-btn" @click="transferClue(2)">确 定</el-button>
        <el-button class="add-box-btn add-box-cancel" @click="transferVisible = false">取 消</el-button>
      </div>
    </el-dialog>
  </div>
</template>
<script>
  import mySelect from "../dialogModel/select";
  import customerInfoBox from "./customerInfoBox";
  import customerDialogBox from "./customerDialogBox";
  import guestDialogBox from "./guestDialogBox";
  import guestInfoBox from "./guestInfoBox";
  import importDialogBox from "./importDialogBox";
  export default {
    props: {
      isDrawer: {
        type: Boolean,
        default: false,
      },
      queryTime: {
        type: Object,
        default: null,
      },
      title: {
        type: String,
        default: "",
      },
    },
    watch: {
      queryTime: {
        handler(val, oldVal) {
          this.queryTime = val;
          this.getList();
        },
        deep: true,
      },
    },
    components: {
      mySelect,
      customerInfoBox,
      customerDialogBox,
      guestDialogBox,
      guestInfoBox,
      importDialogBox,
    },
    data() {
      return {
        receiptType: {
          ReFinanceId: "",
          ReFinanceId2: "", //单据类型
          RelevanceFrId: "", //1机票   2签证   3地接  4套餐  5其他
        },
        activeNameNum: "1",
        ruleList: [],
        guestDialogBoxShow: false,
        isShowGuestInfo: false, //是否显示直客弹窗
        activeMenu: 1,
        queryType2: [{
            label: "线索名称",
            show: true,
          },
          {
            label: "线索来源",
            show: true,
          },
          {
            label: "来源细分",
            show: true,
          },
          {
            label: "需求",
            show: true,
          },
          {
            label: "客户级别",
            show: true,
          },
          {
            label: "联系人",
            show: true,
          },
          {
            label: "联系电话",
            show: true,
          },
          {
            label: "微信",
            show: true,
          },
          {
            label: "负责人",
            show: true,
          },
          {
            label: "创建人",
            show: true,
          },
          {
            label: "上次更新时间",
            show: true,
          },
          {
            label: "创建时间",
            show: true,
          },
        ],
        queryType: [{
            label: "线索名称",
            show: true,
          },
          {
            label: "线索来源",
            show: true,
          },
          {
            label: "来源细分",
            show: true,
          },
          {
            label: "需求",
            show: true,
          },
          {
            label: "客户级别",
            show: true,
          },
          {
            label: "联系人",
            show: true,
          },
          {
            label: "联系电话",
            show: true,
          },
          {
            label: "微信",
            show: true,
          },
          {
            label: "负责人",
            show: true,
          },
          {
            label: "创建人",
            show: true,
          },
          {
            label: "上次更新时间",
            show: true,
          },
          {
            label: "创建时间",
            show: true,
          },
        ],
        CustomerId: 0,
        CustomerIdStr: "",
        transferVisible: false,
        mySelectCtrl: false,
        isShowCustomerInfo: false, //是否显示客户弹窗
        loading: true,
        dialogTableVisible: false,
        dialogTableVisibleName: "新建线索",
        tableData: [],
        multipleSelection: [],
        EmployeeList: [],
        value: "",
        userInfo: {},
        transferMsg: {
          CustomerIds: [],
          EmpId: "",
          CustomerType:0,//0-客户，1-直客
        },
        CustomerTypeText: "", // 线索名称搜索
        msg: {
          KeyWord: "",
          CustomerName: "",
          Contact: "",
          pageIndex: 1,
          pageSize: 30,
          ContactNumber: "",
          WhereType: -1,
          OrderBy: "",
          CustomerType: 1,
          ID: 33,
          IsSelectAdmin: 0,
        },
        total: 0,
        selectionList: [{
            name: "转移",
            class: "iconfont iconplus-transfer",
            myFun: this.transferClue,
            show: true,
          },
          {
            name: "转化为客户",
            class: "iconfont iconplus-transfer",
            myFun: this.waters,
            show: true,
          },
          {
            name: "删除",
            class: "iconfont icondelete",
            myFun: this.deleteClue,
            show: true,
          },
        ],
        sceneList: [],
        SceneEmployeeList: [],
        sceneID: 33,
        visible: false,
        isShowImport: false, //是否显示导入弹窗
        importType: 1, //导入文件类型(1-客户导入,2-直客导入)
        IsSelectAdminList: [], //是否是线索管理员
        erpOrderObj: {}
      };
    },
    mounted() {
      if (this.$route.query && this.$route.query.erpOrderObj) {
        this.erpOrderObj = JSON.parse(this.$route.query.erpOrderObj)
        let data = {
          condition: "is",
          formType: "number",
          name: "CreateBy",
          nameFC: this.erpOrderObj.EmName,
          regionStr: "等于",
          str: "创建人",
          value: this.erpOrderObj.EmpId
        }
        this.msg.Data = {
          CreateBy: data
        }
      }

      this.userInfo = this.getLocalStorage();
      let $this = this;
      this.MsgBus.$on("closeCustomerDialogBox", function () {
        $this.dialogTableVisible = false;
        $this.guestDialogBoxShow = false;
        $this.isShowImport = false;
      });
      this.MsgBus.$on("sceneSave", function (msg) {
        $this.sceneList = [...msg];
        $this.GetSceneEmployeeList();
        let obj = {};
        msg.forEach((element) => {
          obj[element.name] = element;
        });
        $this.msg.Data = obj;
        $this.getList();
      });
      this.MsgBus.$on("editScene", function () {
        $this.GetSceneEmployeeList();
      });
      this.GetConfigCuleAdmin();
      this.Employee();
      this.GetSceneEmployeeList();
    },
    beforeDestroy() {
      this.MsgBus.$off("sceneSave");
      this.MsgBus.$off("editScene");
    },
    methods: {
      // 获取线索管理详情
      GetConfigCuleAdmin() {
        this.apipost("/api/Customer/GetConfigCuleAdmin", {}, (res) => {
          if (res.data.resultCode == 1) {
            this.IsSelectAdminList = res.data.data.Content.split(",");
            if (
              this.IsSelectAdminList.indexOf(
                this.userInfo.EmployeeId.toString()
              ) != -1
            ) {
              this.msg.IsSelectAdmin = 1;
              this.selectionList.forEach((item) => {
                if (item.name == "转移") {
                  item.show = false;
                }
              });
              this.getList();
            } else {
              this.getList();
            }
          } else {
            this.getList();
            this.$message.error(res.data.message);
          }
        });
      },
      handleClose(done) {
        done();
      },
      // 查看详情
      seeDetails(row) {
        this.drawer = true;
        this.queryTime = this.msg.YearStr + "-" + row.DateStr;
      },
      changeWhere(item) {
        this.msg.ID = item.ID;
        this.sceneID = item.ID;
        this.msg.Data = item.WhereData ? JSON.parse(item.WhereData) : {};
        this.msg.WhereType = item.WhereType;
        this.visible = false;
        this.getList();
      },
      GetSceneEmployeeList() {
        this.apipost(
          "/api/Scene/GetSceneEmployeeList", {
            LableType: 4,
          },
          (res) => {
            if (res.data.resultCode == 1) {
              this.SceneEmployeeList = res.data.data;
            }
          }
        );
      },
      deleteScene(index) {
        this.sceneList.splice(index, 1);
        let obj = {};
        this.sceneList.forEach((element) => {
          obj[element.name] = element;
        });
        this.msg.Data = obj;
        this.getList();
      },
      handleCommand(command) {
        this.CustomerId = 0;
        if (command === "1") {
          this.dialogTableVisibleName = "新建线索";
          this.dialogTableVisible = true;
        } else if (command === "2") {
          this.guestDialogBoxShow = true;
        } else if (command === "3") {
          this.importType = 1;
          this.isShowImport = true;
        } else if (command === "4") {
          this.importType = 2;
          this.isShowImport = true;
        }
      },
      Employee() {
        let msg = {
          RB_Group_id: this.userInfo.RB_Group_id,
          BranchId: -1,
          DepartmentId: 0,
          PostId: 0,
          IsLeave: 0,
        };
        this.apipost2(
          "admin_get_EmployeeGetList",
          this.msg,
          (res) => {
            if (res.data.resultCode == 1) {
              this.EmployeeList = res.data.data;
            } else {}
          },
          (err) => {}
        );
      },
      //删除
      deleteClue(type) {
        let tips = "确定将这些线索删除?";
        if (type === 1) {
          tips = "是否把线索“" + this.CustomerName + "”删除？";
          this.multipleSelection.push(this.CustomerId);
        }
        this.$confirm(tips, "提示", {
            confirmButtonText: "确定",
            cancelButtonText: "取消",
            type: "warning",
          })
          .then(() => {
            let str = "";
            this.multipleSelection.map((x, i) => {
              str = str + x + ",";
            });
            this.apipost(
              "/api/Customer/DelCustomerClue", {
                CustomerIds: str.substring(0, str.length - 1),
                CustomerType: this.msg.CustomerType,
              },
              (res) => {
                if (res.data.resultCode == 1) {
                  if (type === 1) {} {
                    this.isShowCustomerInfo = false;
                    this.isShowGuestInfo = false;
                  }
                  this.multipleSelection = [];
                  this.$message.success(res.data.message);
                  this.getList();
                }
              }
            );
          })
          .catch(() => {
            this.$message({
              type: "info",
              message: "已取消",
            });
          });
      },
      //导出
      export () {},
      //转换为客户
      waters(type) {
        let tips = "确定将这些线索转换为客户吗?";
        if (type === 1) {
          tips = "是否把线索“" + this.CustomerName + "”转换为客户吗？";
          this.multipleSelection.push(this.CustomerId);
        }
        this.$confirm(tips, "提示", {
            confirmButtonText: "确定",
            cancelButtonText: "取消",
            type: "warning",
          })
          .then(() => {
            let str = "";
            this.multipleSelection.map((x, i) => {
              str = str + x + ",";
            });
            let msg = {
              CustomerIds: str.substring(0, str.length - 1),
              CustomerType: this.msg.CustomerType,
            };
            this.apipost("/api/Customer/UpdateCustomerClue", msg, (res) => {
              if (res.data.resultCode == 1) {
                if (type === 1) {} {
                  this.isShowCustomerInfo = false;
                  this.isShowGuestInfo = false;
                }
                this.multipleSelection = [];
                this.$message.success(res.data.message);
                this.getList();
              }
            });
          })
          .catch(() => {
            this.$message({
              type: "info",
              message: "已取消",
            });
          });
      },
      // 关注
      CareforCustomer(scope) {
        this.apipost(
          "/api/Customer/CareforCustomer", {
            CustomerCreateId: scope.row.CustomerCreateId,
          },
          (res) => {
            if (res.data.resultCode == 1) {
              this.$message.success("操作成功");
              this.getList();
            }
          }
        );
      },
      // 转移
      transferClue(type) {
        if (type !== 2) {
          if (type === 3) {
            this.multipleSelection.push(this.CustomerId);
          }
          if (this.ruleList.length == 0) {
            this.transferVisible = true;
          } else {
            let tips = "系统已开启自动分配，无法指定推送，是否继续推送?";
            this.$confirm(tips, "提示", {
                confirmButtonText: "确定",
                cancelButtonText: "取消",
                type: "warning",
              })
              .then(() => {
                let ids;
                if (this.CustomerId) {
                  ids = this.CustomerId;
                } else {
                  ids = this.multipleSelection.join(",");
                }
                this.apipost(
                  "/api/Customer/AutoTransferCustomer", {
                    IDs: ids,
                  },
                  (res) => {
                    if (res.data.resultCode == 1) {
                      this.$message.success(res.data.message);
                      this.getList();
                    }
                  }
                );
              })
              .catch(() => {
                this.$message({
                  type: "info",
                  message: "已取消",
                });
              });
          }
        } else {
          if (this.transferMsg.EmpId === "") {
            return this.$message.error("请选择变更负责人！");
          }
          let str = "";
          this.multipleSelection.map((x, i) => {
            str = str + x + ",";
          });
          this.transferMsg.CustomerType=this.msg.CustomerType;
          this.transferMsg.CustomerIds = str.substring(0, str.length - 1);
          this.apipost(
            "/api/Customer/TransferCustomerClue",
            this.transferMsg,
            (res) => {
              if (res.data.resultCode == 1) {
                this.multipleSelection = [];
                this.transferVisible = false;
                if (type === 3) {} {
                  this.isShowCustomerInfo = false;
                  this.isShowGuestInfo = false;
                }
                this.$message.success(res.data.message);
                this.getList();
                this.transferMsg.CustomerIds = [];
                this.transferMsg.EmpId = "";
                this.transferMsg.CustomerType=0;
              }
            }
          );
        }
      },
      showMessageFromChild(list) {
        this.mySelectCtrl = !this.mySelectCtrl;
        if (list) {
          this.queryType = list;
          this.getList();
        }
      },
      editCust(type) {
        this.dialogTableVisibleName = "修改线索";
        if (type === 1) {
          this.dialogTableVisible = true;
        } else {
          this.guestDialogBoxShow = true;
        }
      },
      openDetails(scope) {
        this.CustomerId = scope.row.CustomerId;
        if (this.msg.CustomerType == 0) {
          this.CustomerName = scope.row.CustomerName;
        } else if (this.msg.CustomerType == 1) {
          this.CustomerName = scope.row.ClueName;
        }
        if (this.msg.CustomerType === 0) {
          this.isShowCustomerInfo = true;
        } else {
          this.isShowGuestInfo = true;
        }
      },
      // 获取是否开启规则
      GetCustomerAllotRule() {
        this.apipost("/api/Customer/GetCustomerAllotRule", {}, (res) => {
          if (res.data.resultCode == 1) {
            this.ruleList = res.data.data.EmpList;
          }
        });
      },
      handleSizeChange(val) {
        this.msg.pageSize = val;
        this.getList();
      },
      handleCurrentChange(val) {
        this.msg.pageIndex = val;
        this.getList();
      },
      handleClose(done) {
        done();
      },
      getList: function (isclose) {
        if (isclose && isclose == 1) {
          this.isShowGuestInfo = false;
        }
        if (this.msg.CustomerType != 1) {
          this.msg.CustomerName = this.CustomerTypeText;
          this.msg.KeyWord = "";
        } else {
          this.msg.KeyWord = this.CustomerTypeText;
          this.msg.CustomerName = "";
        }
        this.tableData = [];
        this.loading = true;
        let url;
        if (!this.isDrawer) {
          url = "/api/Customer/GetCustomerCluePage";
        } else {
          delete this.msg.ClueState;
          delete this.msg.CustomerSourceType;
          delete this.msg.OrderType;
          this.msg = this.queryTime && Object.assign(this.msg, this.queryTime);
          url = "/api/Customer/GetCustomerClueAllPage";
        }
        this.apipost(url, this.msg, (res) => {
          if (res.data.resultCode == 1) {
            this.tableData = res.data.data.pageData;
            this.total = res.data.data.count;
            this.loading = false;
          }
        });
        if (this.msg.CustomerType == 1) {
          // 获取是否开启规则
          this.GetCustomerAllotRule();
        }
      },
      handleSelectionChange(val) {
        this.multipleSelection = val.map((x) => x.CustomerId);
      },
    },
  };
</script>