panzy
2022-05-19 0f5e1534e83fa99cac09f9a3430539d115ed0b59
src/views/safetyHazardAccount/index.vue
@@ -147,26 +147,31 @@
            </el-form-item>
            <el-form-item label="检查时间">
                <el-col :span="11">
                    <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.check_dateStart" style="width: 100%;" value-format="yyyy-MM-dd"></el-date-picker>
                    <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.check_dateStart"
                                    style="width: 100%;" value-format="yyyy-MM-dd"></el-date-picker>
                </el-col>
                <el-col style="text-align:center" :span="2">-</el-col>
                <el-col :span="11">
                    <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.check_dateEnd" style="width: 100%;" value-format="yyyy-MM-dd"></el-date-picker>
                    <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.check_dateEnd"
                                    style="width: 100%;" value-format="yyyy-MM-dd"></el-date-picker>
                </el-col>
            </el-form-item>
            <el-form-item label="限改时间">
                <el-col :span="11">
                    <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.alter_timeStart" value-format="yyyy-MM-dd" style="width: 100%;"></el-date-picker>
                    <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.alter_timeStart"
                                    value-format="yyyy-MM-dd" style="width: 100%;"></el-date-picker>
                </el-col>
                <el-col style="text-align:center" :span="2">-</el-col>
                <el-col :span="11">
                    <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.alter_timeEnd" value-format="yyyy-MM-dd" style="width: 100%;"></el-date-picker>
                    <el-date-picker type="date" placeholder="选择日期" v-model="listQuery.form.alter_timeEnd"
                                    value-format="yyyy-MM-dd" style="width: 100%;"></el-date-picker>
                </el-col>
            </el-form-item>
            <el-form-item style="text-align:center;padding:0 50px">
                <el-button type="primary" class="btns" size="small" icon="el-icon-search" @click="getPageList()">查询</el-button>
                <el-button type="primary" class="btns" size="small" icon="el-icon-search" @click="getPageList()">查询
                </el-button>
                <el-button type="primary" class="btns" size="small" @click="reset()">重置</el-button>
                <el-button type="primary" class="btns" size="small" icon="el-icon-upload2" @click="exportData">导出excel</el-button>
                <el-button type="primary" class="btns" size="small" icon="el-icon-upload2">导出excel</el-button>
            </el-form-item>
        </el-form>
           <el-row class="title-center">
@@ -182,13 +187,13 @@
          </el-radio-group>
            </el-col>
            <el-col :span="12" style="text-align:right;" v-if="YHType=='0'">
                <el-button type="primary" class="btns" size="small">督查督办</el-button>
                <el-button type="primary" class="btns" size="small">举一反三</el-button>
                <el-button type="primary" class="btns" size="small" @click="supervision('1')">督查督办</el-button>
                <el-button type="primary" class="btns" size="small" @click="supervision('2')">举一反三</el-button>
                <el-button type="primary" class="btns" size="small" @click="base()">双基考核</el-button>
                <el-button type="primary" class="btns" size="small">删除</el-button>
                <el-button type="primary" class="btns" size="small" @click='deleteBatch'>删除</el-button>
            </el-col>
        </el-row>
        <el-table :data="tableData" style="width: 100%"  @selection-change="changeBox">
        <el-table :data="tableData" ref="pageTable" 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="check_branch" label="检查部门" align="center" width="120"></el-table-column>
@@ -224,7 +229,8 @@
            </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
                        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>
@@ -256,26 +262,56 @@
            >
            </el-pagination>
        </div>
        <!--批量复查弹窗-->
        <el-dialog
            title="提示"
            :visible.sync="dialogVisible"
            :close-on-click-modal="false"
            width="40%"
        >
            <el-form>
                <el-row>
                    <el-checkbox style="width: 80px;height: 30px" v-for="item in YHBMList" v-model="checked"
                                 :label="item.branch_id">{{
                            item.branch_name
                        }}
                    </el-checkbox>
                </el-row>
                <el-row>
                    <el-col :span="22">
                        <el-form-item style="text-align: center;">
                            <el-button class="btn" size="small" type="primary" @click="submitForm()">
                                保存
                            </el-button>
                            <el-button size="small" @click="close()">关闭</el-button>
                        </el-form-item>
                    </el-col>
                </el-row>
            </el-form>
        </el-dialog>
    </div>
