yangfeng
2023-07-19 23d80c1b64f23ede237ab8e89ebc2ee2aaf43f26
src/views/sales/quotation/index.vue
@@ -26,6 +26,7 @@
<script>
import AddQuotationDialog from "@/views/sales/quotation/AddQuotationDialog"
import { getQuotationList } from "@/api/sales/quotation"
export default {
  name: "QuotationView",
@@ -67,30 +68,18 @@
  },
  created() {
    this.setTable()
    this.getData()
  },
  methods: {
    setTable() {
      this.tableList = {
        tableInfomation: [
          {
            quotationNo: "QUO109",
            customName: "123123",
            contactName: "马里奥",
            salesHead: "系统管理员",
            modifyTime: "2023-0703 11:22:12",
            subTotal: "¥9,499.00",
            total: "¥9,499.00",
            productName: "自动打印机",
            number: "1.00",
            priceTax: "¥9499.00"
          }
        ],
        tableInfomation: [],
        tableColumn: [
          { label: "报价单号", prop: "quotationNo", min: 90 }, // 报价单号
          { label: "客户名称", prop: "customName", min: 120 }, // 客户名称
          { label: "联系人姓名", prop: "contactName", min: 90 }, // 联系人姓名
          { label: "销售负责人", prop: "salesHead" }, // 销售负责人
          { label: "修改时间", prop: "modifyTime", min: 100 }, // 修改时间
          { label: "报价单号", prop: "number", min: 90 }, // 报价单号
          { label: "客户名称", prop: "client_name", min: 120 }, // 客户名称
          { label: "联系人姓名", prop: "contact_name", min: 90 }, // 联系人姓名
          { label: "销售负责人", prop: "member_id" }, // 销售负责人
          { label: "有效期", prop: "validity_date", min: 100 }, // 修改时间
          { label: "小计", prop: "subTotal" }, // 小计
          { label: "合计", prop: "total" }, // 合计
          { label: "产品名称", prop: "productName" }, // 产品名称
@@ -104,44 +93,48 @@
        this.searchOptions.push({ value: (i + 1).toString(), label: label })
      }
    },
    // 请求数据
    async getData() {
      this.loading = true
      await getQuotationList()
        .then((res) => {
          console.log(res)
          if (res.code === 200) {
            if (res.data.list && res.data.list.length > 0) {
              const list = res.data.list.map((item) => {
                return {
                  ...item,
                  client_name: item.client.name,
                  contact_name: item.contact.name
                }
              })
              this.tableList.tableInfomation = list || []
            } else {
              this.tableList.tableInfomation = []
            }
          } else {
            this.tableList.tableInfomation = []
          }
          this.loading = false
        })
        .catch((err) => {
          console.log(err)
          this.tableList.tableInfomation = []
          this.loading = false
        })
    },
    // 新建
    addBtnClick() {
      this.editConfig.visible = true
      this.editConfig.title = "新建"
      this.editConfig.infomation = {
        customName: "",
        quotationNo: "AC6521",
        quotationStatus: "",
        validTo: "",
        contactName: "",
        salesHead: "",
        salesOpportunity: "",
        termsTreaty: "",
        approvalWorkflow: "",
        approvalSteps: "",
        approvalPerson: "",
        approvalOpinion: ""
      }
      this.editConfig.infomation = {}
    },
    // 编辑
    handleClick(row) {
      console.log(row)
      this.editConfig.visible = true
      this.editConfig.title = "编辑"
      this.editConfig.infomation = {
        customName: "",
        quotationNo: "AC6521",
        quotationStatus: "",
        validTo: "",
        contactName: "",
        salesHead: "",
        salesOpportunity: "",
        termsTreaty: "",
        approvalWorkflow: "",
        approvalSteps: "",
        approvalPerson: "",
        approvalOpinion: ""
      }
      this.editConfig.infomation = { ...row }
    }
  }
}