cqf
2022-06-15 641a3747e3f574e89077aaa4ebd94debc68c63fd
src/views/summaryPotentialSafetyHzards/summaryList.vue
@@ -1,34 +1,66 @@
<template>
    <div class="app-container">
        <el-table :data="tableData" style="width: 100%"  @selection-change="changeBox">
        <el-table :data="tableData" style="width: 100%" @selection-change="changeBox">
            <el-table-column type="selection" width="55" align="center"></el-table-column>
             <el-table-column prop="number" label="单位" align="center" width="120"></el-table-column>
            <el-table-column prop="number" label="编号" align="center" width="120"></el-table-column>
            <el-table-column prop="ht_community" label="单位" align="center" width="120"></el-table-column>
            <el-table-column prop="number" label="编号" align="center" width="120">
                <template slot-scope="scope">
                    <div class="blue-font-color" @click="showDetails(scope.row)">{{ scope.row.number }}</div>
                </template>
            </el-table-column>
            <el-table-column prop="check_branch" label="检查部门" align="center" width="120"></el-table-column>
            <el-table-column prop="check_man" label="检查人" align="center" width="120"></el-table-column>
            <!-- <el-table-column prop="checktype" label="检查类别" align="center"></el-table-column> -->
            <el-table-column label="隐患项目" align="center">
                <el-table-column prop="check_date" label="检查时间" width="120" align="center"></el-table-column>
                <el-table-column prop="address" label="地点" align="center"> </el-table-column>
                <el-table-column prop="ht_content" label="内容" align="center"> </el-table-column>
                <el-table-column prop="ht_typesub" label="类别" align="center"> </el-table-column>
                <el-table-column prop="ht_level" label="级别" align="center"> </el-table-column>
                <el-table-column prop="check_date" label="检查时间" width="120" align="center">
                    <template slot-scope="scope">
                        <label>{{ formatDate(scope.row.check_date) }}</label><br/>
                        <label>{{ scope.row.check_class }}</label>
                    </template>
                </el-table-column>
                <el-table-column prop="address" label="地点" align="center">
                    <template slot-scope="scope">
                        <el-popover trigger="hover" placement="top">
                            <p>{{ scope.row.address }}</p>
                            <div slot="reference" class="name-wrapper">{{
                                    scope.row.address != null && scope.row.address.length > 10 ? scope.row.address.substring(0, 8) + "...." : scope.row.address
                                }}
                            </div>
                        </el-popover>
                    </template>
                </el-table-column>
                <el-table-column prop="ht_content" label="内容" align="center">
                    <template slot-scope="scope">
                        <el-popover trigger="hover" placement="top">
                            <p>{{ scope.row.ht_content }}</p>
                            <div slot="reference" class="name-wrapper">{{
                                    scope.row.ht_content != null && scope.row.ht_content.length > 10 ? scope.row.ht_content.substring(0, 8) + "...." : scope.row.ht_content
                                }}
                            </div>
                        </el-popover>
                    </template>
                </el-table-column>
                <el-table-column prop="ht_typesub" label="类别" align="center"></el-table-column>
                <el-table-column prop="ht_level" label="级别" width="100" align="center"></el-table-column>
            </el-table-column>
            <el-table-column label="整改计划" align="center">
                <el-table-column prop="measure" label="整改措施" align="center"> </el-table-column>
                <el-table-column prop="ht_branch" label="责任单位" align="center"> </el-table-column>
                <el-table-column prop="duty_officer" label="责任人" align="center"> </el-table-column>
                <el-table-column prop="alter_time" label="限改时间" width="120" align="center"></el-table-column>
                <el-table-column prop="measure" label="整改措施" width="150" align="center"></el-table-column>
                <el-table-column prop="ht_branch" label="责任单位" align="center"></el-table-column>
                <el-table-column prop="duty_officer" label="责任人" align="center"></el-table-column>
                <el-table-column prop="alter_time" label="限改时间" width="120" :formatter="formatColumnDate"
                                 align="center"></el-table-column>
                <!-- <el-table-column prop="ht_level" label="级别" align="center"> </el-table-column> -->
            </el-table-column>
            <el-table-column label="整改情况" align="center">
                <el-table-column prop="ACCOMPLISHTIME" label="完成时间" width="110px" align="center"> </el-table-column>
                <el-table-column prop="CALLBACKRESULT" label="复查结果" align="center"> </el-table-column>
                <el-table-column prop="CALLBACKPERSON" label="复查人" align="center"> </el-table-column>
                <el-table-column prop="CALLBACKTIME" label="复查时间"  width="120" align="center"></el-table-column>
                <el-table-column prop="ACCOMPLISHTIME" label="完成时间" width="110px" :formatter="formatColumnDate"
                                 align="center"></el-table-column>
                <el-table-column prop="CALLBACKRESULT" label="复查结果" align="center"></el-table-column>
                <el-table-column prop="CALLBACKPERSON" label="复查人" align="center"></el-table-column>
                <el-table-column prop="CALLBACKTIME" label="复查时间" width="120" :formatter="formatColumnDate"
                                 align="center"></el-table-column>
            </el-table-column>
            <el-table-column  label="隐患处理状态" align="center">
            <el-table-column label="隐患处理状态" align="center">
                <template slot-scope="scope">
                    <span v-if="scope.row.step =='1'">初始状态</span>
                    <span v-if="scope.row.step =='2'">整改中</span>
