doum
2025-10-13 46124fe454f90d24171ebc5be0d9cfe2ab22cbc5
admin/src/components/business/OperaJkSketchCustomerWindow.vue
@@ -1,86 +1,104 @@
<template>
  <GlobalWindow
    :title="title"
    width="85%"
    :visible.sync="visible"
    :confirm-working="isWorking"
    @confirm="confirm"
  >
    <el-form :model="form" ref="form" :rules="rules">
      <el-form-item label="创建人编码" prop="creator">
        <el-input v-model="form.creator" placeholder="请输入创建人编码" v-trim/>
      </el-form-item>
      <el-form-item label="创建时间" prop="createDate">
        <el-date-picker v-model="form.createDate" value-format="yyyy-MM-dd" placeholder="请输入创建时间"></el-date-picker>
      </el-form-item>
      <el-form-item label="更新人编码" prop="editor">
        <el-input v-model="form.editor" placeholder="请输入更新人编码" v-trim/>
      </el-form-item>
      <el-form-item label="更新时间" prop="editDate">
        <el-date-picker v-model="form.editDate" value-format="yyyy-MM-dd" placeholder="请输入更新时间"></el-date-picker>
      </el-form-item>
      <el-form-item label="是否删除0否 1是" prop="isdeleted">
        <el-input v-model="form.isdeleted" placeholder="请输入是否删除0否 1是" v-trim/>
      </el-form-item>
      <el-form-item label="备注" prop="info">
        <el-input v-model="form.info" placeholder="请输入备注" v-trim/>
      </el-form-item>
      <el-form-item label="线路编码(关联jk_sketch_line)" prop="sketchLineId">
        <el-input v-model="form.sketchLineId" placeholder="请输入线路编码(关联jk_sketch_line)" v-trim/>
      </el-form-item>
      <el-form-item label="线路优化编码(关联jk_sketch)" prop="sketchId">
        <el-input v-model="form.sketchId" placeholder="请输入线路优化编码(关联jk_sketch)" v-trim/>
      </el-form-item>
      <el-form-item label="送货量" prop="totalNum">
        <el-input v-model="form.totalNum" placeholder="请输入送货量" v-trim/>
      </el-form-item>
      <el-form-item label="客户数" prop="orderNum">
        <el-input v-model="form.orderNum" placeholder="请输入客户数" v-trim/>
      </el-form-item>
      <el-form-item label="排序码" prop="sortnum">
        <el-input v-model="form.sortnum" placeholder="请输入排序码" v-trim/>
      </el-form-item>
      <el-form-item label="日期" prop="dateInfo">
        <el-date-picker v-model="form.dateInfo" value-format="yyyy-MM-dd" placeholder="请输入日期"></el-date-picker>
      </el-form-item>
    </el-form>
    <TableLayout >
      <!-- 搜索表单 -->
      <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
        <el-form-item label="客户名称" prop="name">
          <el-input v-model="searchForm.name" placeholder="请输入客户名称" @keypress.enter.native="search"></el-input>
        </el-form-item>
        <el-form-item label="客户简码" prop="code">
          <el-input v-model="searchForm.code" placeholder="请输入客户简码" @keypress.enter.native="search"></el-input>
        </el-form-item>
        <section>
          <el-button type="primary" @click="search">搜索</el-button>
          <el-button @click="reset">重置</el-button>
        </section>
      </el-form>
      <!-- 表格和分页 -->
      <template v-slot:table-wrap>
        <el-table
            :height="tableHeightNew"
            v-loading="isWorking.search"
            :data="tableData.list"
            stripe
            @selection-change="handleSelectionChange"
        >
          <el-table-column prop="sortnum" label="客户序号" min-width="100px"></el-table-column>
          <el-table-column prop="code" label="客户简码" min-width="120px"></el-table-column>
          <el-table-column prop="name" label="客户名称" min-width="120px"></el-table-column>
          <el-table-column prop="lineName" label="线路名称" min-width="180px" show-tooltip-when-overflow></el-table-column>
          <el-table-column prop="totalNum" label="送货量(条)" min-width="120px"></el-table-column>
          <el-table-column prop="dateInfo" label="送货日期" min-width="120px"></el-table-column>
        </el-table>
        <pagination
            @size-change="handleSizeChange"
            @current-change="handlePageChange"
            :pagination="tableData.pagination"
        >
        </pagination>
      </template>
    </TableLayout>
    <template   v-slot:footer>
      <el-button @click="visible=false">返回</el-button>
    </template>
  </GlobalWindow>
</template>
<script>
import BaseOpera from '@/components/base/BaseOpera'
import BaseTable from '@/components/base/BaseTable'
import TableLayout from '@/layouts/TableLayout'
import Pagination from '@/components/common/Pagination'
import GlobalWindow from '@/components/common/GlobalWindow'
export default {
  name: 'OperaJkSketchCustomerWindow',
  extends: BaseOpera,
  components: { GlobalWindow },
  extends: BaseTable,
  components: { GlobalWindow, TableLayout, Pagination },
  data () {
    return {
      // 表单数据
      form: {
        id: null,
        creator: '',
        createDate: '',
        editor: '',
        editDate: '',
        isdeleted: '',
        info: '',
      visible: false,
      title: '',
      searchForm: {
        sketchLineId: '',
        sketchId: '',
        totalNum: '',
        orderNum: '',
        sortnum: '',
        dateInfo: ''
      },
      // 验证规则
      rules: {
        name: '',
        code: ''
      }
    }
  },
  created () {
    this.config({
      module: '交控-线路优化线路客户记录信息表',
      api: '/business/jkSketchCustomer',
      'field.id': 'id'
      'field.id': 'id',
      'field.main': 'id'
    })
    this.search()
  },
  methods: {
    open (title, row) {
      this.title = title + (row.lineName)
      this.searchForm.sketchLineId = row.id
      this.visible = true
      this.tableData = {
        // 已选中的数据
        selectedRows: [],
        // 排序的字段
        sorts: [],
        // 当前页数据
        list: [],
        // 分页
        pagination: {
          pageIndex: 1,
          pageSize: 10,
          total: 0
        }
      }
      this.search()
    }
  }
}
</script>