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/oneFromanother/index.vue |  350 +++++++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 310 insertions(+), 40 deletions(-)

diff --git a/src/views/oneFromanother/index.vue b/src/views/oneFromanother/index.vue
index e3ada87..6a33880 100644
--- a/src/views/oneFromanother/index.vue
+++ b/src/views/oneFromanother/index.vue
@@ -2,9 +2,9 @@
     <div class="app-container">
             <el-form ref="form" :inline="true" class="inquire" :model="listQuery" label-width="80px">
             <el-form-item label="下发单位">
-               <el-select v-model="listQuery.form.ht_typesub" placeholder="请选择">
+               <el-select v-model="listQuery.form.push_branch" placeholder="请选择">
                     <el-option
-                        v-for="item in YHLXList"
+                        v-for="item in XFDWList"
                         :key="item.value"
                         :label="item.value"
                         :value="item.value">
@@ -12,12 +12,12 @@
                 </el-select>
             </el-form-item>
             <el-form-item label="隐患单位">
-                <el-input v-model="listQuery.form.ht_branch" style="width:202px"></el-input>
+                <el-input v-model="listQuery.form.ht_community" style="width:202px"></el-input>
             </el-form-item>
             <el-form-item label="隐患类别">
                 <el-select v-model="listQuery.form.ht_typesub" placeholder="请选择">
                     <el-option
-                        v-for="item in YHLXList"
+                        v-for="item in YHLBList"
                         :key="item.value"
                         :label="item.value"
                         :value="item.value">
@@ -38,9 +38,9 @@
                 <el-input v-model="listQuery.form.address" style="width:202px" placeholder="请输入内容"></el-input>
             </el-form-item>
                <el-form-item label="检查类别">
-                <el-select v-model="listQuery.form.ht_typesub" placeholder="请选择">
+                <el-select v-model="listQuery.form.checktype" placeholder="请选择">
                     <el-option
-                        v-for="item in YHLXList"
+                        v-for="item in JCLBList"
                         :key="item.value"
                         :label="item.value"
                         :value="item.value">
@@ -71,39 +71,53 @@
         </el-form>
      <el-row class="title-center">
             <el-col :span="10">
-              <el-radio-group v-model="radio1">
-            <el-radio-button label="待自查">待自查</el-radio-button>
-            <el-radio-button label="已自查">已自查</el-radio-button>
-          </el-radio-group>
+                <el-radio-group v-model="listQuery.type" @change="radioChange">
+                    <el-radio-button label="0">待自查</el-radio-button>
+                    <el-radio-button label="1">已自查</el-radio-button>
+                </el-radio-group>
             </el-col>
-            <el-col :span="14" v-if="radio1=='待自查'" style="text-align:right;">
-                <el-button class="btns" type="primary" size="small" @click="sendBath()">管理专业</el-button>
-            </el-col>
-              <el-col :span="14" v-if="radio1=='已自查'" style="text-align:right;">
-                <el-button class="btns" type="primary" size="small" @click="sendBath()">撤销</el-button>
+<!--            <el-col :span="14" v-if="type=='待自查'" style="text-align:right;">-->
+<!--                <el-button class="btns" type="primary" size="small" @click="sendBath()">管理专业</el-button>-->
+<!--            </el-col>-->
+              <el-col :span="14" v-if="listQuery.type=='1'" style="text-align:right;">
+                <el-button class="btns" type="primary" size="small" @click="revoke()">撤销</el-button>
             </el-col>
         </el-row>
-         <el-table ref="dataTable" :data="tableData" style="width: 100%" @selection-change="handleSelectionChange">
+         <el-table
+            v-loading="listLoading"
+            :data="tableData"
+            style="width: 100%"
+            @selection-change="changeBox">
             <el-table-column type="selection" width="55" align="center"></el-table-column>
-          <el-table-column prop="check_date" label="检查时间" width="120" align="center">
-                    <template slot-scope="scope">
+          <el-table-column prop="check_date" label="检查时间" width="120" :formatter="formatColumnDate" align="center">
+                    <!-- <template slot-scope="scope">
                         <label>{{ formatDate(scope.row.check_date)}}</label><br/>
                         <label>{{ scope.row.check_class}}</label>
-                    </template>
+                    </template> -->
                 </el-table-column>
