yangfeng
2023-08-09 acdff03246ce648082192dfb069c3a006a7fbee6
src/views/client/contacts/index.vue
@@ -11,7 +11,7 @@
        :search-options="searchOptions"
      />
      <div class="btn-pager">
        <PublicFunctionBtnView :operates-list="operatesList" :allocation="false" />
        <PublicFunctionBtnView :operates-list="operatesList" :allocation="false" @batchDelete="delClick" />
        <PagerView class="page" :pager-options="pagerOptions" v-on="pagerEvents" />
      </div>
    </div>
@@ -21,13 +21,14 @@
      :table-list="tableList"
      @selContactsClick="selContactsClick"
      @selClientClick="selClientClick"
      @getSelectArray="getSelectArray"
    >
      <template slot="tableButton">
        <el-table-column label="操作" width="120" fixed="right">
        <el-table-column label="操作" width="90" fixed="right">
          <template slot-scope="scope">
            <el-button @click="handleClick(scope.row)" type="text" size="small">编辑</el-button>
            <el-button type="text" size="small">跟进</el-button>
            <el-button @click="delClick(scope.row.id)" type="text" size="small">删除</el-button>
            <el-button @click="followupClick(scope.row)" type="text" size="small">跟进</el-button>
            <!-- <el-button @click="delClick(scope.row.id)" type="text" size="small">删除</el-button> -->
          </template>
        </el-table-column>
      </template>
@@ -38,6 +39,8 @@
    <DetailContacts v-if="contactsDeail.visible" :contacts-detail="contactsDeail" />
    <!-- 客户详情 -->
    <DetailClientManage v-if="clientDeail.visible" :client-manage-detail="clientDeail" />
    <!-- 新建/编辑跟进记录 -->
    <AddFollowupRecordsDialog v-if="editFollowupConfig.visible" :edit-contacts-config="editFollowupConfig" />
  </div>
</template>
@@ -45,6 +48,7 @@
import AddContactsDialog from "@/views/client/contacts/AddContactsDialog"
import { getContactList, getDeleteContact } from "@/api/client/contacts"
import pageMixin from "@/components/makepager/pager/mixin/pageMixin"
import AddFollowupRecordsDialog from "@/views/client/followupRecords/AddFollowupRecordsDialog"
export default {
  name: "ContactsView",
  props: {
@@ -57,7 +61,8 @@
  components: {
    AddContactsDialog,
    DetailContacts: () => import("@/views/client/contacts/DetailContacts"),
    DetailClientManage: () => import("@/views/client/client/DetailClientManage")
    DetailClientManage: () => import("@/views/client/client/DetailClientManage"),
    AddFollowupRecordsDialog
  },
  computed: {},
  data() {
@@ -94,6 +99,12 @@
      clientDeail: {
        visible: false,
        infomation: {}
      },
      selValueList: [],
      editFollowupConfig: {
        visible: false,
        title: "新建",
        infomation: {}
      }
    }
  },
@@ -118,7 +129,8 @@
      this.searchOptions = []
      for (let i = 0; i < this.tableList.tableColumn.length; i++) {
        const label = this.tableList.tableColumn[i].label
        this.searchOptions.push({ value: (i + 1).toString(), label: label })
        const value = this.tableList.tableColumn[i].prop
        this.searchOptions.push({ value: value, label: label })
      }
    },
    // 请求数据
@@ -170,27 +182,52 @@
      this.editConfig.infomation = { ...row }
    },
    // 删除
    delClick(id) {
      this.$confirm("是否确认删除?", "警告", {
        confirmButtonText: "确定",
        cancelButtonText: "取消",
        type: "warning"
      })
        .then(function () {
          return getDeleteContact({ id: id })
    delClick() {
      // this.$confirm("是否确认删除?", "警告", {
      //   confirmButtonText: "确定",
      //   cancelButtonText: "取消",
      //   type: "warning"
      // })
      //   .then(function () {
      //     return getDeleteContact({ id: id })
      //   })
      //   .then((response) => {
      //     if (response.code === 200) {
      //       this.$message.success("删除成功")
      //       this.getData()
      //     } else {
      //       this.$message.warning("删除失败")
      //     }
      //   })
      //   .catch(function () {})
      if (this.selValueList && this.selValueList.length > 0) {
        this.$confirm("是否确认删除?", "警告", {
          confirmButtonText: "确定",
          cancelButtonText: "取消",
          type: "warning"
        })
        .then((response) => {
          if (response.code === 200) {
            this.$message.success("删除成功")
            this.getData()
          } else {
            this.$message.warning("删除失败")
          }
        })
        .catch(function () {})
          .then(() => {
            getDeleteContact({ ids: this.selValueList }).then((response) => {
              if (response.code === 200) {
                this.$message.success("删除成功")
                this.getData()
              } else {
                this.$message.warning("删除失败")
              }
            })
          })
          .catch(() => {})
      } else {
        this.$message.warning("请至少选择一条记录")
      }
    },
    getSelectArray(val) {
      console.log(val)
      this.selValueList = []
      const list = val.map((item) => {
        return item.id
      })
      this.selValueList = list
    },
    // 联系人详情
    selContactsClick(row) {
@@ -202,7 +239,23 @@
    selClientClick(row) {
      console.log(row)
      this.clientDeail.visible = true
      this.clientDeail.infomation = { ...row, client_name: row.Client.name }
      this.clientDeail.infomation = {
        ...row.Client,
        client_name: row.Client.name,
        client_level: row.Client.client_level.name,
        client_status: row.Client.client_status.name
      }
    },
    // 跟进
    followupClick(row) {
      console.log(row)
      this.editFollowupConfig.visible = true
      this.editFollowupConfig.title = "新建"
      this.editFollowupConfig.infomation = {
        ...row,
        client_name: row.Client.name,
        number: ""
      }
    }
  }
}