@@ -38,13 +70,14 @@
            </el-table-column>
            <el-table-column prop="DTRisk_bankId" label="是否关联" align="center">
                <template slot-scope="scope">
                    <span v-if="scope.row.DTRisk_bankId==0 || scope.row.DTRisk_bankId=='' || scope.row.DTRisk_bankId==null">未关联</span>
                    <span style="color: red"
                          v-if="scope.row.DTRisk_bankId==0 || scope.row.DTRisk_bankId=='' || scope.row.DTRisk_bankId==null">未关联</span>
                    <span v-else>已关联</span>
                </template>
            </el-table-column>
            <el-table-column prop="DTRisk_level" label="风险等级" align="center"> </el-table-column>
            <el-table-column prop="warningLevel" label="初始警情" align="center"> </el-table-column>
            <el-table-column prop="curWarningLevel" label="当前警情" align="center"> </el-table-column>
            <el-table-column prop="DTRisk_level" label="风险等级" align="center"></el-table-column>
            <el-table-column prop="warningLevel" label="初始警情" align="center"></el-table-column>
            <el-table-column prop="curWarningLevel" label="当前警情" align="center"></el-table-column>
            <!-- <el-table-column prop="date" label="流程操作" align="center"  fixed="right">
                <template slot-scope="scope">
                    <el-button @click="handleClick(scope.row)" type="text" size="small">点击发送</el-button>
@@ -70,34 +103,41 @@
            >
            </el-pagination>
        </div>
        <div class="btn">
            <el-button size="small" @click="close()">关闭</el-button>
        </div>
    </div>