</template>
<script>
import {getPageList, inspect_do, draw_inferences_do} from "@/api/sgyhpczl/safetyHazardAccount";
import {delDanger} from "@/api/sgyhpczl/hiddenDangerRegistration";
import {getPageList} from "@/api/sgyhpczl/safetyHazardAccount";
import {danger_export_do} from "@/api/sgyhpczl/hiddenDangerRectification";
import {initJCBM ,initYHLX, initBC ,initJCLB ,initYHBM ,initYHJB,initLlr} from "@/api/sgyhpczl/initSelect";
export default {
    data() {
        return {
            dialogVisible: false,
            checked: [],
            YHType:'0',
            selectedList:[],
            reList:[{label:"未关联",value:0}],
            llrList:[],
            options: [],
            form:{
                type:"0"
            },
            form: {},
            buttonType: "",
            JCDWList:[{label:"众泰煤焦化",value:0},{label:"上级单位",value:1}],
            JCBMList:[],
            YHLXList:[],
@@ -284,18 +320,29 @@
            YHBMList:[],
            YHJBList:[],
            tableData: [],
            requestData: {},
            listQuery:{
                type:0,
                page:1,
                limit:10,
                form:{
                    ht_community:"众泰煤焦化"
                },
            }, currentPage: 1,
            },
            currentPage: 1,
            pageSize: 10,
            recordTotal: 0,
        };
    },
    watch: {
        "YHType": function (newVal, oldVal) {
            if (newVal) {
                this.listQuery.type = parseInt(newVal);
                this.getPageList();
            }
        },
        "dialogVisible": function (newVal, oldVal) {
            this.checked = [];
        }
    },
    mounted(){
        this.getPageList()
@@ -306,15 +353,10 @@
        this.initLlr()
        this.initYHBM()
    },
    watch:{
        "YHType":function (newVal,oldVal){
            if(newVal!=null){
                this.listQuery.type = parseInt(newVal);
                this.getPageList();
            }
        }
    },
    methods:{
        close() {
            this.dialogVisible = false;
        },
        deleteBatch(){
            if(this.selectedList==null ||this.selectedList.length==0 ){
                this.$message({type:'warning', message:'至少选中一条数据', duration:3000})
@@ -480,7 +522,7 @@
        },
        updateClick(row){
            this.$router.push({
                path:"/safetyedit"
                path: "/hiddenDangerAdd?id=" + row.id +"&route=safetyHazardAccount"
            })
        },
        jump(){
@@ -519,27 +561,72 @@
                path:"/Dualbase"
            })
        },
        exportData() {
            var requestData = this.listQuery;
            requestData.type = this.YHType;
            requestData.export_type = 7;
            //删除分页参数
            this.$delete(requestData, 'page')
            this.$delete(requestData, 'limit')
            danger_export_do(requestData).then(res => {
                var blob = new Blob([res.data])
                var downloadElement = document.createElement('a')
                var href = window.URL.createObjectURL(blob) //创建下载的链接
                downloadElement.href = href
                downloadElement.download = '隐患整改延期.xlsx' //下载后文件名
                document.body.appendChild(downloadElement)
                downloadElement.click() //点击下载
                document.body.removeChild(downloadElement) //下载完成移除元素
                window.URL.revokeObjectURL(href) //释放掉blob对象
            }).catch(err => {
                console.log(err)
            })
        supervision(type) {
            var selectDataList = this.$refs.pageTable.selection;
            this.buttonType = type;
            if (selectDataList.length != 1) {
                this.$message({
                    type: 'warning',
                    message: '请选择一条数据!'
                });
                return false;
            } else {
                this.requestData.id = selectDataList[0].id;
                this.dialogVisible = true;
            }
        },
        submitForm() {
            if (this.checked.length == 0) {
                this.$message({
                    type: 'warning',
                    message: '请勾选需要发送的部门!'
                });
                return;
            }
            this.requestData.branchIds = this.checked.join(";");
            if (this.buttonType == '1') {
                inspect_do(this.requestData).then(res => {
                    if (res.data.ok) {
                        this.$message({
                            type: 'success',
                            message: res.data.msg
                        });
                        this.dialogVisible = false;
                        this.getPageList();
                    } else {
                        this.$message({
                            type: 'error',
                            message: res.data.msg
                        });
                    }
                })
            } else {
                var checkData = this.YHBMList.filter(n => {
                    return this.checked.indexOf(n.branch_id) != -1;
                })
                var branchNames = "";
                checkData.forEach(n => {
                    branchNames += n.branch_name + ";";
                })
                this.requestData.branchNames = branchNames;
                draw_inferences_do(this.requestData).then(res => {
                    if (res.data.ok) {
                        this.$message({
                            type: 'success',
                            message: res.data.msg
                        });
                        this.dialogVisible = false;
                        this.getPageList();
                    } else {
                        this.$message({
                            type: 'error',
                            message: res.data.msg
                        });
                    }
                })
            }
        }
    }
};
</script>
@@ -549,16 +636,20 @@
        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;
}