-            <el-table-column prop="check_branch" label="检查单位" align="center"></el-table-column>
+            <el-table-column prop="check_main_branch" label="检查单位" align="center"></el-table-column>
             <el-table-column prop="checktype" label="检查类别" align="center"></el-table-column>
-                <el-table-column prop="measure" label="被检单位" align="center"></el-table-column>
-            <el-table-column prop="date" 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="内容" width="200" align="center"></el-table-column>
-            <el-table-column prop="curWarningLevel" label="下发单位" align="center"></el-table-column>
+                <el-table-column prop="ht_community" 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="address" label="隐患地点" align="center"></el-table-column>
+            <el-table-column prop="ht_content" label="内容" width="200" 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="push_branch" label="下发单位" align="center"></el-table-column>
             <el-table-column prop="date" label="流程操作" align="center">
                 <template slot-scope="scope">
-                    <el-button @click="handleClick(scope.row)" type="text"  size="small">不存在</el-button>
-                    <el-button @click="handleClick(scope.row)" type="text" v-if="radio1=='已自查'" size="small">追查结果</el-button>
-                    <el-button @click="handleClick(scope.row,'存在')" type="text"  v-if="radio1=='待自查'" size="small">存在</el-button>
+                    <el-button @click="handleClick(scope.row,'不存在')"  v-if="scope.row.jyfsFlag=='1'" type="text"  size="small">不存在</el-button>
+                    <el-button @click="handleClick(scope.row)" type="text" v-if="listQuery.type=='0' || scope.row.jyfsFlag=='0'" size="small">存在</el-button>
+                    <el-button @click="handleClick(scope.row)" type="text" v-if="listQuery.type=='1'" size="small">追查结果</el-button>
                 </template>
             </el-table-column>
         </el-table>
@@ -120,32 +134,288 @@
             >
             </el-pagination>
         </div>
-        
+        <el-dialog :title="selfTitle" :visible.sync="selfInspectVisible" :modal-append-to-body="false" :close-on-click-modal="false" width="600px">
+            <el-form ref="selfInspectForm" :rules="selfInspectFormRules" :model="selfInspectForm" label-position="right" label-width="80px">
+                <el-form-item label="自查人" prop="markUserName">
+                    <el-input v-model="selfInspectForm.markUserName" class="analyseUnit_input"></el-input>
+                </el-form-item>
+                <el-form-item label="自查时间" prop="markDate">
+                    <el-col :span="11">
+                        <el-date-picker type="date" placeholder="选择日期" v-model="selfInspectForm.markDate"
+                                        style="width: 100%;" value-format="yyyy-MM-dd">
+                        </el-date-picker>
+                    </el-col>
+                </el-form-item>
+                <el-form-item label="备注" prop="remark">
+                    <el-input v-model="selfInspectForm.remark" type="textarea" rows="5" class="analyseUnit_input"></el-input>
+                </el-form-item>
+            </el-form>
+            <div  align="center">
+                <el-button type="primary" v-if="listQuery.type == '0'" @click="submitSelfInspect()">确认</el-button>
+                <el-button @click="selfInspectVisible = false">关闭</el-button>
+            </div>
+        </el-dialog>
+
     </div>
 </template>
 <script>
