<template>
|
<div class="app-container">
|
<div class="filter-container">
|
<div style="display: block;">
|
<div class="basic_search" style="padding-top: 10px">
|
<span>按法律法规标准查:</span>
|
<el-input filterable clearable v-model="listQuery.filter.name" style="width:200px">
|
</el-input>
|
</div>
|
<div class="basic_search" style="margin-right: 10px">
|
<el-button style="margin-left: 10px;" type="primary" @click="add('新增','')">添加</el-button>
|
<el-button style="margin-left: 10px;" type="primary" @click="searchData()">查询</el-button>
|
</div>
|
</div>
|
|
</div>
|
<div class="table_content">
|
<el-table
|
v-loading="listLoading"
|
:key="tableKey"
|
:data="LawAccountData"
|
border
|
fit
|
highlight-current-row
|
style="width: 100%;"
|
>
|
<el-table-column label="序号" type="index" align="center" width="60"/>
|
<el-table-column label="法律法规标准及其他要求" prop="claim" align="center">
|
</el-table-column>
|
<el-table-column label="生效日期" prop="effectivedate" align="center">
|
</el-table-column>
|
<el-table-column label="颁布部门" prop="department" align="center">
|
</el-table-column>
|
<el-table-column label="法规/标准编号" prop="number" align="center">
|
</el-table-column>
|
<el-table-column label="相关条款说明" prop="description" align="center">
|
</el-table-column>
|
<el-table-column label="适用范围" prop="ranges" align="center">
|
</el-table-column>
|
<el-table-column label="更新情况" prop="updateinfo" align="center">
|
</el-table-column>
|
<el-table-column label="操作" align="center" width="180" class-name="small-padding fixed-width">
|
<template slot-scope="scope">
|
<el-button type="text" @click="download(scope.row.url)">下载</el-button>
|
<el-button type="text" @click="add('修改',scope.row)">修改</el-button>
|
<el-button type="text" @click="deleteById(scope.row)">删除</el-button>
|
</template>
|
</el-table-column>
|
</el-table>
|
<br>
|
<el-pagination
|
v-show="recordTotal>0"
|
:current-page="currentPage"
|
:page-sizes="[10, 20, 30, 50]"
|
:page-size="pageSize"
|
:total="recordTotal"
|
layout="total, sizes, prev, pager, next, jumper"
|
background
|
style="float:right;"
|
@size-change="handleSizeChange"
|
@current-change="handleCurrentChange"
|
/>
|
<br>
|
</div>
|
|
<el-dialog
|
:visible.sync="lawManagementVisible"
|
append-to-body
|
:title="title"
|
:close-on-click-modal="false"
|
width="600px"
|
>
|
<el-form ref="dataForm" :rules="dataFormRules" :model="dataForm" label-position="right" label-width="140px" width="600px">
|
<el-form-item label="法律法规标准及其他要求:" prop="claim" >
|
<el-input v-model="dataForm.claim" class="content_qw"/>
|
</el-form-item>
|
<el-form-item label="生效日期:" prop="effectivedate" >
|
<el-date-picker
|
value-format="yyyy-MM-dd HH:mm:ss"
|
v-model="dataForm.effectivedate"
|
type="date"
|
placeholder="选择日期时间">
|
</el-date-picker>
|
</el-form-item>
|
<el-form-item label="颁布部门:" prop="department" >
|
<el-input v-model="dataForm.department" class="content_qw"/>
|
</el-form-item>
|
<el-form-item label="法规/标准编号:" prop="number" >
|
<el-input v-model="dataForm.number" class="content_qw"/>
|
</el-form-item>
|
<el-form-item label="相关条款说明:" prop="description" >
|
<el-input v-model="dataForm.description" class="content_qw"/>
|
</el-form-item>
|
<el-form-item label="适用范围:" prop="ranges" >
|
<el-input v-model="dataForm.ranges" class="content_qw"/>
|
</el-form-item>
|
<el-form-item label="更新情况:" prop="updateinfo" >
|
<el-input v-model="dataForm.updateinfo" class="content_qw"/>
|
</el-form-item>
|
<el-form-item label="排序顺序:" prop="orderindex" >
|
<el-input v-model="dataForm.orderindex" class="content_qw"/>
|
</el-form-item>
|
<el-form-item label="许可范围:" prop="upload">
|
<input id="upload" ref="upload" type="file"/>
|
</el-form-item>
|
</el-form>
|
<div align="right">
|
<el-button @click="lawManagementVisible = false">取消</el-button>
|
<el-button type="primary" @click="submit()">确认</el-button>
|
</div>
|
</el-dialog>
|
</div>
|
</template>
|
|
<script>
|
import {uploadUrl} from '@/assets/upload/url'
|
import { getLawAccountList ,addLawAccount , updateLawAccount ,deleteLawAccount} from '@/api/lawAndSafety'
|
import { computePageCount } from '@/utils'
|
import {getCityListData, getProvinceListData} from "../../../../../api/area";
|
export default {
|
name: "lawManagement",
|
props:["enterpriseId"],
|
data(){
|
return{
|
title:'',
|
tableKey:0,
|
listLoading:false,
|
pageSize: 10,
|
recordTotal: 0,
|
currentPage: 1,
|
pageTotal: 0,
|
searchContent:'',
|
listQuery:{
|
filter: {
|
name:'',
|
},
|
pageIndex: 1,
|
pageSize: 10
|
},
|
provinceList:[],
|
cityList:[],
|
districtList:[],
|
streetList:[],
|
committeeList:[],
|
LawAccountData:[],
|
lawManagementVisible:false,
|
dataFormRules:{},
|
dataForm:{
|
claim:'',
|
effectivedate:'',
|
department:'',
|
number:'',
|
description:'',
|
ranges:'',
|
updateinfo:'',
|
orderindex:'',
|
file:'',
|
id:'',
|
}
|
}
|
},
|
created(){
|
this.getLawAccountListData()
|
},
|
methods:{
|
async getLawAccountListData(){
|
this.listLoading = true
|
let res = await getLawAccountList(this.listQuery)
|
if(res.data.code === "200"){
|
this.recordTotal = res.data.result.total
|
this.pageSize = res.data.result.size
|
this.pageTotal = computePageCount(res.data.result.total, res.data.result.size)
|
this.currentPage = res.data.result.current
|
this.LawAccountData = res.data.result.records
|
}else{
|
this.$message({
|
type:'warning',
|
message:res.data.message
|
})
|
}
|
this.listLoading = false
|
},
|
|
searchData(){
|
this.getLawAccountListData()
|
},
|
handleSizeChange(val) {
|
this.listQuery.pageSize = val
|
this.getLawAccountListData()
|
},
|
handleCurrentChange(val) {
|
this.listQuery.pageIndex = val
|
this.getLawAccountListData()
|
},
|
|
add(title,value){
|
this.lawManagementVisible = true
|
if(title === '新增'){
|
this.title = '新增'
|
this.dataForm ={
|
claim:'',
|
effectivedate:'',
|
department:'',
|
number:'',
|
description:'',
|
ranges:'',
|
updateinfo:'',
|
orderindex:'',
|
file:'',
|
id:'',
|
}
|
}else{
|
this.title = '修改'
|
this.dataForm.claim = value["claim"]
|
this.dataForm.effectivedate = value.effectivedate
|
this.dataForm.department = value.department
|
this.dataForm.number = value.number
|
this.dataForm.description = value.description
|
this.dataForm.ranges = value.ranges
|
this.dataForm.updateinfo = value.updateinfo
|
this.dataForm.orderindex = value.orderindex
|
this.dataForm.id = value.id
|
}
|
},
|
|
download(value){
|
window.open(uploadUrl() + value, '_blank')
|
},
|
|
async submit(){
|
this.dataForm.file = this.$refs["upload"].files[0]
|
const formData = new FormData();
|
for (const i in this.dataForm) {
|
if (
|
this.dataForm[i] != undefined &&
|
this.dataForm[i].toString() != ""
|
) {
|
formData.append(i, this.dataForm[i]);
|
}
|
}
|
if(this.title === '新增'){
|
let res = await addLawAccount(formData)
|
if(res.data.code === '200'){
|
this.$refs["upload"].value = ''
|
this.lawManagementVisible = false
|
this.searchData()
|
this.$notify({
|
duration:2000,
|
type:'success',
|
message:'新增成功',
|
title:'成功',
|
})
|
}else{
|
this.$message({
|
type:'warning',
|
message:res.data.message
|
})
|
}
|
}else{
|
let res = await updateLawAccount(formData)
|
if(res.data.code === '200'){
|
this.$refs["upload"].value = ''
|
this.lawManagementVisible = false
|
this.searchData()
|
this.$notify({
|
duration:2000,
|
type:'success',
|
message:'修改成功',
|
title:'成功',
|
})
|
}else{
|
this.$message({
|
type:'warning',
|
message:res.data.message
|
})
|
}
|
}
|
|
},
|
|
deleteById(row){
|
this.$confirm('删除此条信息,是否继续','提示',{
|
confirmButtonText:'确定',
|
cancelButtonText:'取消',
|
type:'warning',
|
}).then(()=> {
|
deleteLawAccount(row.id).then( ()=>{
|
this.getLawAccountListData()
|
this.$notify({
|
title:'成功',
|
message:'删除成功',
|
type:'success',
|
duration:2000,
|
})
|
})
|
})
|
},
|
}
|
}
|
</script>
|
|
<style scoped>
|
/*/deep/ .el-input__inner {*/
|
/* width:300px;*/
|
/*}*/
|
/*/deep/.el-textarea__inner{*/
|
/* width:300px;*/
|
/*}*/
|
.content_qw{
|
width:300px;
|
}
|
.basic_search{
|
display:inline-block;
|
}
|
</style>
|