</template>
<script>
import {getPageList,delDanger} from "@/api/sgyhpczl/hiddenDangerRegistration";
import {initJCBM ,initYHLX, initBC ,initJCLB ,initYHBM ,initYHJB,initLlr} from "@/api/sgyhpczl/initSelect";
import {getPageList} from "@/api/sgyhpczl/summaryPotentialSafetyHzards.js";
import {initJCBM, initYHLX, initBC, initJCLB, initYHBM, initYHJB, initLlr} from "@/api/sgyhpczl/initSelect";
export default {
    data() {
        return {
            radio1:'超期整改',
            selectedList:[],
            reList:[{label:"未关联",value:0}],
            llrList:[],
            radio1: '超期整改',
            selectedList: [],
            reList: [{label: "未关联", value: 0}],
            llrList: [],
            options: [],
            form:{},
            form: {},
            JCDWList:[{label:"众泰煤焦化",value:0},{label:"上级单位",value:1}],
            JCBMList:[],
            YHLXList:[],
            BCList:[],
            JCLBList:[],
            YHBMList:[],
            YHJBList:[],
            JCDWList: [{label: "众泰煤焦化", value: 0}, {label: "上级单位", value: 1}],
            JCBMList: [],
            YHLXList: [],
            BCList: [],
            JCLBList: [],
            YHBMList: [],
            YHJBList: [],
            tableData: [],
            listQuery:{
                page:1,
                limit:10,
                form:{
                    ht_community:"众泰煤焦化"
            listQuery: {
                page: 1,
                limit: 10,
                type: 0,
                form: {
                    // ht_community:"众泰煤焦化"
                },
            },
            currentPage: 1,
@@ -105,240 +145,213 @@
            recordTotal: 0,
        };
    },
    mounted(){
        this.getPageList()
    mounted() {
        if (this.$route.query.searchData.query_condition != null) {
            var searchData = this.$route.query.searchData;
            for (const argumentsKey in searchData) {
                this.listQuery[argumentsKey] = searchData[argumentsKey];
            }
            this.getPageList()
        }
        this.initYHLX()
        this.initYHJB()
        this.initBC()
        this.initJCLB()
        this.initLlr()
        this.initYHBM()
    },
    methods:{
        deleteBatch(){
            if(this.selectedList==null ||this.selectedList.length==0 ){
                this.$message({type:'warning', message:'至少选中一条数据', duration:3000})
                return
            }
            var ids=this.selectedList.map((obj) => {
                return obj.id
            }).join(",")
            this.$confirm('确认删除吗','提示', {
                confirmButtonText: '确认',
                cancelButtonText: '取消',
                type: 'warning'
            })
                .then(()=>{
                    delDanger(ids).then(() => {
                        this.getPageList()
                        this.$notify({
                            title: "成功",
                            message: "删除成功",
                            type: "success",
                            duration: 2000,
                        });
                    });
                })
                .catch(error =>{
                });
        },
        changeBox(val){
    methods: {
        changeBox(val) {
            this.selectedList = []
            val.forEach((item) => {
                this.selectedList.push(item)
            })
        },
        initLlr(){
            initLlr().then(res=>{
                if (res.data.ok==1){
                    this.llrList=res.data.data
                } else{
                    this.$message({type:'error', message:res.data.msg, duration:3000})
        initLlr() {
            initLlr().then(res => {
                if (res.data.ok == 1) {
                    this.llrList = res.data.data
                } else {
                    this.$message({type: 'error', message: res.data.msg, duration: 3000})
                }
            })
        },
        initYHBM(){
            initYHBM().then(res=>{
                if (res.data.ok==1){
                    this.YHBMList=res.data.data
                } else{
                    this.$message({type:'error', message:res.data.msg, duration:3000})
        initYHBM() {
            initYHBM().then(res => {
                if (res.data.ok == 1) {
                    this.YHBMList = res.data.data
                } else {
                    this.$message({type: 'error', message: res.data.msg, duration: 3000})
                }
            })
        },
        changeJCDW(val){
            initJCBM(val).then(res=>{
                if (res.data.ok==1){
                    this.JCBMList=res.data.data
                } else{
                    this.$message({type:'error', message:res.data.msg, duration:3000})
        changeJCDW(val) {
            initJCBM(val).then(res => {
                if (res.data.ok == 1) {
                    this.JCBMList = res.data.data
                } else {
                    this.$message({type: 'error', message: res.data.msg, duration: 3000})
                }
            })
        },
        checkTime(){
            if(this.listQuery.form.check_dateStart!=null && this.listQuery.form.check_dateStart!=''){
                if(this.listQuery.form.check_dateEnd!=null && this.listQuery.form.check_dateEnd!=''){
                }else {
                    this.$message({type:'error', message:"请选择检查结束时间", duration:3000})
        checkTime() {
            if (this.listQuery.form.check_dateStart != null && this.listQuery.form.check_dateStart != '') {
                if (this.listQuery.form.check_dateEnd != null && this.listQuery.form.check_dateEnd != '') {
                } else {
                    this.$message({type: 'error', message: "请选择检查结束时间", duration: 3000})
                    return
                }
            }
            if(this.listQuery.form.check_dateEnd!=null && this.listQuery.form.check_dateEnd!=''){
                if(this.listQuery.form.check_dateStart!=null && this.listQuery.form.check_dateStart!=''){
                }else {
                    this.$message({type:'error', message:"请选择检查开始时间", duration:3000})
            if (this.listQuery.form.check_dateEnd != null && this.listQuery.form.check_dateEnd != '') {
                if (this.listQuery.form.check_dateStart != null && this.listQuery.form.check_dateStart != '') {
                } else {
                    this.$message({type: 'error', message: "请选择检查开始时间", duration: 3000})
                    return
                }
            }
            if(this.listQuery.form.alter_timeStart!=null && this.listQuery.form.alter_timeStart!=''){
                if(this.listQuery.form.alter_timeEnd!=null && this.listQuery.form.alter_timeEnd!=''){
                }else {
                    this.$message({type:'error', message:"请选择限改结束时间", duration:3000})
            if (this.listQuery.form.alter_timeStart != null && this.listQuery.form.alter_timeStart != '') {
                if (this.listQuery.form.alter_timeEnd != null && this.listQuery.form.alter_timeEnd != '') {
                } else {
                    this.$message({type: 'error', message: "请选择限改结束时间", duration: 3000})
                    return
                }
            }
            if(this.listQuery.form.alter_timeEnd!=null && this.listQuery.form.alter_timeEnd!=''){
                if(this.listQuery.form.alter_timeStart!=null && this.listQuery.form.alter_timeStart!=''){
                }else {
                    this.$message({type:'error', message:"请选择改开始时间", duration:3000})
            if (this.listQuery.form.alter_timeEnd != null && this.listQuery.form.alter_timeEnd != '') {
                if (this.listQuery.form.alter_timeStart != null && this.listQuery.form.alter_timeStart != '') {
                } else {
                    this.$message({type: 'error', message: "请选择改开始时间", duration: 3000})
                    return
                }
            }
        },
        getPageList(){
            this.listQuery.page=1
            this.checkTime()
            getPageList(this.listQuery).then(res=>{
                if (res.data.ok==1) {
        getPageList() {
            this.listQuery.page = 1
            getPageList(this.listQuery).then(res => {
                if (res.data.ok == 1) {
                    this.tableData = res.data.data.items
                     this.recordTotal=res.data.data.total
                }else{
                    this.$message({type:'error', message:res.data.msg, duration:3000})
                    this.recordTotal = res.data.data.total
                } else {
                    this.$message({type: 'error', message: res.data.msg, duration: 3000})
                }
            })
        },
        reset(){
            this.listQuery.form={ht_community:"众泰煤焦化"}
        reset() {
            this.listQuery.form = {ht_community: "众泰煤焦化"}
            this.getPageList()
        },
        handleSizeChange(val){
        handleSizeChange(val) {
            this.listQuery.limit = val
            this.getPageListForPagination();
        },
        handleCurrentChange(val){
        handleCurrentChange(val) {
            this.listQuery.page = val
            this.getPageListForPagination();
        },
        getPageListForPagination(){
        getPageListForPagination() {
            this.checkTime()
            getPageList(this.listQuery).then(res=>{
                if (res.data.ok==1) {
            getPageList(this.listQuery).then(res => {
                if (res.data.ok == 1) {
                    this.tableData = res.data.data.items
                    this.recordTotal=res.data.data.total
                }else{
                    this.$message({type:'error', message:res.data.msg, duration:3000})
                    this.recordTotal = res.data.data.total
                } else {
                    this.$message({type: 'error', message: res.data.msg, duration: 3000})
                }
            })
        },
        initYHLX(){
            initYHLX().then(res=>{
                if (res.data.ok==1){
                    this.YHLXList=res.data.data
                } else{
                    this.$message({type:'error', message:res.data.msg, duration:3000})
        initYHLX() {
            initYHLX().then(res => {
                if (res.data.ok == 1) {
                    this.YHLXList = res.data.data
                } else {
                    this.$message({type: 'error', message: res.data.msg, duration: 3000})
                }
            })
        },
        initYHJB(){
            initYHJB().then(res=>{
                if (res.data.ok==1){
                    this.YHJBList=res.data.data
                } else{
                    this.$message({type:'error', message:res.data.msg, duration:3000})
        initYHJB() {
            initYHJB().then(res => {
                if (res.data.ok == 1) {
                    this.YHJBList = res.data.data
                } else {
                    this.$message({type: 'error', message: res.data.msg, duration: 3000})
                }
            })
        },
        initBC(){
            initBC().then(res=>{
                if (res.data.ok==1){
                    this.BCList=res.data.data
                } else{
                    this.$message({type:'error', message:res.data.msg, duration:3000})
        initBC() {
            initBC().then(res => {
                if (res.data.ok == 1) {
                    this.BCList = res.data.data
                } else {
                    this.$message({type: 'error', message: res.data.msg, duration: 3000})
                }
            })
        },
        initJCLB(){
            initJCLB().then(res=>{
                if (res.data.ok==1){
                    this.JCLBList=res.data.data
                } else{
                    this.$message({type:'error', message:res.data.msg, duration:3000})
        initJCLB() {
            initJCLB().then(res => {
                if (res.data.ok == 1) {
                    this.JCLBList = res.data.data
                } else {
                    this.$message({type: 'error', message: res.data.msg, duration: 3000})
                }
            })
        },
        updateClick(row){
        //方法区
        formatDate(data) {
            // 获取单元格数据
            if (data == null) {
                return null
            }
            let dt = new Date(data)
            return dt.getFullYear() + '-' + (dt.getMonth() + 1) + '-' + dt.getDate()
        },
        //方法区
        formatColumnDate(row, column) {
            // 获取单元格数据
            let data = row[column.property]
            if (data == null) {
                return null
            }
            let dt = new Date(data)
            return dt.getFullYear() + '-' + (dt.getMonth() + 1) + '-' + dt.getDate() + ' '
        },
        showDetails(row) {
            this.$router.push({
                path:"/safetyedit"
                path: "/dangerDetails",
                query: {"id": row.id, "route": "/summaryList"}
            })
        },
        jump(){
        close() {
            this.$router.push({
                path:"/hiddenDangerAdd"
                path: "/summaryPotentialSafetyHzards"
            })
        },
        // 发送隐患单跳转
        handleClick(row){
            this.$router.push({
                path:"/hiddenDangerList?id="+row.id,
            })
        },
        deleteClick(row){
            this.$confirm('确认删除吗','提示', {
                confirmButtonText: '确认',
                cancelButtonText: '取消',
                type: 'warning'
            })
                .then(()=>{
                    delDanger(row.id).then(() => {
                        this.getPageList()
                        this.$notify({
                            title: "成功",
                            message: "删除成功",
                            type: "success",
                            duration: 2000,
                        });
                    });
                })
                .catch(error =>{
                });
        },
        base(){
            this.$router.push({
                path:"/Dualbase"
            })
        }
    }
};
</script>
<style scoped>
 .inquire {
        display: flex;
        justify-content: left;
        flex-wrap: wrap;
    }
    .inquire .el-form-item {
        padding: 0 30px;
    }
    .title-center {
        padding: 20px 0;
    }
    .btns {
        background-color: #034ea2;
        border: 1px solid #034ea2;
    }
    .title-center /deep/ .el-radio-button:first-child .el-radio-button__inner {
.inquire {
    display: flex;
    justify-content: left;
    flex-wrap: wrap;
}
.inquire .el-form-item {
    padding: 0 30px;
}
.title-center {
    padding: 20px 0;
}
.btns {
    background-color: #034ea2;
    border: 1px solid #034ea2;
}
.title-center /deep/ .el-radio-button:first-child .el-radio-button__inner {
    border: none;
}
@@ -351,4 +364,14 @@
    background-color: #034ea2;
    background-color: #034ea2;
}
</style>
.btn {
    text-align: center;
    margin-top: 20px;
}
.blue-font-color:hover {
    cursor: pointer;
    color: blue;
}
</style>