马宇豪
2022-12-27 771e0da9c6082c78a28f5286f89f4f36b05689d3
src/views/hiddenDangerManagement/fillInspector.vue
@@ -3,10 +3,10 @@
        <div>
            <Titlename title="填写督查"></Titlename>
            <div class="whole-form">
                <el-form :model="config" ref="configTableForm">
                <el-form  ref="configTableForm">
                    <el-table
                        :data="tableData"
                        size="mini"
                        border
                        style="width: 1600px"
                        @cell-mouse-enter="handleCellEnter"
                        @cell-mouse-leave="handleCellLeave"
@@ -24,141 +24,148 @@
                            width="100">
                        </el-table-column>
                        <el-table-column
                            prop="hiddenDanger"
                            prop="ht_branch"
                            label="隐患单位"
                            align="center"
                            width="100">
                        </el-table-column>
                        <el-table-column
                            prop="Inspector"
                            prop="check_man"
                            label="检查人"
                            align="center"
                            width="100">
                        </el-table-column>
                        <el-table-column
                            prop="inspection"
                            prop="check_class"
                            label="检查班次"
                            align="center"
                            width="80">
                        </el-table-column>
                        <el-table-column
                            prop="date"
                            prop="check_date"
                            label="检查时间"
                            align="center"
                            :formatter="formatDate"
                            width="100">
                        </el-table-column>
                        <el-table-column
                            prop="place"
                            prop="address"
                            label="地点"
                            align="center"
                            width="100">
                        </el-table-column>
                        <el-table-column
                            prop="content"
                            prop="ht_content"
                            label="内容"
                            align="center"
                            width="180">
                        </el-table-column>
                        <el-table-column
                            prop="category"
                            prop="ht_typesub"
                            label="类别"
                            align="center"
                            width="80">
                        </el-table-column>
                        <el-table-column
                            prop="level"
                            prop="ht_level"
                            label="级别"
                            align="center"
                            width="120">
                        </el-table-column>
                        <el-table-column
                            prop="rectification"
                            prop="measure"
                            label="整改措施"
                            align="center"
                            width="120">
                        </el-table-column>
                        <el-table-column
                            prop="liable"
                            prop="duty_officer"
                            label="责任人"
                            align="center"
                            width="100">
                        </el-table-column>
                        <el-table-column
                            prop="time"
                            prop="alter_time"
                            label="限改时间"
                            align="center"
                            :formatter="formatDate"
                            width="120">
                        </el-table-column>
                        <el-table-column
                            prop="completionTime"
                            prop="ACCOMPLISHTIME"
                            align="center"
                            label="完成时间"
                            :formatter="formatDate"
                            width="100">
                        </el-table-column>
                        <el-table-column
                            prop="rechecker"
                            prop="CALLBACKPERSON"
                            label="复查人"
                            align="center"
                            width="100">
                        </el-table-column>
                        <el-table-column
                            prop="reviewTime"
                            prop="CALLBACKTIME"
                            align="center"
                            width="100"
                            :formatter="formatDate"
                            label="复查时间">
                        </el-table-column>
                        <el-table-column
                            prop="supervision"
                            prop="inspectionClass"
                            label="督察单位"
                            disabled=""
                            align="center"
                            width="160">
                            <div class="item" slot-scope="scope">
                                <el-input class="item__input" v-model="scope.row.rechecker" placeholder="请输入内容" clearable></el-input>
                                <div class="item__txt">{{scope.row.rechecker}}</div>
                                <el-input class="item__input" v-model="scope.row.inspectionClass" disabled placeholder="请输入内容" clearable></el-input>
                                <div class="item__txt">{{scope.row.inspectionClass}}</div>
                            </div>
                        </el-table-column>
                        <el-table-column
                            prop="inspectorTime"
                            prop="inspectionTime"
                            align="center"
                            label="督察时间"
                            width="160">
                            <div class="item" slot-scope="scope">
                                <el-date-picker
                                    v-model="scope.row.completionTime"
                                    v-model="scope.row.inspectionTime"
                                    type="date"
                                    placeholder="选择日期" clearable>
                                </el-date-picker>
                                <div class="item__txt">{{scope.row.completionTime}}</div>
                                <div class="item__txt">{{scope.row.inspectionTime}}</div>
                            </div>
                        </el-table-column>
                        <el-table-column
                            prop="results"
                            prop="inspectionResult"
                            label="督察结果"
                            align="center"
                            width="160">
                            <div class="item" slot-scope="scope">
                                <el-input class="item__input" v-model="scope.row.rechecker" placeholder="请输入内容" clearable></el-input>
                                <div class="item__txt">{{scope.row.rechecker}}</div>
                                <el-input class="item__input" v-model="scope.row.inspectionResult" placeholder="请输入内容" clearable></el-input>
                                <div class="item__txt">{{scope.row.inspectionResult}}</div>
                            </div>
                        </el-table-column>
                        <el-table-column
                            prop="inspector"
                            prop="inspectionMan"
                            label="督察人"
                            align="center"
                            width="160">
                            <div class="item" slot-scope="scope">
                                <el-input class="item__input" v-model="scope.row.rechecker" placeholder="请输入内容" clearable></el-input>
                                <div class="item__txt">{{scope.row.rechecker}}</div>
                                <el-input class="item__input" v-model="scope.row.inspectionMan" placeholder="请输入内容" clearable></el-input>
                                <div class="item__txt">{{scope.row.inspectionMan}}</div>
                            </div>
                        </el-table-column>
                    </el-table>
                </el-form>
                <div class="btn">
                    <el-button
                        class="btns"
                        size="small"
                        type="primary"
                        @click="submitConfig('config')">保存</el-button>
                    <el-button
                        type="primary" @click="close()">关闭</el-button>
                        @click="submitConfig()">保存</el-button>
                    <el-button  size="small"
                         @click="close()">关闭</el-button>
                </div>
            </div>
        </div>