+    import { getPageList, noExistSave,selfCheckNotInfo, revoke, analogy_export_do} from "@/api/sgyhpczl/oneFromanother"
+    import {initJCBM, initYHLX, initJCLB, initYHJB} from "@/api/sgyhpczl/initSelect";
+
     export default{
+        name: 'index',
         data(){
             return{
                 listQuery:{
-                    form:{}
+                    page:1,
+                    limit:10,
+                    type: 0,
+                    form:{},
                 },
-                radio1:'待自查',       
+                currentPage: 1,
+                pageSize: 10,
+                recordTotal: 0,
+                XFDWList:[],
+                YHLBList:[],
+                YHJBList:[],
+                JCLBList:[],
+                tableData:[],
+                selectedList:[],
+                listLoading: false,
+                selfInspectVisible: false,
+                selfInspectForm:{
+                    id: '',
+                    markUserName:'',
+                    markDate:'',
+                    remark:'',
+                },
+                selfTitle: '',
+                selfInspectFormRules:{
+                    markUserName: [{ required: true, message: '自查人不能为空', trigger: 'blur' }],
+                    markDate: [{ required: true, message: '自查时间不能为空', trigger: 'blur' }]
+                },
             }
         },
+        mounted() {
+            this.getPageList();
+            this.initJCLB();
+            this.initXFDW();
+            this.initYHJB();
+            this.initYHLB();
+        },
         methods:{
-            sendBath(){
-                this.$router.push({
-                    path:'/manage'
+            revoke(){
+                if (this.selectedList.length > 1 || this.selectedList.length === 0) {
+                    this.$message({type:'warning', message:'请选择一条记录', duration:3000})
+                    return
+                }
+                this.$confirm('确认撤销吗','提示', {
+                    confirmButtonText: '确认',
+                    cancelButtonText: '取消',
+                    type: 'warning'
+                }).then(()=>{
+                    revoke(this.selectedList[0].id).then((res)=>{
+                        if (res.data.ok==1) {
+                            this.getPageList();
+                            this.$notify({
+                                title: "成功",
+                                message: "撤销成功",
+                                type: "success",
+                                duration: 2000,
+                            });
+                        }else{
+                            this.$message({type:'error', message:res.data.msg, duration:3000})
+                        }
+                    })
                 })
             },
             handleClick(data,val){
-                if(val=='存在'){
-                    this.$router.push({
-                        path:'/exist'
+                if(val=='不存在'){
+                    this.$nextTick(() =>{
+                        this.$refs["selfInspectForm"].clearValidate()
                     })
+                    this.selfInspectForm={id:data.id}
+                    this.selfInspectVisible = true
+                    if (this.listQuery.type == '1'){
+                        let params = {
+                            id: data.id,
+                            type: 0,
+                        }
+                        selfCheckNotInfo(params).then(res=>{
+                            if (res.data.ok==1){
+                                this.selfInspectForm=res.data.data[0]
+                            } else{
+                                this.$message({type:'error', message:res.data.msg, duration:3000})
+                            }
+                        })
+                    }
+                    return
                 }
-            }
+                let puType = '0';
+                if (this.listQuery.type=='1' && data.jyfsFlag=='0'){
+                    puType = '1';
+                }
+                this.$router.push({
+                    path:'/exist',
+                    query: {
+                        data: data,
+                        type: puType
+                    }
+                })
+            },
+            initXFDW(){
+                initJCBM(1).then(res=>{
+                    if (res.data.ok==1){
+                        this.XFDWList=res.data.data
+                    } else{
+                        this.$message({type:'error', message:res.data.msg, duration:3000})
+                    }
+                })
+            },
+            initYHLB(){
+                initYHLX().then(res=>{
+                    if (res.data.ok==1){
+                        this.YHLBList=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})
+                    }
+                })
+            },
+            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})
+                    }
+                })
+            },
+            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.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={};
+                this.getPageList()
+            },
+            //自查切换
+            radioChange(val){
+                this.listQuery.type = val;
+                if (val == '0'){
+                    this.selfTitle = '填写自查结果'
+                }else {
+                    this.selfTitle = '查看自查结果'
+                }
+                this.getPageList()
+            },
+            changeBox(val){
+                this.selectedList = []
+                val.forEach((item) => {
+                    this.selectedList.push(item)
+                })
+            },
+            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})
+                    }
+                })
+            },
+            submitSelfInspect(){
+                this.$refs["selfInspectForm"].validate((valid) =>{
+                    if (valid){
+                        noExistSave(this.selfInspectForm).then((res)=>{
+                            if (res.data.ok==1) {
+                                this.$message({type:'success', message:"保存成功", duration:3000});
+                                this.selfInspectVisible = false
+                            }else{
+                                this.$message({type:'error', message:res.data.msg, duration:3000})
+                            }
+                        })
+                    }
+                })
+            },
+            exportData() {
+                this.listLoading = true
+                var requestData = JSON.parse(JSON.stringify(this.listQuery));
+                //删除分页参数
+                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)
+                })
+            },
+            //日期格式转换
+            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>
@@ -180,4 +450,4 @@
     background-color: #034ea2;
     background-color: #034ea2;
 }
-</style>
\ No newline at end of file
+</style>

--
Gitblit v1.9.2