沈丘营商办后台前端项目
346149741
2024-09-04 8b9b4ae42a1e0c5969ab8a2bd31aa59e26f688c7
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
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
<template>
  <div  class="app-container">
    <el-form inline class="evenly-distributed-labels" ref="formRef" :model="refValue.queryParams" label-width="80px">
      <el-form-item label="执法记录" prop="enforceReason">
        <el-input placeholder="请输入" v-model="refValue.quparams.enforceReason" ></el-input>
      </el-form-item>
      <el-form-item label="执法类型"  prop="enforceType">
        <el-select v-model="refValue.quparams.enforceType" placeholder="请选择"  style="width: 170px;">
          <el-option  v-for="(item,index) in enforce_type" :label="item.label" :value="item.value" :key="index"></el-option>
        </el-select>
      </el-form-item>
      <el-form-item label="执法时间"  prop="enforceType">
        <el-date-picker
        v-model="refValue.quparams.pertime"
        @change="timeChange"
         format="YYYY-MM-DD"
        value-format="YYYY-MM-DD"
        type="daterange"
        range-separator="至"
        start-placeholder="开始时间"
        end-placeholder="结束时间"
      />
      </el-form-item>
      <el-form-item label="企业"  prop="companyName">
        <el-input placeholder="请输入" v-model="refValue.quparams.companyName"></el-input>
      </el-form-item>
      <el-form-item label="执法部门" prop="applyDeptName">
        <el-input placeholder="请输入" v-model="refValue.quparams.applyDeptName"></el-input>
      </el-form-item>
      <el-form-item label="状态" prop="orderStatus">
        <!-- <el-input placeholder="请输入" ></el-input> -->
        <el-select v-model="refValue.quparams.orderStatus" placeholder="请选择" style="width: 170px;">
          <el-option  v-for="(item,index) in refValue.orderStatusMap"  :value="index" :label="item">
          </el-option>
        </el-select>
      </el-form-item>
      <el-form-item label="执法结果"  prop="regionStatus">
        <el-select style="width: 170px;" v-model="refValue.quparams.regionStatus" placeholder="请选择">
          <el-option label="正常" value="0"></el-option>
          <el-option label="停业整顿" value="1"></el-option>
        </el-select>
      </el-form-item>
      <el-form-item label="是否通知"   prop="isNoticeCompany">
        <el-select v-model="refValue.quparams.isNoticeCompany" placeholder="请选择" style="width: 170px;">
          <el-option label="否" value="0"></el-option>
          <el-option label="是" value="1"></el-option>
        </el-select>
      </el-form-item>
      <el-form-item>
        <el-button type="primary" icon="Search" @click="handleQuery">搜索</el-button>
        <el-button icon="Refresh" @click="resetQuery">重置</el-button>
      </el-form-item>
    </el-form>
    <!-- <el-row class="mt20 mb10">
      <el-col>
        <el-button icon="Download" type="primary" plain>导出</el-button>
      </el-col>
    </el-row> -->
    <el-table :data="refValue.tableData">
      <el-table-column label="企业" prop="companyName"></el-table-column>
      <el-table-column label="执法部门" prop="applyDeptName"></el-table-column>
      <el-table-column label="执法人" prop="applyUser"></el-table-column>
      <el-table-column label="执法类型" prop="enforceType">
        <template #default="scope">
          {{dispImgType(scope.row.enforceType)}}
        </template>
      </el-table-column>
      <el-table-column label="执法主题" prop="enforceReason">
        <template #default="scope">
          <el-link type="primary" @click="openDetails(scope.row)">{{ scope.row.enforceReason }}</el-link>
        </template>
      </el-table-column>
      <el-table-column label="申请时间" prop="applyTime" width="180"></el-table-column>
      <el-table-column label="执法时间" prop="planTime"  width="180"></el-table-column>
      <el-table-column label="状态" prop="orderStatus" width="100">
        <template #default="scope">
          {{ refValue.orderStatusMap[scope.row.orderStatus] }}
        </template>
      </el-table-column>
      <el-table-column label="执法结果" prop="regionStatus" width="100">
        <template #default="scope">
          {{ refValue.regionStatus[scope.row.regionStatus] }}
        </template>
      </el-table-column>
      <el-table-column label="是否通知企业" prop="isNoticeCompany" width="120">
        <template #default="scope">
          {{ refValue.isNoticeCompany[scope.row.isNoticeCompany] }}
        </template>
      </el-table-column>
    </el-table>
    <pagination v-show="refValue.quparams.total > 0" :total="refValue.quparams.total" v-model:page="refValue.quparams.pageNum" v-model:limit="refValue.quparams.pageSize" @pagination="getList" />
      <detailsCom ref="refDetails"></detailsCom>
  </div>
</template>
 
<script lang="ts" setup>
import { companyListEnforce } from '@/api/system/company/company'
import detailsCom from './component/details.vue'
const formRef = ref()
const refDetails = ref()
const { proxy } = getCurrentInstance()
const { enforce_type } = proxy.useDictPer("enforce_type");
const time = ref("")
const refValue: any = reactive({
  tableData: [],
  total: 1,
  quparams: {
    pageNum: 1,
    pageSize: 10,
    total: 1,
    companyName: '',
    enforceType: '',
    applyDeptName: '',
    orderStatus: "",
    enforceReason: "",
    isNoticeCompany: "",
    enforceTime: "",
    begineTime: "",
    endTime: "",
  },
  orderStatusMap: {
    '-1': '拒绝',
    0: '待提交',
    1: '已提交',
    2: '待执行',
    3: '待上报',
    4: '已上报',
    5: '企业已确认',
  },
  regionStatus: {
    0: '正常',
    1: '停业整顿',
  },
  isNoticeCompany: {
    0: '否',
    1: '是',
  }
})
const form = reactive({
  queryParams: {
    content: ''
  }
})
const dispImgType = (e: string) => {
  return enforce_type.value.find((f: any) => f.value == e)?.label;
};
function getList(e: { limit: number; page: number }) {
  refValue.quparams.pageSize = e.limit
  refValue.quparams.pageNum = e.page
  companyListEnforceHandle()
}
function companyListEnforceHandle() {
  companyListEnforce(refValue.quparams).then(res => {
    refValue.tableData = res.rows
    refValue.quparams.total = res.total
  })
}
companyListEnforceHandle()
function handleQuery() {
  refValue.quparams.pageNum = 1
  companyListEnforceHandle()
}
function timeChange(e: string[]) {
  refValue.quparams.begineTime = e[0] + " " + "00:00:00"
  refValue.quparams.endTime = e[1] + " " + "23:59:59"
}
function openDetails(item: any) {
  refDetails.value.openDialog(item)
}
function resetQuery() {
  refValue.quparams = {
    pageNum: 1,
    pageSize: 10,
    total: 1,
    companyName: '',
    enforceType: '',
    applyDeptName: '',
    orderStatus: "",
    enforceReason: "",
    isNoticeCompany: "",
    begineTime: "",
    endTime: "",
  }
  formRef.value.resetFields()
  companyListEnforceHandle()
 
}
</script>
 
<style scoped lang="scss">
.evenly-distributed-labels {
  :deep(){
    .el-form-item__label {
      position: relative; /* 设置相对定位作为星号的定位基准 */
      text-align: justify;
      text-align-last: justify; /* 确保最后一行也两端对齐 */
      padding-left: 10px; /* 为星号预留空间 */
      display: inline-block;
    }
  }
}
</style>