@@ -167,69 +174,34 @@
</template>
<script>
    import Titlename from "../../components/Titlename/index.vue";
    import {getUserInfo,self_edit_do} from "@/api/sgyhpczl/hiddenDangerManagement";
    export default {
        components: {Titlename},
        name: "fillInspector",
        data() {
            return {
                department:"",
                // 表格数据
                tableData: [{
                    serial:'1',
                    number:'dycj-20220409-0083',
                    hiddenDanger:'电仪车间',
                    Inspector:'吴甲甲 ',
                    inspection:'早班',
                    date: '2016-05-02',
                    place:'生化站 ',
                    content:'生化站3号污泥回流泵电机接地线脱落',
                    category:'电气',
                    level:'一般隐患C',
                    rectification:'已紧固处理',
                    liable:'常春',
                    time:'2016-05-02',
                    completionTime:'',
                    rechecker:'',
                    reviewTime:'',
                }, {
                    serial:'2',
                    number:'dycj-20220409-0083',
                    hiddenDanger:'电仪车间',
                    Inspector:'吴甲甲 ',
                    inspection:'早班',
                    date: '2016-05-02',
                    place:'生化站 ',
                    content:'生化站3号污泥回流泵电机接地线脱落',
                    category:'电气',
                    level:'一般隐患C',
                    rectification:'已紧固处理',
                    liable:'常春',
                    time:'2016-05-02',
                    completionTime:'',
                    rechecker:'',
                    reviewTime:'',
                }, {
                    serial:'3',
                    number:'dycj-20220409-0083',
                    hiddenDanger:'电仪车间',
                    Inspector:'吴甲甲 ',
                    inspection:'早班',
                    date: '2016-05-02',
                    place:'生化站 ',
                    content:'生化站3号污泥回流泵电机接地线脱落',
                    category:'电气',
                    level:'一般隐患C',
                    rectification:'已紧固处理',
                    liable:'常春',
                    time:'2016-05-02',
                    completionTime:'',
                    rechecker:'',
                    reviewTime:'',
                }],
                tableData: [],
                // 需要编辑的属性
                editProp: ['inspectorTime', 'results', 'inspector']
            };
        },
        mounted(){
            this.tableData = this.$route.query.checkData;
            getUserInfo().then(res=>{
                if(res.data.code == 200){
                    this.tableData.forEach(n=>{
                        n.inspectionClass = res.data.result.department;
                        n.inspectionTime = new Date().toLocaleDateString().replaceAll("/","-")
                    })
                }else{
                    this.$message({type:'error', message:"用户信息获取失败!请重试", duration:3000})
                }
            })
        },
        computed: {
            foodLabel () {
@@ -254,6 +226,50 @@
                    // cell.querySelector('.item__input').style.display = 'none'
                    // cell.querySelector('.item__txt').style.display = 'block'
                }
            },
            submitConfig(){
                console.log(this.tableData)
                var requestData = [];
                this.tableData.forEach(n=>{
                    if(n.inspectionResult == null  ||n.inspectionResult == ""
                    ||n.inspectionMan == null  ||n.inspectionMan == "" ){
                        this.$message({type: 'Warn', message: "请填写完整信息", duration: 3000})
                        return;
                    }
                    var data= {
                        "type": 2,
                        "id": n.id,
                        "inspectionResult": n.inspectionResult,
                        "inspectionMan": n.inspectionMan,
                        "inspectionTime": n.inspectionTime,
                        "inspectionClass": n.inspectionClass
                    }
                    requestData.push(data);
                })
                var successFlag = 0;
                for (let i = 0; i < requestData.length; i++) {
                    self_edit_do(requestData[i]).then(res=>{
                        if(res.data.ok){
                            successFlag ++;
                            if(successFlag== requestData.length){
                                this.$message({type: 'success', message: "操作成功!", duration: 3000})
                                this.$router.push({
                                    path:"/hiddenDangerManagement"
                                })
                            }
                        }
                    })
                }
            },
            formatDate(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()
            },
            close(){
                this.$router.push({
@@ -300,4 +316,13 @@
        text-align: center;
        margin-top: 50px;
    }
    .btns{
        background-color: #034ea2;
        border: 1px solid #034ea2;
    }
    /*.el-button:hover {*/
    /*    background: #66b1ff;*/
    /*    border-color: #66b1ff;*/
    /*    color: #FFF;*/
    /*}*/
</style>