jiangping
2024-06-07 8a266df75e912cc4ff49bc504db5b6b26f152892
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
<template>
    <TableLayout :permissions="['business:dispatchunit:query']">
        <!-- 搜索表单 -->
        <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
          <el-form-item label="所属企业" prop="companyId">
            <el-select v-model="searchForm.companyId"  placeholder="请选择" @change="search">
              <el-option
                  v-for="item in companyList"
                  :key="item.id"
                  :label="item.name"
                  :value="item.id">
              </el-option>
            </el-select>
          </el-form-item>
          <el-form-item label="审核状态" prop="status">
            <el-select v-model="searchForm.unitStatus"  clearable @change=" search1" placeholder="请选择"  >
              <el-option label="待审核" value="0"></el-option>
              <el-option label="审核通过" value="1"></el-option>
              <el-option label="审核不通过" value="2"></el-option>
            </el-select>
          </el-form-item>
          <el-form-item label="工种审核状态" prop="status">
            <el-select v-model="searchForm.worktypeStatus"  clearable placeholder="请选择"  >
              <el-option label="工种待审" value="0"></el-option>
              <el-option label="审核通过" value="1"></el-option>
              <el-option label="审核不通过" value="2"></el-option>
            </el-select>
          </el-form-item>
          <el-form-item label="派遣单位" prop="name">
            <el-input v-model="searchForm.name" 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
                v-loading="isWorking.search"
                :data="tableData.list"
                stripe
            >
                <el-table-column label="序号" width="80px">
                    <template slot-scope="scope">
                        <span>{{scope.$index + 1}}</span>
                    </template>
                </el-table-column>
                <el-table-column prop="companyName" label="所属企业" min-width="100px"></el-table-column>
                <el-table-column prop="name" label="派遣单位" min-width="100px"></el-table-column>
                <el-table-column label="派遣单位状态" min-width="100px">
                    <template slot-scope="{row}">
                      <span :class="'du-status'+row.unitStatus" v-if="row.unitStatus === 0">待审核</span>
                      <span v-if="row.unitStatus === 1">
                            <span :class="'du-status'+row.worktypeStatus"   v-if="row.worktypeStatus ==null || row.worktypeStatus === 0">工种待审</span>
                            <span :class="'du-status'+row.worktypeStatus"  v-else-if="row.worktypeStatus === 1">审核通过</span>
                            <span :class="'du-status'+row.worktypeStatus"   v-else-if="row.worktypeStatus === 2">工种审核不通过</span>
                        </span>
                      <span :class="'du-status'+row.unitStatus"  v-if="row.unitStatus === 2">审核不通过</span>
                    </template>
                </el-table-column>
                <el-table-column prop="createDate" label="提交日期" min-width="100px"></el-table-column>
                <el-table-column
                    v-if="containPermissions(['business:dispatchunit:update', 'business:dispatchunit:delete'])"
                    label="操作"
                    min-width="120"
                    fixed="right"
                >
                    <template slot-scope="{row}">
                        <el-button type="text" @click="$refs.dispatchUnitDetailsPlat.open('派遣单位详情', row)" icon="el-icon-edit" v-permissions="['business:dispatchunit:update']">查看详情</el-button>
                      <el-button   v-if="row.unitStatus === 2 &&userInfo.type === 0"  type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:dispatchunit:delete']">删除</el-button>
 
                    </template>
                </el-table-column>
            </el-table>
            <pagination
                @size-change="handleSizeChange"
                @current-change="handlePageChange"
                :pagination="tableData.pagination"
            >
            </pagination>
        </template>
        <!-- 新建/修改 -->
        <dispatchUnitDetailsPlat ref="dispatchUnitDetailsPlat" @success="handlePageChange"/>
    </TableLayout>
</template>
 
<script>
import BaseTable from '@/components/base/BaseTable'
import TableLayout from '@/layouts/TableLayout'
import Pagination from '@/components/common/Pagination'
import dispatchUnitDetailsPlat from '@/components/business/dispatchUnitDetailsPlat'
import { pageAll as companyAll } from '@/api/business/company'
import { mapState } from 'vuex'
export default {
  name: 'dispatchUnitReview',
  extends: BaseTable,
  components: { TableLayout, Pagination, dispatchUnitDetailsPlat },
  data () {
    return {
      // 搜索
      searchForm: {
        name: '',
        companyId: '',
        unitStatus: null,
        worktypeStatus: null
      },
      companyList: []
    }
  },
  computed: {
    ...mapState(['userInfo'])
  },
  created () {
    this.config({
      module: '派遣单位信息表',
      api: '/business/dispatchUnit',
      'field.id': 'id',
      'field.main': 'id'
    })
    this.search()
    this.loadSelectList()
  },
  methods: {
    // handlePageChange() {
    //   this.search()
    // },
    // 搜索
    search1 () {
      this.searchForm.worktypeStatus = null
      this.search()
    },
    loadSelectList () {
      companyAll({}).then(res => {
        this.companyList = res
      }).catch(err => {
      })
    }
 
  }
}
</script>