新增录入页面
This commit is contained in:
parent
20ca0cd974
commit
087614ead6
@ -21,7 +21,7 @@
|
||||
</noscript>
|
||||
<div id="app">
|
||||
<div class="first-loading-wrp">
|
||||
<h1>Snowy</h1>
|
||||
<h1>内蒙雄伟光大</h1>
|
||||
<div class="loading-wrp">
|
||||
<span class="dot dot-spin"><i></i><i></i><i></i><i></i></span>
|
||||
</div>
|
||||
|
||||
86
src/api/modular/main/scrhidedata/scrHideDataManage.js
Normal file
86
src/api/modular/main/scrhidedata/scrHideDataManage.js
Normal file
@ -0,0 +1,86 @@
|
||||
import { axios } from '@/utils/request'
|
||||
|
||||
/**
|
||||
* 查询隐患整改
|
||||
*
|
||||
* @author 1
|
||||
* @date 2025-10-13 17:15:20
|
||||
*/
|
||||
export function scrHideDataPage (parameter) {
|
||||
return axios({
|
||||
url: '/scrHideData/page',
|
||||
method: 'get',
|
||||
params: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 隐患整改列表
|
||||
*
|
||||
* @author 1
|
||||
* @date 2025-10-13 17:15:20
|
||||
*/
|
||||
export function scrHideDataList (parameter) {
|
||||
return axios({
|
||||
url: '/scrHideData/list',
|
||||
method: 'get',
|
||||
params: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加隐患整改
|
||||
*
|
||||
* @author 1
|
||||
* @date 2025-10-13 17:15:20
|
||||
*/
|
||||
export function scrHideDataAdd (parameter) {
|
||||
return axios({
|
||||
url: '/scrHideData/add',
|
||||
method: 'post',
|
||||
data: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑隐患整改
|
||||
*
|
||||
* @author 1
|
||||
* @date 2025-10-13 17:15:20
|
||||
*/
|
||||
export function scrHideDataEdit (parameter) {
|
||||
return axios({
|
||||
url: '/scrHideData/edit',
|
||||
method: 'post',
|
||||
data: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除隐患整改
|
||||
*
|
||||
* @author 1
|
||||
* @date 2025-10-13 17:15:20
|
||||
*/
|
||||
export function scrHideDataDelete (parameter) {
|
||||
return axios({
|
||||
url: '/scrHideData/delete',
|
||||
method: 'post',
|
||||
data: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出隐患整改
|
||||
*
|
||||
* @author 1
|
||||
* @date 2025-10-13 17:15:20
|
||||
*/
|
||||
export function scrHideDataExport (parameter) {
|
||||
return axios({
|
||||
url: '/scrHideData/export',
|
||||
method: 'get',
|
||||
params: parameter,
|
||||
responseType: 'blob'
|
||||
})
|
||||
}
|
||||
86
src/api/modular/main/scrmeterdata/scrMeterDataManage.js
Normal file
86
src/api/modular/main/scrmeterdata/scrMeterDataManage.js
Normal file
@ -0,0 +1,86 @@
|
||||
import { axios } from '@/utils/request'
|
||||
|
||||
/**
|
||||
* 查询电表
|
||||
*
|
||||
* @author 2
|
||||
* @date 2025-10-13 17:55:42
|
||||
*/
|
||||
export function scrMeterDataPage (parameter) {
|
||||
return axios({
|
||||
url: '/scrMeterData/page',
|
||||
method: 'get',
|
||||
params: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 电表列表
|
||||
*
|
||||
* @author 2
|
||||
* @date 2025-10-13 17:55:42
|
||||
*/
|
||||
export function scrMeterDataList (parameter) {
|
||||
return axios({
|
||||
url: '/scrMeterData/list',
|
||||
method: 'get',
|
||||
params: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加电表
|
||||
*
|
||||
* @author 2
|
||||
* @date 2025-10-13 17:55:42
|
||||
*/
|
||||
export function scrMeterDataAdd (parameter) {
|
||||
return axios({
|
||||
url: '/scrMeterData/add',
|
||||
method: 'post',
|
||||
data: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑电表
|
||||
*
|
||||
* @author 2
|
||||
* @date 2025-10-13 17:55:42
|
||||
*/
|
||||
export function scrMeterDataEdit (parameter) {
|
||||
return axios({
|
||||
url: '/scrMeterData/edit',
|
||||
method: 'post',
|
||||
data: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除电表
|
||||
*
|
||||
* @author 2
|
||||
* @date 2025-10-13 17:55:42
|
||||
*/
|
||||
export function scrMeterDataDelete (parameter) {
|
||||
return axios({
|
||||
url: '/scrMeterData/delete',
|
||||
method: 'post',
|
||||
data: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出电表
|
||||
*
|
||||
* @author 2
|
||||
* @date 2025-10-13 17:55:42
|
||||
*/
|
||||
export function scrMeterDataExport (parameter) {
|
||||
return axios({
|
||||
url: '/scrMeterData/export',
|
||||
method: 'get',
|
||||
params: parameter,
|
||||
responseType: 'blob'
|
||||
})
|
||||
}
|
||||
86
src/api/modular/main/scrriskdata/scrRiskDataManage.js
Normal file
86
src/api/modular/main/scrriskdata/scrRiskDataManage.js
Normal file
@ -0,0 +1,86 @@
|
||||
import { axios } from '@/utils/request'
|
||||
|
||||
/**
|
||||
* 查询风险排查
|
||||
*
|
||||
* @author 1
|
||||
* @date 2025-10-13 17:02:00
|
||||
*/
|
||||
export function scrRiskDataPage (parameter) {
|
||||
return axios({
|
||||
url: '/scrRiskData/page',
|
||||
method: 'get',
|
||||
params: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 风险排查列表
|
||||
*
|
||||
* @author 1
|
||||
* @date 2025-10-13 17:02:00
|
||||
*/
|
||||
export function scrRiskDataList (parameter) {
|
||||
return axios({
|
||||
url: '/scrRiskData/list',
|
||||
method: 'get',
|
||||
params: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加风险排查
|
||||
*
|
||||
* @author 1
|
||||
* @date 2025-10-13 17:02:00
|
||||
*/
|
||||
export function scrRiskDataAdd (parameter) {
|
||||
return axios({
|
||||
url: '/scrRiskData/add',
|
||||
method: 'post',
|
||||
data: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑风险排查
|
||||
*
|
||||
* @author 1
|
||||
* @date 2025-10-13 17:02:00
|
||||
*/
|
||||
export function scrRiskDataEdit (parameter) {
|
||||
return axios({
|
||||
url: '/scrRiskData/edit',
|
||||
method: 'post',
|
||||
data: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除风险排查
|
||||
*
|
||||
* @author 1
|
||||
* @date 2025-10-13 17:02:00
|
||||
*/
|
||||
export function scrRiskDataDelete (parameter) {
|
||||
return axios({
|
||||
url: '/scrRiskData/delete',
|
||||
method: 'post',
|
||||
data: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出风险排查
|
||||
*
|
||||
* @author 1
|
||||
* @date 2025-10-13 17:02:00
|
||||
*/
|
||||
export function scrRiskDataExport (parameter) {
|
||||
return axios({
|
||||
url: '/scrRiskData/export',
|
||||
method: 'get',
|
||||
params: parameter,
|
||||
responseType: 'blob'
|
||||
})
|
||||
}
|
||||
86
src/api/modular/main/scrworktask/scrWorkTaskManage.js
Normal file
86
src/api/modular/main/scrworktask/scrWorkTaskManage.js
Normal file
@ -0,0 +1,86 @@
|
||||
import { axios } from '@/utils/request'
|
||||
|
||||
/**
|
||||
* 查询作业票
|
||||
*
|
||||
* @author 1
|
||||
* @date 2025-10-13 17:49:44
|
||||
*/
|
||||
export function scrWorkTaskPage (parameter) {
|
||||
return axios({
|
||||
url: '/scrWorkTask/page',
|
||||
method: 'get',
|
||||
params: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 作业票列表
|
||||
*
|
||||
* @author 1
|
||||
* @date 2025-10-13 17:49:44
|
||||
*/
|
||||
export function scrWorkTaskList (parameter) {
|
||||
return axios({
|
||||
url: '/scrWorkTask/list',
|
||||
method: 'get',
|
||||
params: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加作业票
|
||||
*
|
||||
* @author 1
|
||||
* @date 2025-10-13 17:49:44
|
||||
*/
|
||||
export function scrWorkTaskAdd (parameter) {
|
||||
return axios({
|
||||
url: '/scrWorkTask/add',
|
||||
method: 'post',
|
||||
data: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑作业票
|
||||
*
|
||||
* @author 1
|
||||
* @date 2025-10-13 17:49:44
|
||||
*/
|
||||
export function scrWorkTaskEdit (parameter) {
|
||||
return axios({
|
||||
url: '/scrWorkTask/edit',
|
||||
method: 'post',
|
||||
data: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除作业票
|
||||
*
|
||||
* @author 1
|
||||
* @date 2025-10-13 17:49:44
|
||||
*/
|
||||
export function scrWorkTaskDelete (parameter) {
|
||||
return axios({
|
||||
url: '/scrWorkTask/delete',
|
||||
method: 'post',
|
||||
data: parameter
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出作业票
|
||||
*
|
||||
* @author 1
|
||||
* @date 2025-10-13 17:49:44
|
||||
*/
|
||||
export function scrWorkTaskExport (parameter) {
|
||||
return axios({
|
||||
url: '/scrWorkTask/export',
|
||||
method: 'get',
|
||||
params: parameter,
|
||||
responseType: 'blob'
|
||||
})
|
||||
}
|
||||
@ -2,9 +2,9 @@
|
||||
<div class="footer">
|
||||
<div class="links">
|
||||
</div>
|
||||
<div class="copyright">
|
||||
<!-- <div class="copyright">
|
||||
Copyright © 2020 <a target="_blank" href="https://www.xiaonuo.vip/">小诺开源技术</a> All rights reserved. Snowy 1.8
|
||||
</div>
|
||||
</div> -->
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
||||
@ -25,7 +25,7 @@ export default {
|
||||
props: {
|
||||
title: {
|
||||
type: String,
|
||||
default: 'Snowy',
|
||||
default: '内蒙雄伟光大',
|
||||
required: false
|
||||
},
|
||||
showTitle: {
|
||||
|
||||
@ -16,14 +16,14 @@
|
||||
<route-view></route-view>
|
||||
|
||||
<div class="footer">
|
||||
<div class="links">
|
||||
<!-- <div class="links">
|
||||
<a href="_self">帮助</a>
|
||||
<a href="_self">隐私</a>
|
||||
<a href="_self">条款</a>
|
||||
</div>
|
||||
<div class="copyright">
|
||||
Copyright © 2020 <a target="_blank" href="https://www.xiaonuo.vip/">小诺开源技术</a> All rights reserved. Snowy 1.8
|
||||
</div>
|
||||
</div> -->
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
116
src/views/main/scrhidedata/addForm.vue
Normal file
116
src/views/main/scrhidedata/addForm.vue
Normal file
@ -0,0 +1,116 @@
|
||||
<template>
|
||||
<a-modal
|
||||
title="新增隐患整改"
|
||||
:width="900"
|
||||
:visible="visible"
|
||||
:confirmLoading="confirmLoading"
|
||||
@ok="handleSubmit"
|
||||
@cancel="handleCancel"
|
||||
>
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<a-form :form="form">
|
||||
<a-form-item
|
||||
label="年份"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入年份" style="width: 100%" v-decorator="['year', {rules: [{required: true, message: '请输入年份!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="月份"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入月份" style="width: 100%" v-decorator="['month', {rules: [{required: true, message: '请输入月份!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="隐患数量"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入隐患数量" style="width: 100%" v-decorator="['yhsl', {rules: [{required: true, message: '请输入隐患数量!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="已整改"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入已整改" style="width: 100%" v-decorator="['yzg', {rules: [{required: true, message: '请输入已整改!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="未整改"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入未整改" style="width: 100%" v-decorator="['wzg', {rules: [{required: true, message: '请输入未整改!'}]}]" />
|
||||
</a-form-item>
|
||||
</a-form>
|
||||
</a-spin>
|
||||
</a-modal>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { scrHideDataAdd } from '@/api/modular/main/scrhidedata/scrHideDataManage'
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
labelCol: {
|
||||
xs: { span: 24 },
|
||||
sm: { span: 5 }
|
||||
},
|
||||
wrapperCol: {
|
||||
xs: { span: 24 },
|
||||
sm: { span: 15 }
|
||||
},
|
||||
visible: false,
|
||||
confirmLoading: false,
|
||||
form: this.$form.createForm(this)
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
// 初始化方法
|
||||
add (record) {
|
||||
this.visible = true
|
||||
},
|
||||
/**
|
||||
* 提交表单
|
||||
*/
|
||||
handleSubmit () {
|
||||
const { form: { validateFields } } = this
|
||||
this.confirmLoading = true
|
||||
validateFields((errors, values) => {
|
||||
if (!errors) {
|
||||
for (const key in values) {
|
||||
if (typeof (values[key]) === 'object' && values[key] != null) {
|
||||
values[key] = JSON.stringify(values[key])
|
||||
}
|
||||
}
|
||||
scrHideDataAdd(values).then((res) => {
|
||||
if (res.success) {
|
||||
this.$message.success('新增成功')
|
||||
this.confirmLoading = false
|
||||
this.$emit('ok', values)
|
||||
this.handleCancel()
|
||||
} else {
|
||||
this.$message.error('新增失败')// + res.message
|
||||
}
|
||||
}).finally((res) => {
|
||||
this.confirmLoading = false
|
||||
})
|
||||
} else {
|
||||
this.confirmLoading = false
|
||||
}
|
||||
})
|
||||
},
|
||||
handleCancel () {
|
||||
this.form.resetFields()
|
||||
this.visible = false
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
126
src/views/main/scrhidedata/editForm.vue
Normal file
126
src/views/main/scrhidedata/editForm.vue
Normal file
@ -0,0 +1,126 @@
|
||||
<template>
|
||||
<a-modal
|
||||
title="编辑隐患整改"
|
||||
:width="900"
|
||||
:visible="visible"
|
||||
:confirmLoading="confirmLoading"
|
||||
@ok="handleSubmit"
|
||||
@cancel="handleCancel"
|
||||
>
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<a-form :form="form">
|
||||
<a-form-item v-show="false"><a-input v-decorator="['id']" /></a-form-item>
|
||||
<a-form-item
|
||||
label="年份"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入年份" style="width: 100%" v-decorator="['year', {rules: [{required: true, message: '请输入年份!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="月份"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入月份" style="width: 100%" v-decorator="['month', {rules: [{required: true, message: '请输入月份!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="隐患数量"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入隐患数量" style="width: 100%" v-decorator="['yhsl', {rules: [{required: true, message: '请输入隐患数量!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="已整改"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入已整改" style="width: 100%" v-decorator="['yzg', {rules: [{required: true, message: '请输入已整改!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="未整改"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入未整改" style="width: 100%" v-decorator="['wzg', {rules: [{required: true, message: '请输入未整改!'}]}]" />
|
||||
</a-form-item>
|
||||
</a-form>
|
||||
</a-spin>
|
||||
</a-modal>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { scrHideDataEdit } from '@/api/modular/main/scrhidedata/scrHideDataManage'
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
labelCol: {
|
||||
xs: { span: 24 },
|
||||
sm: { span: 5 }
|
||||
},
|
||||
wrapperCol: {
|
||||
xs: { span: 24 },
|
||||
sm: { span: 15 }
|
||||
},
|
||||
visible: false,
|
||||
confirmLoading: false,
|
||||
form: this.$form.createForm(this)
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
// 初始化方法
|
||||
edit (record) {
|
||||
this.visible = true
|
||||
setTimeout(() => {
|
||||
this.form.setFieldsValue(
|
||||
{
|
||||
id: record.id,
|
||||
year: record.year,
|
||||
month: record.month,
|
||||
yhsl: record.yhsl,
|
||||
yzg: record.yzg,
|
||||
wzg: record.wzg
|
||||
}
|
||||
)
|
||||
}, 100)
|
||||
},
|
||||
handleSubmit () {
|
||||
const { form: { validateFields } } = this
|
||||
this.confirmLoading = true
|
||||
validateFields((errors, values) => {
|
||||
if (!errors) {
|
||||
for (const key in values) {
|
||||
if (typeof (values[key]) === 'object' && values[key] != null) {
|
||||
values[key] = JSON.stringify(values[key])
|
||||
}
|
||||
}
|
||||
scrHideDataEdit(values).then((res) => {
|
||||
if (res.success) {
|
||||
this.$message.success('编辑成功')
|
||||
this.confirmLoading = false
|
||||
this.$emit('ok', values)
|
||||
this.handleCancel()
|
||||
} else {
|
||||
this.$message.error('编辑失败')// + res.message
|
||||
}
|
||||
}).finally((res) => {
|
||||
this.confirmLoading = false
|
||||
})
|
||||
} else {
|
||||
this.confirmLoading = false
|
||||
}
|
||||
})
|
||||
},
|
||||
handleCancel () {
|
||||
this.form.resetFields()
|
||||
this.visible = false
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
182
src/views/main/scrhidedata/index.vue
Normal file
182
src/views/main/scrhidedata/index.vue
Normal file
@ -0,0 +1,182 @@
|
||||
<template>
|
||||
<div>
|
||||
<a-card :bordered="false" :bodyStyle="tstyle">
|
||||
<div class="table-page-search-wrapper">
|
||||
<a-form layout="inline">
|
||||
<a-row :gutter="48">
|
||||
<a-col :md="8" :sm="24">
|
||||
<a-form-item label="年份">
|
||||
<a-input-number v-model="queryParam.year" style="width: 100%" allow-clear placeholder="请输入年份"/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :md="8" :sm="24">
|
||||
<a-form-item label="月份">
|
||||
<a-input-number v-model="queryParam.month" style="width: 100%" allow-clear placeholder="请输入月份"/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" @click="$refs.table.refresh(true)">查询</a-button>
|
||||
<a-button style="margin-left: 8px" @click="() => queryParam = {}">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</a-form>
|
||||
</div>
|
||||
</a-card>
|
||||
<a-card :bordered="false">
|
||||
<s-table
|
||||
ref="table"
|
||||
:columns="columns"
|
||||
:data="loadData"
|
||||
:alert="options.alert"
|
||||
:rowKey="(record) => record.id"
|
||||
:rowSelection="options.rowSelection"
|
||||
>
|
||||
<template class="table-operator" slot="operator">
|
||||
<a-button type="primary" icon="plus" @click="$refs.addForm.add()">新增</a-button>
|
||||
<a-button type="danger" :disabled="selectedRowKeys.length < 1" @click="batchDelete"><a-icon type="delete"/>批量删除</a-button>
|
||||
<x-down
|
||||
ref="batchExport"
|
||||
@batchExport="batchExport"
|
||||
/>
|
||||
</template>
|
||||
<span slot="action" slot-scope="text, record">
|
||||
<a @click="$refs.editForm.edit(record)">编辑</a>
|
||||
<a-divider type="vertical"/>
|
||||
<a-popconfirm placement="topRight" title="确认删除?" @confirm="() => singleDelete(record)">
|
||||
<a>删除</a>
|
||||
</a-popconfirm>
|
||||
</span>
|
||||
</s-table>
|
||||
<add-form ref="addForm" @ok="handleOk" />
|
||||
<edit-form ref="editForm" @ok="handleOk" />
|
||||
</a-card>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { STable, XDown } from '@/components'
|
||||
import { scrHideDataPage, scrHideDataDelete, scrHideDataExport } from '@/api/modular/main/scrhidedata/scrHideDataManage'
|
||||
import addForm from './addForm.vue'
|
||||
import editForm from './editForm.vue'
|
||||
export default {
|
||||
components: {
|
||||
STable,
|
||||
addForm,
|
||||
editForm,
|
||||
XDown
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
// 查询参数
|
||||
queryParam: {},
|
||||
// 表头
|
||||
columns: [
|
||||
{
|
||||
title: '年份',
|
||||
align: 'center',
|
||||
dataIndex: 'year'
|
||||
},
|
||||
{
|
||||
title: '月份',
|
||||
align: 'center',
|
||||
dataIndex: 'month'
|
||||
},
|
||||
{
|
||||
title: '隐患数量',
|
||||
align: 'center',
|
||||
dataIndex: 'yhsl'
|
||||
},
|
||||
{
|
||||
title: '已整改',
|
||||
align: 'center',
|
||||
dataIndex: 'yzg'
|
||||
},
|
||||
{
|
||||
title: '未整改',
|
||||
align: 'center',
|
||||
dataIndex: 'wzg'
|
||||
}
|
||||
],
|
||||
tstyle: { 'padding-bottom': '0px', 'margin-bottom': '10px' },
|
||||
// 加载数据方法 必须为 Promise 对象
|
||||
loadData: parameter => {
|
||||
return scrHideDataPage(Object.assign(parameter, this.queryParam)).then((res) => {
|
||||
return res.data
|
||||
})
|
||||
},
|
||||
selectedRowKeys: [],
|
||||
selectedRows: [],
|
||||
options: {
|
||||
alert: { show: true, clear: () => { this.selectedRowKeys = [] } },
|
||||
rowSelection: {
|
||||
selectedRowKeys: this.selectedRowKeys,
|
||||
onChange: this.onSelectChange
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
created () {
|
||||
this.columns.push({
|
||||
title: '操作',
|
||||
width: '150px',
|
||||
dataIndex: 'action',
|
||||
scopedSlots: { customRender: 'action' }
|
||||
})
|
||||
},
|
||||
methods: {
|
||||
/**
|
||||
* 单个删除
|
||||
*/
|
||||
singleDelete (record) {
|
||||
const param = [{ 'id': record.id }]
|
||||
this.scrHideDataDelete(param)
|
||||
},
|
||||
/**
|
||||
* 批量删除
|
||||
*/
|
||||
batchDelete () {
|
||||
const paramIds = this.selectedRowKeys.map((d) => {
|
||||
return { 'id': d }
|
||||
})
|
||||
this.scrHideDataDelete(paramIds)
|
||||
},
|
||||
scrHideDataDelete (record) {
|
||||
scrHideDataDelete(record).then((res) => {
|
||||
if (res.success) {
|
||||
this.$message.success('删除成功')
|
||||
this.$refs.table.clearRefreshSelected()
|
||||
} else {
|
||||
this.$message.error('删除失败') // + res.message
|
||||
}
|
||||
})
|
||||
},
|
||||
/**
|
||||
* 批量导出
|
||||
*/
|
||||
batchExport () {
|
||||
const paramIds = this.selectedRowKeys.map((d) => {
|
||||
return { 'id': d }
|
||||
})
|
||||
scrHideDataExport(paramIds).then((res) => {
|
||||
this.$refs.batchExport.downloadfile(res)
|
||||
})
|
||||
},
|
||||
handleOk () {
|
||||
this.$refs.table.refresh()
|
||||
},
|
||||
onSelectChange (selectedRowKeys, selectedRows) {
|
||||
this.selectedRowKeys = selectedRowKeys
|
||||
this.selectedRows = selectedRows
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="less">
|
||||
.table-operator {
|
||||
margin-bottom: 18px;
|
||||
}
|
||||
button {
|
||||
margin-right: 8px;
|
||||
}
|
||||
</style>
|
||||
116
src/views/main/scrmeterdata/addForm.vue
Normal file
116
src/views/main/scrmeterdata/addForm.vue
Normal file
@ -0,0 +1,116 @@
|
||||
<template>
|
||||
<a-modal
|
||||
title="新增电表"
|
||||
:width="900"
|
||||
:visible="visible"
|
||||
:confirmLoading="confirmLoading"
|
||||
@ok="handleSubmit"
|
||||
@cancel="handleCancel"
|
||||
>
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<a-form :form="form">
|
||||
<a-form-item
|
||||
label="电表"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input placeholder="请输入电表" v-decorator="['name', {rules: [{required: true, message: '请输入电表!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="年份"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入年份" style="width: 100%" v-decorator="['year', {rules: [{required: true, message: '请输入年份!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="月份"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入月份" style="width: 100%" v-decorator="['month', {rules: [{required: true, message: '请输入月份!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="累计电量"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入累计电量" style="width: 100%" v-decorator="['totalEcnum', {rules: [{required: true, message: '请输入累计电量!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="平均功率"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入平均功率" style="width: 100%" v-decorator="['avgPower', {rules: [{required: true, message: '请输入平均功率!'}]}]" />
|
||||
</a-form-item>
|
||||
</a-form>
|
||||
</a-spin>
|
||||
</a-modal>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { scrMeterDataAdd } from '@/api/modular/main/scrmeterdata/scrMeterDataManage'
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
labelCol: {
|
||||
xs: { span: 24 },
|
||||
sm: { span: 5 }
|
||||
},
|
||||
wrapperCol: {
|
||||
xs: { span: 24 },
|
||||
sm: { span: 15 }
|
||||
},
|
||||
visible: false,
|
||||
confirmLoading: false,
|
||||
form: this.$form.createForm(this)
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
// 初始化方法
|
||||
add (record) {
|
||||
this.visible = true
|
||||
},
|
||||
/**
|
||||
* 提交表单
|
||||
*/
|
||||
handleSubmit () {
|
||||
const { form: { validateFields } } = this
|
||||
this.confirmLoading = true
|
||||
validateFields((errors, values) => {
|
||||
if (!errors) {
|
||||
for (const key in values) {
|
||||
if (typeof (values[key]) === 'object' && values[key] != null) {
|
||||
values[key] = JSON.stringify(values[key])
|
||||
}
|
||||
}
|
||||
scrMeterDataAdd(values).then((res) => {
|
||||
if (res.success) {
|
||||
this.$message.success('新增成功')
|
||||
this.confirmLoading = false
|
||||
this.$emit('ok', values)
|
||||
this.handleCancel()
|
||||
} else {
|
||||
this.$message.error('新增失败')// + res.message
|
||||
}
|
||||
}).finally((res) => {
|
||||
this.confirmLoading = false
|
||||
})
|
||||
} else {
|
||||
this.confirmLoading = false
|
||||
}
|
||||
})
|
||||
},
|
||||
handleCancel () {
|
||||
this.form.resetFields()
|
||||
this.visible = false
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
126
src/views/main/scrmeterdata/editForm.vue
Normal file
126
src/views/main/scrmeterdata/editForm.vue
Normal file
@ -0,0 +1,126 @@
|
||||
<template>
|
||||
<a-modal
|
||||
title="编辑电表"
|
||||
:width="900"
|
||||
:visible="visible"
|
||||
:confirmLoading="confirmLoading"
|
||||
@ok="handleSubmit"
|
||||
@cancel="handleCancel"
|
||||
>
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<a-form :form="form">
|
||||
<a-form-item v-show="false"><a-input v-decorator="['id']" /></a-form-item>
|
||||
<a-form-item
|
||||
label="电表"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input placeholder="请输入电表" v-decorator="['name', {rules: [{required: true, message: '请输入电表!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="年份"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入年份" style="width: 100%" v-decorator="['year', {rules: [{required: true, message: '请输入年份!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="月份"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入月份" style="width: 100%" v-decorator="['month', {rules: [{required: true, message: '请输入月份!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="累计电量"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入累计电量" style="width: 100%" v-decorator="['totalEcnum', {rules: [{required: true, message: '请输入累计电量!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="平均功率"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入平均功率" style="width: 100%" v-decorator="['avgPower', {rules: [{required: true, message: '请输入平均功率!'}]}]" />
|
||||
</a-form-item>
|
||||
</a-form>
|
||||
</a-spin>
|
||||
</a-modal>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { scrMeterDataEdit } from '@/api/modular/main/scrmeterdata/scrMeterDataManage'
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
labelCol: {
|
||||
xs: { span: 24 },
|
||||
sm: { span: 5 }
|
||||
},
|
||||
wrapperCol: {
|
||||
xs: { span: 24 },
|
||||
sm: { span: 15 }
|
||||
},
|
||||
visible: false,
|
||||
confirmLoading: false,
|
||||
form: this.$form.createForm(this)
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
// 初始化方法
|
||||
edit (record) {
|
||||
this.visible = true
|
||||
setTimeout(() => {
|
||||
this.form.setFieldsValue(
|
||||
{
|
||||
id: record.id,
|
||||
name: record.name,
|
||||
year: record.year,
|
||||
month: record.month,
|
||||
totalEcnum: record.totalEcnum,
|
||||
avgPower: record.avgPower
|
||||
}
|
||||
)
|
||||
}, 100)
|
||||
},
|
||||
handleSubmit () {
|
||||
const { form: { validateFields } } = this
|
||||
this.confirmLoading = true
|
||||
validateFields((errors, values) => {
|
||||
if (!errors) {
|
||||
for (const key in values) {
|
||||
if (typeof (values[key]) === 'object' && values[key] != null) {
|
||||
values[key] = JSON.stringify(values[key])
|
||||
}
|
||||
}
|
||||
scrMeterDataEdit(values).then((res) => {
|
||||
if (res.success) {
|
||||
this.$message.success('编辑成功')
|
||||
this.confirmLoading = false
|
||||
this.$emit('ok', values)
|
||||
this.handleCancel()
|
||||
} else {
|
||||
this.$message.error('编辑失败')// + res.message
|
||||
}
|
||||
}).finally((res) => {
|
||||
this.confirmLoading = false
|
||||
})
|
||||
} else {
|
||||
this.confirmLoading = false
|
||||
}
|
||||
})
|
||||
},
|
||||
handleCancel () {
|
||||
this.form.resetFields()
|
||||
this.visible = false
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
198
src/views/main/scrmeterdata/index.vue
Normal file
198
src/views/main/scrmeterdata/index.vue
Normal file
@ -0,0 +1,198 @@
|
||||
<template>
|
||||
<div>
|
||||
<a-card :bordered="false" :bodyStyle="tstyle">
|
||||
<div class="table-page-search-wrapper">
|
||||
<a-form layout="inline">
|
||||
<a-row :gutter="48">
|
||||
<a-col :md="8" :sm="24">
|
||||
<a-form-item label="电表">
|
||||
<a-input v-model="queryParam.name" allow-clear placeholder="请输入电表"/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :md="8" :sm="24">
|
||||
<a-form-item label="年份">
|
||||
<a-input-number v-model="queryParam.year" style="width: 100%" allow-clear placeholder="请输入年份"/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<template v-if="advanced">
|
||||
<a-col :md="8" :sm="24">
|
||||
<a-form-item label="月份">
|
||||
<a-input-number v-model="queryParam.month" style="width: 100%" allow-clear placeholder="请输入月份"/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</template>
|
||||
<a-col :md="8" :sm="24" >
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" @click="$refs.table.refresh(true)" >查询</a-button>
|
||||
<a-button style="margin-left: 8px" @click="() => queryParam = {}">重置</a-button>
|
||||
<a @click="toggleAdvanced" style="margin-left: 8px">
|
||||
{{ advanced ? '收起' : '展开' }}
|
||||
<a-icon :type="advanced ? 'up' : 'down'"/>
|
||||
</a>
|
||||
</span>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</a-form>
|
||||
</div>
|
||||
</a-card>
|
||||
<a-card :bordered="false">
|
||||
<s-table
|
||||
ref="table"
|
||||
:columns="columns"
|
||||
:data="loadData"
|
||||
:alert="options.alert"
|
||||
:rowKey="(record) => record.id"
|
||||
:rowSelection="options.rowSelection"
|
||||
>
|
||||
<template class="table-operator" slot="operator" >
|
||||
<a-button type="primary" icon="plus" @click="$refs.addForm.add()">新增</a-button>
|
||||
<a-button type="danger" :disabled="selectedRowKeys.length < 1" @click="batchDelete"><a-icon type="delete"/>批量删除</a-button>
|
||||
<x-down
|
||||
ref="batchExport"
|
||||
@batchExport="batchExport"
|
||||
/>
|
||||
</template>
|
||||
<span slot="action" slot-scope="text, record">
|
||||
<a @click="$refs.editForm.edit(record)">编辑</a>
|
||||
<a-divider type="vertical"/>
|
||||
<a-popconfirm placement="topRight" title="确认删除?" @confirm="() => singleDelete(record)">
|
||||
<a>删除</a>
|
||||
</a-popconfirm>
|
||||
</span>
|
||||
</s-table>
|
||||
<add-form ref="addForm" @ok="handleOk" />
|
||||
<edit-form ref="editForm" @ok="handleOk" />
|
||||
</a-card>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { STable, XDown } from '@/components'
|
||||
import { scrMeterDataPage, scrMeterDataDelete, scrMeterDataExport } from '@/api/modular/main/scrmeterdata/scrMeterDataManage'
|
||||
import addForm from './addForm.vue'
|
||||
import editForm from './editForm.vue'
|
||||
export default {
|
||||
components: {
|
||||
STable,
|
||||
addForm,
|
||||
editForm,
|
||||
XDown
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
// 高级搜索 展开/关闭
|
||||
advanced: false,
|
||||
// 查询参数
|
||||
queryParam: {},
|
||||
// 表头
|
||||
columns: [
|
||||
{
|
||||
title: '电表',
|
||||
align: 'center',
|
||||
dataIndex: 'name'
|
||||
},
|
||||
{
|
||||
title: '年份',
|
||||
align: 'center',
|
||||
dataIndex: 'year'
|
||||
},
|
||||
{
|
||||
title: '月份',
|
||||
align: 'center',
|
||||
dataIndex: 'month'
|
||||
},
|
||||
{
|
||||
title: '累计电量',
|
||||
align: 'center',
|
||||
dataIndex: 'totalEcnum'
|
||||
},
|
||||
{
|
||||
title: '平均功率',
|
||||
align: 'center',
|
||||
dataIndex: 'avgPower'
|
||||
}
|
||||
],
|
||||
tstyle: { 'padding-bottom': '0px', 'margin-bottom': '10px' },
|
||||
// 加载数据方法 必须为 Promise 对象
|
||||
loadData: parameter => {
|
||||
return scrMeterDataPage(Object.assign(parameter, this.queryParam)).then((res) => {
|
||||
return res.data
|
||||
})
|
||||
},
|
||||
selectedRowKeys: [],
|
||||
selectedRows: [],
|
||||
options: {
|
||||
alert: { show: true, clear: () => { this.selectedRowKeys = [] } },
|
||||
rowSelection: {
|
||||
selectedRowKeys: this.selectedRowKeys,
|
||||
onChange: this.onSelectChange
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
created () {
|
||||
this.columns.push({
|
||||
title: '操作',
|
||||
width: '150px',
|
||||
dataIndex: 'action',
|
||||
scopedSlots: { customRender: 'action' }
|
||||
})
|
||||
},
|
||||
methods: {
|
||||
/**
|
||||
* 单个删除
|
||||
*/
|
||||
singleDelete (record) {
|
||||
const param = [{ 'id': record.id }]
|
||||
this.scrMeterDataDelete(param)
|
||||
},
|
||||
/**
|
||||
* 批量删除
|
||||
*/
|
||||
batchDelete () {
|
||||
const paramIds = this.selectedRowKeys.map((d) => {
|
||||
return { 'id': d }
|
||||
})
|
||||
this.scrMeterDataDelete(paramIds)
|
||||
},
|
||||
scrMeterDataDelete (record) {
|
||||
scrMeterDataDelete(record).then((res) => {
|
||||
if (res.success) {
|
||||
this.$message.success('删除成功')
|
||||
this.$refs.table.clearRefreshSelected()
|
||||
} else {
|
||||
this.$message.error('删除失败') // + res.message
|
||||
}
|
||||
})
|
||||
},
|
||||
toggleAdvanced () {
|
||||
this.advanced = !this.advanced
|
||||
},
|
||||
/**
|
||||
* 批量导出
|
||||
*/
|
||||
batchExport () {
|
||||
const paramIds = this.selectedRowKeys.map((d) => {
|
||||
return { 'id': d }
|
||||
})
|
||||
scrMeterDataExport(paramIds).then((res) => {
|
||||
this.$refs.batchExport.downloadfile(res)
|
||||
})
|
||||
},
|
||||
handleOk () {
|
||||
this.$refs.table.refresh()
|
||||
},
|
||||
onSelectChange (selectedRowKeys, selectedRows) {
|
||||
this.selectedRowKeys = selectedRowKeys
|
||||
this.selectedRows = selectedRows
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="less">
|
||||
.table-operator {
|
||||
margin-bottom: 18px;
|
||||
}
|
||||
button {
|
||||
margin-right: 8px;
|
||||
}
|
||||
</style>
|
||||
116
src/views/main/scrriskdata/addForm.vue
Normal file
116
src/views/main/scrriskdata/addForm.vue
Normal file
@ -0,0 +1,116 @@
|
||||
<template>
|
||||
<a-modal
|
||||
title="新增风险排查"
|
||||
:width="900"
|
||||
:visible="visible"
|
||||
:confirmLoading="confirmLoading"
|
||||
@ok="handleSubmit"
|
||||
@cancel="handleCancel"
|
||||
>
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<a-form :form="form">
|
||||
<a-form-item
|
||||
label="年份"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入年份" style="width: 100%" v-decorator="['year', {rules: [{required: true, message: '请输入年份!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="月份"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入月份" style="width: 100%" v-decorator="['month', {rules: [{required: true, message: '请输入月份!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="已排查"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入已排查" style="width: 100%" v-decorator="['ypc', {rules: [{required: true, message: '请输入已排查!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="未排查"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入未排查" style="width: 100%" v-decorator="['wpc', {rules: [{required: true, message: '请输入未排查!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="超期未排查"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入超期未排查" style="width: 100%" v-decorator="['cqwpc', {rules: [{required: true, message: '请输入超期未排查!'}]}]" />
|
||||
</a-form-item>
|
||||
</a-form>
|
||||
</a-spin>
|
||||
</a-modal>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { scrRiskDataAdd } from '@/api/modular/main/scrriskdata/scrRiskDataManage'
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
labelCol: {
|
||||
xs: { span: 24 },
|
||||
sm: { span: 5 }
|
||||
},
|
||||
wrapperCol: {
|
||||
xs: { span: 24 },
|
||||
sm: { span: 15 }
|
||||
},
|
||||
visible: false,
|
||||
confirmLoading: false,
|
||||
form: this.$form.createForm(this)
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
// 初始化方法
|
||||
add (record) {
|
||||
this.visible = true
|
||||
},
|
||||
/**
|
||||
* 提交表单
|
||||
*/
|
||||
handleSubmit () {
|
||||
const { form: { validateFields } } = this
|
||||
this.confirmLoading = true
|
||||
validateFields((errors, values) => {
|
||||
if (!errors) {
|
||||
for (const key in values) {
|
||||
if (typeof (values[key]) === 'object' && values[key] != null) {
|
||||
values[key] = JSON.stringify(values[key])
|
||||
}
|
||||
}
|
||||
scrRiskDataAdd(values).then((res) => {
|
||||
if (res.success) {
|
||||
this.$message.success('新增成功')
|
||||
this.confirmLoading = false
|
||||
this.$emit('ok', values)
|
||||
this.handleCancel()
|
||||
} else {
|
||||
this.$message.error('新增失败')// + res.message
|
||||
}
|
||||
}).finally((res) => {
|
||||
this.confirmLoading = false
|
||||
})
|
||||
} else {
|
||||
this.confirmLoading = false
|
||||
}
|
||||
})
|
||||
},
|
||||
handleCancel () {
|
||||
this.form.resetFields()
|
||||
this.visible = false
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
126
src/views/main/scrriskdata/editForm.vue
Normal file
126
src/views/main/scrriskdata/editForm.vue
Normal file
@ -0,0 +1,126 @@
|
||||
<template>
|
||||
<a-modal
|
||||
title="编辑风险排查"
|
||||
:width="900"
|
||||
:visible="visible"
|
||||
:confirmLoading="confirmLoading"
|
||||
@ok="handleSubmit"
|
||||
@cancel="handleCancel"
|
||||
>
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<a-form :form="form">
|
||||
<a-form-item v-show="false"><a-input v-decorator="['id']" /></a-form-item>
|
||||
<a-form-item
|
||||
label="年份"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入年份" style="width: 100%" v-decorator="['year', {rules: [{required: true, message: '请输入年份!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="月份"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入月份" style="width: 100%" v-decorator="['month', {rules: [{required: true, message: '请输入月份!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="已排查"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入已排查" style="width: 100%" v-decorator="['ypc', {rules: [{required: true, message: '请输入已排查!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="未排查"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入未排查" style="width: 100%" v-decorator="['wpc', {rules: [{required: true, message: '请输入未排查!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="超期未排查"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入超期未排查" style="width: 100%" v-decorator="['cqwpc', {rules: [{required: true, message: '请输入超期未排查!'}]}]" />
|
||||
</a-form-item>
|
||||
</a-form>
|
||||
</a-spin>
|
||||
</a-modal>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { scrRiskDataEdit } from '@/api/modular/main/scrriskdata/scrRiskDataManage'
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
labelCol: {
|
||||
xs: { span: 24 },
|
||||
sm: { span: 5 }
|
||||
},
|
||||
wrapperCol: {
|
||||
xs: { span: 24 },
|
||||
sm: { span: 15 }
|
||||
},
|
||||
visible: false,
|
||||
confirmLoading: false,
|
||||
form: this.$form.createForm(this)
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
// 初始化方法
|
||||
edit (record) {
|
||||
this.visible = true
|
||||
setTimeout(() => {
|
||||
this.form.setFieldsValue(
|
||||
{
|
||||
id: record.id,
|
||||
year: record.year,
|
||||
month: record.month,
|
||||
ypc: record.ypc,
|
||||
wpc: record.wpc,
|
||||
cqwpc: record.cqwpc
|
||||
}
|
||||
)
|
||||
}, 100)
|
||||
},
|
||||
handleSubmit () {
|
||||
const { form: { validateFields } } = this
|
||||
this.confirmLoading = true
|
||||
validateFields((errors, values) => {
|
||||
if (!errors) {
|
||||
for (const key in values) {
|
||||
if (typeof (values[key]) === 'object' && values[key] != null) {
|
||||
values[key] = JSON.stringify(values[key])
|
||||
}
|
||||
}
|
||||
scrRiskDataEdit(values).then((res) => {
|
||||
if (res.success) {
|
||||
this.$message.success('编辑成功')
|
||||
this.confirmLoading = false
|
||||
this.$emit('ok', values)
|
||||
this.handleCancel()
|
||||
} else {
|
||||
this.$message.error('编辑失败')// + res.message
|
||||
}
|
||||
}).finally((res) => {
|
||||
this.confirmLoading = false
|
||||
})
|
||||
} else {
|
||||
this.confirmLoading = false
|
||||
}
|
||||
})
|
||||
},
|
||||
handleCancel () {
|
||||
this.form.resetFields()
|
||||
this.visible = false
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
182
src/views/main/scrriskdata/index.vue
Normal file
182
src/views/main/scrriskdata/index.vue
Normal file
@ -0,0 +1,182 @@
|
||||
<template>
|
||||
<div>
|
||||
<a-card :bordered="false" :bodyStyle="tstyle">
|
||||
<div class="table-page-search-wrapper" >
|
||||
<a-form layout="inline">
|
||||
<a-row :gutter="48">
|
||||
<a-col :md="8" :sm="24">
|
||||
<a-form-item label="年份">
|
||||
<a-input-number v-model="queryParam.year" style="width: 100%" allow-clear placeholder="请输入年份"/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :md="8" :sm="24">
|
||||
<a-form-item label="月份">
|
||||
<a-input-number v-model="queryParam.month" style="width: 100%" allow-clear placeholder="请输入月份"/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :md="8" :sm="24">
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" @click="$refs.table.refresh(true)">查询</a-button>
|
||||
<a-button style="margin-left: 8px" @click="() => queryParam = {}">重置</a-button>
|
||||
</span>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</a-form>
|
||||
</div>
|
||||
</a-card>
|
||||
<a-card :bordered="false">
|
||||
<s-table
|
||||
ref="table"
|
||||
:columns="columns"
|
||||
:data="loadData"
|
||||
:alert="options.alert"
|
||||
:rowKey="(record) => record.id"
|
||||
:rowSelection="options.rowSelection"
|
||||
>
|
||||
<template class="table-operator" slot="operator">
|
||||
<a-button type="primary" icon="plus" @click="$refs.addForm.add()">新增</a-button>
|
||||
<a-button type="danger" :disabled="selectedRowKeys.length < 1" @click="batchDelete"><a-icon type="delete"/>批量删除</a-button>
|
||||
<x-down
|
||||
ref="batchExport"
|
||||
@batchExport="batchExport"
|
||||
/>
|
||||
</template>
|
||||
<span slot="action" slot-scope="text, record">
|
||||
<a @click="$refs.editForm.edit(record)">编辑</a>
|
||||
<a-divider type="vertical"/>
|
||||
<a-popconfirm placement="topRight" title="确认删除?" @confirm="() => singleDelete(record)">
|
||||
<a>删除</a>
|
||||
</a-popconfirm>
|
||||
</span>
|
||||
</s-table>
|
||||
<add-form ref="addForm" @ok="handleOk" />
|
||||
<edit-form ref="editForm" @ok="handleOk" />
|
||||
</a-card>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { STable, XDown } from '@/components'
|
||||
import { scrRiskDataPage, scrRiskDataDelete, scrRiskDataExport } from '@/api/modular/main/scrriskdata/scrRiskDataManage'
|
||||
import addForm from './addForm.vue'
|
||||
import editForm from './editForm.vue'
|
||||
export default {
|
||||
components: {
|
||||
STable,
|
||||
addForm,
|
||||
editForm,
|
||||
XDown
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
// 查询参数
|
||||
queryParam: {},
|
||||
// 表头
|
||||
columns: [
|
||||
{
|
||||
title: '年份',
|
||||
align: 'center',
|
||||
dataIndex: 'year'
|
||||
},
|
||||
{
|
||||
title: '月份',
|
||||
align: 'center',
|
||||
dataIndex: 'month'
|
||||
},
|
||||
{
|
||||
title: '已排查',
|
||||
align: 'center',
|
||||
dataIndex: 'ypc'
|
||||
},
|
||||
{
|
||||
title: '未排查',
|
||||
align: 'center',
|
||||
dataIndex: 'wpc'
|
||||
},
|
||||
{
|
||||
title: '超期未排查',
|
||||
align: 'center',
|
||||
dataIndex: 'cqwpc'
|
||||
}
|
||||
],
|
||||
tstyle: { 'padding-bottom': '0px', 'margin-bottom': '10px' },
|
||||
// 加载数据方法 必须为 Promise 对象
|
||||
loadData: parameter => {
|
||||
return scrRiskDataPage(Object.assign(parameter, this.queryParam)).then((res) => {
|
||||
return res.data
|
||||
})
|
||||
},
|
||||
selectedRowKeys: [],
|
||||
selectedRows: [],
|
||||
options: {
|
||||
alert: { show: true, clear: () => { this.selectedRowKeys = [] } },
|
||||
rowSelection: {
|
||||
selectedRowKeys: this.selectedRowKeys,
|
||||
onChange: this.onSelectChange
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
created () {
|
||||
this.columns.push({
|
||||
title: '操作',
|
||||
width: '150px',
|
||||
dataIndex: 'action',
|
||||
scopedSlots: { customRender: 'action' }
|
||||
})
|
||||
},
|
||||
methods: {
|
||||
/**
|
||||
* 单个删除
|
||||
*/
|
||||
singleDelete (record) {
|
||||
const param = [{ 'id': record.id }]
|
||||
this.scrRiskDataDelete(param)
|
||||
},
|
||||
/**
|
||||
* 批量删除
|
||||
*/
|
||||
batchDelete () {
|
||||
const paramIds = this.selectedRowKeys.map((d) => {
|
||||
return { 'id': d }
|
||||
})
|
||||
this.scrRiskDataDelete(paramIds)
|
||||
},
|
||||
scrRiskDataDelete (record) {
|
||||
scrRiskDataDelete(record).then((res) => {
|
||||
if (res.success) {
|
||||
this.$message.success('删除成功')
|
||||
this.$refs.table.clearRefreshSelected()
|
||||
} else {
|
||||
this.$message.error('删除失败') // + res.message
|
||||
}
|
||||
})
|
||||
},
|
||||
/**
|
||||
* 批量导出
|
||||
*/
|
||||
batchExport () {
|
||||
const paramIds = this.selectedRowKeys.map((d) => {
|
||||
return { 'id': d }
|
||||
})
|
||||
scrRiskDataExport(paramIds).then((res) => {
|
||||
this.$refs.batchExport.downloadfile(res)
|
||||
})
|
||||
},
|
||||
handleOk () {
|
||||
this.$refs.table.refresh()
|
||||
},
|
||||
onSelectChange (selectedRowKeys, selectedRows) {
|
||||
this.selectedRowKeys = selectedRowKeys
|
||||
this.selectedRows = selectedRows
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="less">
|
||||
.table-operator {
|
||||
margin-bottom: 18px;
|
||||
}
|
||||
button {
|
||||
margin-right: 8px;
|
||||
}
|
||||
</style>
|
||||
112
src/views/main/scrworktask/addForm.vue
Normal file
112
src/views/main/scrworktask/addForm.vue
Normal file
@ -0,0 +1,112 @@
|
||||
<template>
|
||||
<a-modal
|
||||
title="新增作业票"
|
||||
:width="900"
|
||||
:visible="visible"
|
||||
:confirmLoading="confirmLoading"
|
||||
@ok="handleSubmit"
|
||||
@cancel="handleCancel"
|
||||
>
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<a-form :form="form">
|
||||
<a-form-item
|
||||
label="8大作业票"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
>
|
||||
<a-select style="width: 100%" placeholder="请选择8大作业票" v-decorator="['name', {rules: [{ required: true, message: '请选择8大作业票!' }]}]">
|
||||
<a-select-option v-for="(item,index) in nameData" :key="index" :value="item.code">{{ item.name }}</a-select-option>
|
||||
</a-select>
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="年"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入年" style="width: 100%" v-decorator="['year', {rules: [{required: true, message: '请输入年!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="月份"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入月份" style="width: 100%" v-decorator="['month', {rules: [{required: true, message: '请输入月份!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="数量"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入数量" style="width: 100%" v-decorator="['totalNum', {rules: [{required: true, message: '请输入数量!'}]}]" />
|
||||
</a-form-item>
|
||||
</a-form>
|
||||
</a-spin>
|
||||
</a-modal>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { scrWorkTaskAdd } from '@/api/modular/main/scrworktask/scrWorkTaskManage'
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
labelCol: {
|
||||
xs: { span: 24 },
|
||||
sm: { span: 5 }
|
||||
},
|
||||
wrapperCol: {
|
||||
xs: { span: 24 },
|
||||
sm: { span: 15 }
|
||||
},
|
||||
nameData: [],
|
||||
visible: false,
|
||||
confirmLoading: false,
|
||||
form: this.$form.createForm(this)
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
// 初始化方法
|
||||
add (record) {
|
||||
this.visible = true
|
||||
const nameOption = this.$options
|
||||
this.nameData = nameOption.filters['dictData']('work_task_type')
|
||||
},
|
||||
/**
|
||||
* 提交表单
|
||||
*/
|
||||
handleSubmit () {
|
||||
const { form: { validateFields } } = this
|
||||
this.confirmLoading = true
|
||||
validateFields((errors, values) => {
|
||||
if (!errors) {
|
||||
for (const key in values) {
|
||||
if (typeof (values[key]) === 'object' && values[key] != null) {
|
||||
values[key] = JSON.stringify(values[key])
|
||||
}
|
||||
}
|
||||
scrWorkTaskAdd(values).then((res) => {
|
||||
if (res.success) {
|
||||
this.$message.success('新增成功')
|
||||
this.confirmLoading = false
|
||||
this.$emit('ok', values)
|
||||
this.handleCancel()
|
||||
} else {
|
||||
this.$message.error('新增失败')// + res.message
|
||||
}
|
||||
}).finally((res) => {
|
||||
this.confirmLoading = false
|
||||
})
|
||||
} else {
|
||||
this.confirmLoading = false
|
||||
}
|
||||
})
|
||||
},
|
||||
handleCancel () {
|
||||
this.form.resetFields()
|
||||
this.visible = false
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
121
src/views/main/scrworktask/editForm.vue
Normal file
121
src/views/main/scrworktask/editForm.vue
Normal file
@ -0,0 +1,121 @@
|
||||
<template>
|
||||
<a-modal
|
||||
title="编辑作业票"
|
||||
:width="900"
|
||||
:visible="visible"
|
||||
:confirmLoading="confirmLoading"
|
||||
@ok="handleSubmit"
|
||||
@cancel="handleCancel"
|
||||
>
|
||||
<a-spin :spinning="confirmLoading">
|
||||
<a-form :form="form">
|
||||
<a-form-item v-show="false"><a-input v-decorator="['id']" /></a-form-item>
|
||||
<a-form-item
|
||||
label="8大作业票"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
>
|
||||
<a-select style="width: 100%" placeholder="请选择8大作业票" v-decorator="['name', {rules: [{ required: true, message: '请选择8大作业票!' }]}]">
|
||||
<a-select-option v-for="(item,index) in nameData" :key="index" :value="item.code">{{ item.name }}</a-select-option>
|
||||
</a-select>
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="年"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入年" style="width: 100%" v-decorator="['year', {rules: [{required: true, message: '请输入年!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="月份"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入月份" style="width: 100%" v-decorator="['month', {rules: [{required: true, message: '请输入月份!'}]}]" />
|
||||
</a-form-item>
|
||||
<a-form-item
|
||||
label="数量"
|
||||
:labelCol="labelCol"
|
||||
:wrapperCol="wrapperCol"
|
||||
has-feedback
|
||||
>
|
||||
<a-input-number placeholder="请输入数量" style="width: 100%" v-decorator="['totalNum', {rules: [{required: true, message: '请输入数量!'}]}]" />
|
||||
</a-form-item>
|
||||
</a-form>
|
||||
</a-spin>
|
||||
</a-modal>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { scrWorkTaskEdit } from '@/api/modular/main/scrworktask/scrWorkTaskManage'
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
labelCol: {
|
||||
xs: { span: 24 },
|
||||
sm: { span: 5 }
|
||||
},
|
||||
wrapperCol: {
|
||||
xs: { span: 24 },
|
||||
sm: { span: 15 }
|
||||
},
|
||||
nameData: [],
|
||||
visible: false,
|
||||
confirmLoading: false,
|
||||
form: this.$form.createForm(this)
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
// 初始化方法
|
||||
edit (record) {
|
||||
this.visible = true
|
||||
const nameOption = this.$options
|
||||
this.nameData = nameOption.filters['dictData']('work_task_type')
|
||||
setTimeout(() => {
|
||||
this.form.setFieldsValue(
|
||||
{
|
||||
id: record.id,
|
||||
name: record.name,
|
||||
year: record.year,
|
||||
month: record.month,
|
||||
totalNum: record.totalNum
|
||||
}
|
||||
)
|
||||
}, 100)
|
||||
},
|
||||
handleSubmit () {
|
||||
const { form: { validateFields } } = this
|
||||
this.confirmLoading = true
|
||||
validateFields((errors, values) => {
|
||||
if (!errors) {
|
||||
for (const key in values) {
|
||||
if (typeof (values[key]) === 'object' && values[key] != null) {
|
||||
values[key] = JSON.stringify(values[key])
|
||||
}
|
||||
}
|
||||
scrWorkTaskEdit(values).then((res) => {
|
||||
if (res.success) {
|
||||
this.$message.success('编辑成功')
|
||||
this.confirmLoading = false
|
||||
this.$emit('ok', values)
|
||||
this.handleCancel()
|
||||
} else {
|
||||
this.$message.error('编辑失败')// + res.message
|
||||
}
|
||||
}).finally((res) => {
|
||||
this.confirmLoading = false
|
||||
})
|
||||
} else {
|
||||
this.confirmLoading = false
|
||||
}
|
||||
})
|
||||
},
|
||||
handleCancel () {
|
||||
this.form.resetFields()
|
||||
this.visible = false
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
202
src/views/main/scrworktask/index.vue
Normal file
202
src/views/main/scrworktask/index.vue
Normal file
@ -0,0 +1,202 @@
|
||||
<template>
|
||||
<div>
|
||||
<a-card :bordered="false" :bodyStyle="tstyle">
|
||||
<div class="table-page-search-wrapper">
|
||||
<a-form layout="inline">
|
||||
<a-row :gutter="48">
|
||||
<a-col :md="8" :sm="24">
|
||||
<a-form-item label="作业票类型">
|
||||
<a-select style="width: 100%" v-model="queryParam.name" placeholder="请选择作业票类型">
|
||||
<a-select-option v-for="(item,index) in nameData" :key="index" :value="item.code">{{ item.name }}</a-select-option>
|
||||
</a-select>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<a-col :md="8" :sm="24">
|
||||
<a-form-item label="年">
|
||||
<a-input-number v-model="queryParam.year" style="width: 100%" allow-clear placeholder="请输入年"/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
<template v-if="advanced">
|
||||
<a-col :md="8" :sm="24">
|
||||
<a-form-item label="月份">
|
||||
<a-input-number v-model="queryParam.month" style="width: 100%" allow-clear placeholder="请输入月份"/>
|
||||
</a-form-item>
|
||||
</a-col>
|
||||
</template>
|
||||
<a-col :md="8" :sm="24" >
|
||||
<span class="table-page-search-submitButtons">
|
||||
<a-button type="primary" @click="$refs.table.refresh(true)" >查询</a-button>
|
||||
<a-button style="margin-left: 8px" @click="() => queryParam = {}">重置</a-button>
|
||||
<a @click="toggleAdvanced" style="margin-left: 8px">
|
||||
{{ advanced ? '收起' : '展开' }}
|
||||
<a-icon :type="advanced ? 'up' : 'down'"/>
|
||||
</a>
|
||||
</span>
|
||||
</a-col>
|
||||
</a-row>
|
||||
</a-form>
|
||||
</div>
|
||||
</a-card>
|
||||
<a-card :bordered="false">
|
||||
<s-table
|
||||
ref="table"
|
||||
:columns="columns"
|
||||
:data="loadData"
|
||||
:alert="options.alert"
|
||||
:rowKey="(record) => record.id"
|
||||
:rowSelection="options.rowSelection"
|
||||
>
|
||||
<template class="table-operator" slot="operator">
|
||||
<a-button type="primary" icon="plus" @click="$refs.addForm.add()">新增</a-button>
|
||||
<a-button type="danger" :disabled="selectedRowKeys.length < 1" @click="batchDelete"><a-icon type="delete"/>批量删除</a-button>
|
||||
<x-down
|
||||
ref="batchExport"
|
||||
@batchExport="batchExport"
|
||||
/>
|
||||
</template>
|
||||
<span slot="nameScopedSlots" slot-scope="text">
|
||||
{{ 'work_task_type' | dictType(text) }}
|
||||
</span>
|
||||
<span slot="action" slot-scope="text, record">
|
||||
<a @click="$refs.editForm.edit(record)">编辑</a>
|
||||
<a-divider type="vertical"/>
|
||||
<a-popconfirm placement="topRight" title="确认删除?" @confirm="() => singleDelete(record)">
|
||||
<a>删除</a>
|
||||
</a-popconfirm>
|
||||
</span>
|
||||
</s-table>
|
||||
<add-form ref="addForm" @ok="handleOk" />
|
||||
<edit-form ref="editForm" @ok="handleOk" />
|
||||
</a-card>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { STable, XDown } from '@/components'
|
||||
import { scrWorkTaskPage, scrWorkTaskDelete, scrWorkTaskExport } from '@/api/modular/main/scrworktask/scrWorkTaskManage'
|
||||
import addForm from './addForm.vue'
|
||||
import editForm from './editForm.vue'
|
||||
export default {
|
||||
components: {
|
||||
STable,
|
||||
addForm,
|
||||
editForm,
|
||||
XDown
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
// 高级搜索 展开/关闭
|
||||
advanced: false,
|
||||
// 查询参数
|
||||
queryParam: {},
|
||||
// 表头
|
||||
columns: [
|
||||
{
|
||||
title: '作业票类型',
|
||||
align: 'center',
|
||||
dataIndex: 'name',
|
||||
scopedSlots: { customRender: 'nameScopedSlots' }
|
||||
},
|
||||
{
|
||||
title: '年份',
|
||||
align: 'center',
|
||||
dataIndex: 'year'
|
||||
},
|
||||
{
|
||||
title: '月份',
|
||||
align: 'center',
|
||||
dataIndex: 'month'
|
||||
},
|
||||
{
|
||||
title: '数量',
|
||||
align: 'center',
|
||||
dataIndex: 'totalNum'
|
||||
}
|
||||
],
|
||||
tstyle: { 'padding-bottom': '0px', 'margin-bottom': '10px' },
|
||||
// 加载数据方法 必须为 Promise 对象
|
||||
loadData: parameter => {
|
||||
return scrWorkTaskPage(Object.assign(parameter, this.queryParam)).then((res) => {
|
||||
return res.data
|
||||
})
|
||||
},
|
||||
nameData: [],
|
||||
selectedRowKeys: [],
|
||||
selectedRows: [],
|
||||
options: {
|
||||
alert: { show: true, clear: () => { this.selectedRowKeys = [] } },
|
||||
rowSelection: {
|
||||
selectedRowKeys: this.selectedRowKeys,
|
||||
onChange: this.onSelectChange
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
created () {
|
||||
this.columns.push({
|
||||
title: '操作',
|
||||
width: '150px',
|
||||
dataIndex: 'action',
|
||||
scopedSlots: { customRender: 'action' }
|
||||
})
|
||||
const nameOption = this.$options
|
||||
this.nameData = nameOption.filters['dictData']('work_task_type')
|
||||
},
|
||||
methods: {
|
||||
/**
|
||||
* 单个删除
|
||||
*/
|
||||
singleDelete (record) {
|
||||
const param = [{ 'id': record.id }]
|
||||
this.scrWorkTaskDelete(param)
|
||||
},
|
||||
/**
|
||||
* 批量删除
|
||||
*/
|
||||
batchDelete () {
|
||||
const paramIds = this.selectedRowKeys.map((d) => {
|
||||
return { 'id': d }
|
||||
})
|
||||
this.scrWorkTaskDelete(paramIds)
|
||||
},
|
||||
scrWorkTaskDelete (record) {
|
||||
scrWorkTaskDelete(record).then((res) => {
|
||||
if (res.success) {
|
||||
this.$message.success('删除成功')
|
||||
this.$refs.table.clearRefreshSelected()
|
||||
} else {
|
||||
this.$message.error('删除失败') // + res.message
|
||||
}
|
||||
})
|
||||
},
|
||||
toggleAdvanced () {
|
||||
this.advanced = !this.advanced
|
||||
},
|
||||
/**
|
||||
* 批量导出
|
||||
*/
|
||||
batchExport () {
|
||||
const paramIds = this.selectedRowKeys.map((d) => {
|
||||
return { 'id': d }
|
||||
})
|
||||
scrWorkTaskExport(paramIds).then((res) => {
|
||||
this.$refs.batchExport.downloadfile(res)
|
||||
})
|
||||
},
|
||||
handleOk () {
|
||||
this.$refs.table.refresh()
|
||||
},
|
||||
onSelectChange (selectedRowKeys, selectedRows) {
|
||||
this.selectedRowKeys = selectedRowKeys
|
||||
this.selectedRows = selectedRows
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="less">
|
||||
.table-operator {
|
||||
margin-bottom: 18px;
|
||||
}
|
||||
button {
|
||||
margin-right: 8px;
|
||||
}
|
||||
</style>
|
||||
@ -48,11 +48,11 @@
|
||||
|
||||
<a-form-item>
|
||||
<a-checkbox v-decorator="['rememberMe', { valuePropName: 'checked' }]">自动登录</a-checkbox>
|
||||
<router-link
|
||||
<!-- <router-link
|
||||
:to="{ name: 'recover', params: { user: 'aaa'} }"
|
||||
class="forge-password"
|
||||
style="float: right;"
|
||||
>忘记密码</router-link>
|
||||
>忘记密码</router-link> -->
|
||||
</a-form-item>
|
||||
|
||||
<a-form-item>
|
||||
@ -77,7 +77,7 @@
|
||||
</a-form-item>
|
||||
|
||||
<div class="user-login-other">
|
||||
<router-link class="register" :to="{ name: 'register' }">注册账户</router-link>
|
||||
<!-- <router-link class="register" :to="{ name: 'register' }">注册账户</router-link> -->
|
||||
</div>
|
||||
</a-form>
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user