From 44d7a737dc0d63ad1dd7c52d45fc2233d1950173 Mon Sep 17 00:00:00 2001
From: lyfO_o <764716047@qq.com>
Date: 星期四, 09 六月 2022 09:56:08 +0800
Subject: [PATCH] Merge remote-tracking branch 'remotes/origin/shf' into master

---
 src/views/careabout/index.vue |  577 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 577 insertions(+), 0 deletions(-)

diff --git a/src/views/careabout/index.vue b/src/views/careabout/index.vue
new file mode 100644
index 0000000..7658819
--- /dev/null
+++ b/src/views/careabout/index.vue
@@ -0,0 +1,577 @@
+<template>
+    <div class="app-container">
+       <el-form ref="form" :inline="true" class="inquire" :model="listQuery.form" label-width="100px">
+            <el-form-item label="编号">
+                <el-input v-model="listQuery.form.number" style="width:202px" placeholder="请输入内容"></el-input>
+            </el-form-item>
+            <el-form-item label="检查单位">
+                <el-select v-model="listQuery.form.check_main_branch" placeholder="请选择"  @change="changeJCDW">
+                    <el-option
+                        v-for="item in JCDWList"
+                        :key="item.value"
+                        :label="item.label"
+                        :value="item.value"
+                    >
+                    </el-option>
+                </el-select>
+            </el-form-item>
+            <el-form-item label="检查部门">
+                <el-select v-model="listQuery.form.check_branch" placeholder="请选择">
+                    <el-option
+                        v-for="item in JCBMList"
+                        :key="item.value"
+                        :label="item.value"
+                        :value="item.value">
+                    </el-option>
+                </el-select>
+            </el-form-item>
+            <el-form-item label="检查人">
+                <el-input v-model="listQuery.form.check_man" style="width:202px" placeholder="请输入内容"></el-input>
+            </el-form-item>
+            <el-form-item label="隐患单位">
+                <el-input v-model="listQuery.form.ht_community" style="width:202px" :disabled="true"></el-input>
+                <!--<el-select v-model="listQuery.form.ht_community" placeholder="请选择" @change="changeYHDW">
+             <el-option
+               v-for="item in JCDWList"
+               :key="item.value"
+               :label="item.label"
+               :value="item.value">
+             </el-option>
+           </el-select>-->
+            </el-form-item>
+            <el-form-item label="隐患部门">
+                <el-select v-model="listQuery.form.ht_branch" placeholder="请选择">
+                    <el-option
+                        v-for="item in YHBMList"
+                        :key="item.branch_id"
+                        :label="item.branch_name"
+                        :value="item.branch_name">
+                    </el-option>
+                </el-select>
+            </el-form-item>
+            <el-form-item label="隐患类别">
+                <el-select v-model="listQuery.form.ht_typesub" placeholder="请选择">
+                    <el-option
+                        v-for="item in YHLXList"
+                        :key="item.value"
+                        :label="item.value"
+                        :value="item.value">
+                    </el-option>
+                </el-select>
+            </el-form-item>
+            <el-form-item label="隐患级别">
+                <el-select v-model="listQuery.form.ht_level" placeholder="请选择">
+                    <el-option
+                        v-for="item in YHJBList"
+                        :key="item.value"
+                        :label="item.label"
+                        :value="item.value">
+                    </el-option>
+                </el-select>
+            </el-form-item>
+            <el-form-item label="检查类别">
+                <el-select v-model="listQuery.form.checktype" placeholder="请选择">
+                    <el-option
+                        v-for="item in JCLBList"
+                        :key="item.value"
+                        :label="item.value"
+                        :value="item.value">
+                    </el-option>
+                </el-select>
+            </el-form-item>
+            <el-form-item label="隐患地点">
+                <el-input v-model="listQuery.form.address" style="width:202px" placeholder="请输入内容"></el-input>
+            </el-form-item>
+            <el-form-item label="隐患内容">
+                <el-input v-model="listQuery.form.ht_content" style="width:202px" placeholder="请输入内容"></el-input>
+            </el-form-item>
+            <el-form-item label="班次">
+                <el-select v-model="listQuery.form.check_class" placeholder="请选择">
+                    <el-option
+                        v-for="item in BCList"
+                        :key="item.value"
+                        :label="item.value"
+                        :value="item.value">
+                    </el-option>
+                </el-select>
+            </el-form-item>
+            <el-form-item label="深入现场情况">
+                <el-select v-model="listQuery.form.class_situation" placeholder="请选择">
+                    <el-option
+                        v-for="item in reList"
+                        :key="item.value"
+                        :label="item.value"
+                        :value="item.value">
+                    </el-option>
+                </el-select>
+            </el-form-item>
+            <!-- <el-form-item label="录入人">
+                <el-select v-model="listQuery.form.createBy" placeholder="请选择">
+                    <el-option
+                        v-for="item in llrList"
+                        :key="item.id"
+                        :label="item.realName"
+                        :value="item.id">
+                    </el-option>
+                </el-select>
+            </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-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-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-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-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-refresh-right" @click="reset()">重置</el-button>
+                <el-button type="primary" class="btns" size="small" icon="el-icon-upload2" @click="exportData">导出excel</el-button>
+            </el-form-item>
+        </el-form>
+     <el-row class="title-center">
+            <el-col :span="10">
+                <el-radio-group  v-model="listQuery.tag" @change="typeChange">
+                    <el-radio-button label="0"
+                                     v-for="item in tagList"
+                                     :label="item.value"
+                                     :key="item.value">
+                        {{item.value}}
+                    </el-radio-button>
+<!--                    <el-radio-button label="1">特别关注</el-radio-button>-->
+<!--                    <el-radio-button label="2">全部</el-radio-button>-->
+                </el-radio-group>
+            </el-col>
+            <div v-if="table1">
+            <el-col :span="14" style="text-align:right;">
+                <el-button class="btns" type="primary" size="small" @click="specialFocus()">{{focusDesc}}</el-button>
+<!--                <el-button class="btns" type="primary" size="small" @click="sendBath()">管理关注</el-button>-->
+            </el-col>
+            </div>
+        </el-row>
+       <el-table :data="tableData" style="width: 100%"  @selection-change="handleSelectionChange" v-loading="listLoading">
+            <el-table-column type="selection" width="55" align="center"></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="检查时间" :formatter="formatColumnDate" 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">
+                    <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="级别" 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="限改时间" :formatter="formatColumnDate" width="120" 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="完成时间" :formatter="formatColumnDate" 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="复查时间" :formatter="formatColumnDate" width="120" align="center"></el-table-column>
+            </el-table-column>
+            <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>
+                    <span v-if="scope.row.step =='3'">复查中</span>
+                    <span v-if="scope.row.step =='END'">处理结束</span>
+                </template>
+            </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-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="date" label="流程操作" align="center"  fixed="right">
+                <template slot-scope="scope">
+                    <el-button @click="handleClick(scope.row)" type="text" size="small">点击发送</el-button>
+                </template>
+            </el-table-column>
+            <el-table-column prop="date" label="基本操作" align="center"  fixed="right">
+                <template slot-scope="scope">
+                    <el-button @click="updateClick(scope.row)" type="text" size="small">编辑</el-button>
+                    <el-button @click="deleteClick(scope.row)" type="text" size="small">删除</el-button>
+                </template>
+            </el-table-column> -->
+        </el-table>
+        <div style="text-align: right">
+            <el-pagination
+                v-show="recordTotal > 0"
+                @size-change="handleSizeChange"
+                @current-change="handleCurrentChange"
+                :current-page="currentPage"
+                :page-sizes="[10, 20, 30, 50]"
+                :page-size="pageSize"
+                layout="total, sizes, prev, pager, next, jumper"
+                :total="recordTotal"
+            >
+            </el-pagination>
+        </div>
+
+    </div>
+</template>
+<script>
+import { getPageList, danger_focus_tag, analogy_export_do, focus_do} from "@/api/sgyhpczl/careabout"
+import {initJCBM ,initYHLX, initBC ,initJCLB ,initYHBM ,initYHJB,initLlr,initSrxcqk} from "@/api/sgyhpczl/initSelect";
+
+    export default{
+        data(){
+            return{
+                listQuery:{
+                    page:1,
+                    limit:10,
+                    tag: '全部',
+                    form:{
+                        ht_community:'众泰煤焦化'
+                    },
+                },
+                radio1:'待发送',
+                table1:true,
+                table2:false,
+
+                focusDesc: '特别关注',
+                currentPage: 1,
+                pageSize: 10,
+                recordTotal: 0,
+                JCDWList:[{label:"众泰煤焦化",value:0},{label:"上级单位",value:1}],
+                JCBMList:[],
+                YHLXList:[],
+                BCList:[],
+                reList:[],
+                JCLBList:[],
+                YHBMList:[],
+                YHJBList:[],
+                tagList:[],
+                tableData:[],
+                selectedList:[],
+                listLoading: false,
+                selfInspectVisible: false,
+                selfInspectForm:{
+                    id: '',
+                    markUserName:'',
+                    markDate:'',
+                    remark:'',
+                },
+                selfInspectFormRules:{
+                    markUserName: [{ required: true, message: '自查人不能为空', trigger: 'blur' }],
+                    markDate: [{ required: true, message: '自查时间不能为空', trigger: 'blur' }]
+                },
+
+            }
+        },
+        mounted() {
+            this.initYHLX();
+            this.initYHJB();
+            this.initBC();
+            this.initJCLB();
+            this.initLlr();
+            this.initYHBM();
+            this.initSrxcqk();
+            this.initTags();
+            this.getPageList();
+        },
+        methods:{
+            sendBath(){
+                this.$router.push({
+                    path:'/managementConcerns'
+                })
+            },
+            handleClick(data,val){
+                if(val=='存在'){
+                    this.$router.push({
+                        path:'/exist'
+                    })
+                }
+            },
+            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})
+                    }
+                })
+            },
+            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})
+                    }
+                })
+            },
+            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})
+                    }
+                })
+            },
+            initSrxcqk(){
+                initSrxcqk().then(res=>{
+                    if (res.data.ok==1){
+                        this.reList=res.data.data
+                    } else{
+                        this.$message({type:'error', message:res.data.msg, duration:3000})
+                    }
+                })
+            },
+            initTags(){
+                danger_focus_tag().then(res=>{
+                    if (res.data.ok==1){
+                        this.tagList=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})
+                    }
+                })
+            },
+            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})
+                        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})
+                        return
+                    }
+                }
+            },
+            //搜索
+            getPageList(){
+                this.listQuery.page=1
+                // this.listQuery.limit=10
+                this.checkTime()
+                this.listLoading = true
+                getPageList(this.listQuery).then(res=>{
+                    this.listLoading = false
+                    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})
+                    }
+                })
+            },
+            //重置
+            reset(){
+                this.listQuery.form = {ht_community: "众泰煤焦化"}
+                this.getPageList()
+            },
+            handleSizeChange(val){
+                this.listQuery.limit = val
+                this.getPageListForPagination();
+            },
+            handleCurrentChange(val){
+                this.listQuery.page = val
+                this.getPageListForPagination();
+            },
+            getPageListForPagination(){
+                this.checkTime()
+                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})
+                    }
+                })
+            },
+            showDetails(row){
+                this.$router.push({
+                    path: "/dangerDetails",
+                    query:{"id":row.id}
+                })
+            },
+            typeChange(val){
+                this.listQuery.tag = val;
+                if (val == '特别关注'){
+                    this.focusDesc = '取消关注'
+                }else {
+                    this.focusDesc = '特别关注'
+                }
+                this.getPageList()
+            },
+            handleSelectionChange(val){
+                this.selectedList = []
+                val.forEach((item) => {
+                    this.selectedList.push(item)
+                })
+            },
+            exportData() {
+                this.listLoading = true
+                var requestData = JSON.parse(JSON.stringify(this.listQuery));
+                requestData.export_type = 7;
+                //删除分页参数
+                this.$delete(requestData, 'page')
+                this.$delete(requestData, 'limit')
+                analogy_export_do(requestData).then(res => {
+                    this.listLoading = false
+                    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)
+                })
+            },
+            //特别关注/取消关注
+            specialFocus(){
+                if (this.selectedList == null || this.selectedList.length == 0) {
+                    this.$message({type: 'warning', message: '至少选中一条数据', duration: 3000})
+                    return
+                }
+                var type = this.listQuery.tag == '特别关注' ? 'del' : 'add'
+                var desc = this.listQuery.tag == '特别关注' ? '确认取消吗' : '确认关注吗'
+                this.$confirm(desc, '提示', {
+                    confirmButtonText: '确认',
+                    cancelButtonText: '取消',
+                    type: 'warning'
+                }).then(() => {
+                    var ids = this.selectedList.map((obj) => {
+                        return obj.id
+                    }).join(",")
+                    let data = {
+                        type: type,
+                        ids: ids,
+                    }
+                    focus_do(data).then(() => {
+                        this.getPageList()
+                        this.$notify({
+                            title: "成功",
+                            message: "操作成功",
+                            type: "success",
+                            duration: 2000,
+                        });
+                    });
+                }).catch(error => {
+                });
+            },
+            //日期格式转换
+            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() + ' '
+            },
+        }
+    }
+</script>
+<style scoped>
+.inquire {
+    display: flex;
+    justify-content: left;
+    flex-wrap: wrap;
+}
+.inquire .el-form-item {
+    padding: 0 40px;
+}
+.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;
+}
+
+.title-center /deep/ .el-radio-button__inner {
+    border: none;
+    border-radius: 0px;
+}
+
+.title-center /deep/ .el-radio-button__orig-radio:checked + .el-radio-button__inner {
+    background-color: #034ea2;
+    background-color: #034ea2;
+}
+</style>

--
Gitblit v1.9.2