| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398 |
- <template>
- <div>
- <!-- <el-dialog :title="'责任人填报'" :visible.sync="dialogFormVisible"> -->
- <el-container style="height:520px;">
- <el-main style="border:1px solid #d5d5ff;margin-left:5px;padding:0px;">
- <el-form :model="formObj" :label-width="formLabelWidth" :rules="rules">
- <p style="margin-top:10px;margin-bottom: 10px;font-weight: bold;">
- <i class="left-vertical"></i>
- <span>安全生产主体责任人</span>
- <span class="hrs"></span>
- </p>
- <el-form-item label="主体责任已明确责任人" :required="true">
- <el-radio v-model="formObj.isMakDuty" label="1">是</el-radio>
- <el-radio v-model="formObj.isMakDuty" label="2">否</el-radio>
- <el-button
- @click="addProblem('isMakDuty',formObj.isMakDuty)"
- type="text"
- v-if="formObj.isMakDuty =='2'">
- <i class="el-icon-circle-plus add-problem-icon"></i>
- </el-button>
- <i @click="showPic('isMakDuty')" class="el-icon-camera-solid"></i>
- </el-form-item>
- <el-form-item label="主体责任人姓名" v-if="formObj.isMakDuty=='1'">
- <el-input v-model="formObj.makDutyName" autocomplete="off" style="width:50%"></el-input>
- </el-form-item>
- <el-form-item label="主体责任人手机" v-if="formObj.isMakDuty=='1'">
- <el-input v-model="formObj.makDutyTel" autocomplete="off" style="width:50%"></el-input>
- </el-form-item>
- <el-form-item label="主体责任人已公示" v-if="formObj.isMakDuty=='1'">
- <el-radio v-model="formObj.isDutyPub" label="1">是</el-radio>
- <el-radio v-model="formObj.isDutyPub" label="2">否</el-radio>
- <el-button
- @click="addProblem('isDutyPub',formObj.isDutyPub)"
- type="text"
- v-if="formObj.isDutyPub =='2'">
- <i class="el-icon-circle-plus add-problem-icon"></i>
- </el-button>
- <i @click="showPic('isDutyPub')" class="el-icon-camera-solid"></i>
- </el-form-item>
- <el-form-item label="主体责任人履责情况" v-if="formObj.isMakDuty=='1'">
- <el-radio v-model="formObj.isDutyNote" label="1">好</el-radio>
- <el-radio v-model="formObj.isDutyNote" label="2">存在一定问题</el-radio>
- <el-button
- @click="addProblem('isDutyNote',formObj.isDutyNote)"
- type="text"
- v-if="formObj.isDutyNote =='2'">
- <i class="el-icon-circle-plus add-problem-icon"></i>
- </el-button>
- <i @click="showPic('isDutyNote')" class="el-icon-camera-solid"></i>
- </el-form-item>
- <p style="margin-top:10px;margin-bottom: 10px;font-weight: bold;">
- <i class="left-vertical"></i>
- <span>安全生产监管责任人</span>
- <span class="hrs"></span>
- </p>
- <el-form-item label="监管责任已明确责任人" :required="true">
- <el-radio v-model="formObj.isRglDuty" label="1">是</el-radio>
- <el-radio v-model="formObj.isRglDuty" label="2">否</el-radio>
- <el-button
- @click="addProblem('isRglDuty',formObj.isRglDuty)"
- type="text"
- v-if="formObj.isRglDuty =='2'">
- <i class="el-icon-circle-plus add-problem-icon"></i>
- </el-button>
- <i @click="showPic('isRglDuty')" class="el-icon-camera-solid"></i>
- </el-form-item>
- <el-form-item label="监管责任人单位" v-if="formObj.isRglDuty=='1'">
- <el-input v-model="formObj.rglDutyDep" autocomplete="off" style="width:50%"></el-input>
- </el-form-item>
- <el-form-item label="监管责任人职务" v-if="formObj.isRglDuty=='1'">
- <el-input v-model="formObj.rglDutyPost" autocomplete="off" style="width:50%"></el-input>
- </el-form-item>
- <el-form-item label="监管责任人姓名" v-if="formObj.isRglDuty=='1'">
- <el-input v-model="formObj.rglDutyName" autocomplete="off" style="width:50%"></el-input>
- </el-form-item>
- <el-form-item label="监管责任人手机" v-if="formObj.isRglDuty=='1'">
- <el-input v-model="formObj.rglDutyTel" autocomplete="off" style="width:50%"></el-input>
- </el-form-item>
- <el-form-item label="监管责任人已公示" v-if="formObj.isRglDuty=='1'">
- <el-radio v-model="formObj.isRglPub" label="1">是</el-radio>
- <el-radio v-model="formObj.isRglPub" label="2">否</el-radio>
- <el-button
- @click="addProblem('isRglPub',formObj.isRglPub)"
- type="text"
- v-if="formObj.isRglPub =='2'">
- <i class="el-icon-circle-plus add-problem-icon"></i>
- </el-button>
- <i @click="showPic('isRglPub')" class="el-icon-camera-solid"></i>
- </el-form-item>
- <el-form-item label="监管责任人履责情况" v-if="formObj.isRglDuty=='1'">
- <el-radio v-model="formObj.isRglNote" label="1">好</el-radio>
- <el-radio v-model="formObj.isRglNote" label="2">存在一定问题</el-radio>
- <el-button
- @click="addProblem('isRglNote',formObj.isRglNote)"
- type="text"
- v-if="formObj.isRglNote =='2'">
- <i class="el-icon-circle-plus add-problem-icon"></i>
- </el-button>
- <i @click="showPic('isRglNote')" class="el-icon-camera-solid"></i>
- </el-form-item>
- <p style="margin-top:10px;margin-bottom: 10px;font-weight: bold;">
- <i class="left-vertical"></i>
- <span>安全生产行政责任人</span>
- <span class="hrs"></span>
- </p>
- <el-form-item label="行政责任已明确责任人" :required="true">
- <el-radio v-model="formObj.isAdmDuty" label="1">是</el-radio>
- <el-radio v-model="formObj.isAdmDuty" label="2">否</el-radio>
- <el-button
- @click="addProblem('isAdmDuty',formObj.isAdmDuty)"
- type="text"
- v-if="formObj.isAdmDuty =='2'">
- <i class="el-icon-circle-plus add-problem-icon"></i>
- </el-button>
- <i @click="showPic('isAdmDuty')" class="el-icon-camera-solid"></i>
- </el-form-item>
- <el-form-item label="行政责任人单位" v-if="formObj.isAdmDuty=='1'">
- <el-input v-model="formObj.admDutyDep" autocomplete="off" style="width:50%"></el-input>
- </el-form-item>
- <el-form-item label="行政责任人职务" v-if="formObj.isAdmDuty=='1'">
- <el-input v-model="formObj.admDutyPost" autocomplete="off" style="width:50%"></el-input>
- </el-form-item>
- <el-form-item label="行政责任人姓名" v-if="formObj.isAdmDuty=='1'">
- <el-input v-model="formObj.admDutyName" autocomplete="off" style="width:50%"></el-input>
- </el-form-item>
- <el-form-item label="行政责任人手机" v-if="formObj.isAdmDuty=='1'">
- <el-input v-model="formObj.admDutyTel" autocomplete="off" style="width:50%"></el-input>
- </el-form-item>
- <el-form-item label="行政责任人已公示" v-if="formObj.isAdmDuty=='1'">
- <el-radio v-model="formObj.isAdmPub" label="1">是</el-radio>
- <el-radio v-model="formObj.isAdmPub" label="2">否</el-radio>
- <el-button
- @click="addProblem('isAdmPub',formObj.isAdmPub)"
- type="text"
- v-if="formObj.isAdmPub =='2'">
- <i class="el-icon-circle-plus add-problem-icon"></i>
- </el-button>
- <i @click="showPic('isAdmPub')" class="el-icon-camera-solid"></i>
- </el-form-item>
- <el-form-item label="行政责任人履责情况" v-if="formObj.isAdmDuty=='1'">
- <el-radio v-model="formObj.isAdmNote" label="1">好</el-radio>
- <el-radio v-model="formObj.isAdmNote" label="2">存在一定问题</el-radio>
- <el-button
- @click="addProblem('isAdmNote',formObj.isAdmNote)"
- type="text"
- v-if="formObj.isAdmNote =='2'">
- <i class="el-icon-circle-plus add-problem-icon"></i>
- </el-button>
- <i @click="showPic('isAdmNote')" class="el-icon-camera-solid"></i>
- </el-form-item>
- <el-form-item label="">
- <el-button type="primary" @click="addHandler" v-if="openType">保 存</el-button>
- </el-form-item>
- </el-form>
- </el-main>
- <problem-dialog
- v-if="showAddProblemDialog && openType"
- :objType="116"
- :villType="116"
- :objId="currentObjectId"
- :objName="currentObjectName"
- :problemMiddleType="'小水电隐患管理'"
- :problData="probId"
- @closeDialog="closePlDialog"
- :currentObjectRgstrId="currentObjectRgstrId"
- ></problem-dialog>
- <add-pic-com v-if="jqmmDialogShow" :dialogTitle="'相关材料'" :jqmmEngId="id" :type="type" :openType="openType" @jqmmDialogClose="jqmmDialogClose"></add-pic-com>
- </el-container>
- </div>
- </template>
- <script>
- import inputWith from "@widget/inuptWith.vue"
- import problemDialog from "../../duChaWenTi/problemDialog.vue";
- import addPicCom from "./addPic.vue"
- import request from "@util/gw_ajax_request.js"
- import {getDutyStat} from "@api/duChaTianBao.js"
- import {formatDateTimeD} from "@util/gw_date.js"
- export default {
- components: {
- inputWith: inputWith,
- problemDialog,
- addPicCom
- },
- props: ['currentObjectId','currentObjectName','currentObjectRgstrId','openType'],
- data() {
- var checkTel = (rule, value, callback) => {
- var isPhone = /^([0-9]{3,4}-)?[0-9]{7,8}$/;//座机
- var isMob= /^[1][3,4,5,7,8][0-9]{9}$/;// 座机格式
- if (value&&!isMob.test(value)&&!isPhone.test(value)) {
- callback(new Error('请输入合理电话'));
- } else if(value&&(isMob.test(value)||isPhone.test(value))){
- callback();
- }
- // setTimeout(() => {
- // }, 1000);
- };
- return {
- id:"",
- objtbStatu:{
- wtuntStat:"",
- rgstrId:"",
- id:"",
- state:""
- },
- rules:{
- wiunWaoLegPersTel:[
- { validator: checkTel,trigger: 'blur' }
- ],
- techPersTel:[
- { validator: checkTel,trigger: 'blur' }
- ],
- patrolPersTel:[
- { validator: checkTel,trigger: 'blur' }
- ],
- },
- jqmmDialogShow: false,
- type: '',
- formObj: {
- isMakDuty:"",
- rglDutyPost:"",
- makDutyName:"",
- makDutyTel:"",
- isDutyPub:"",
- isDutyNote:"",
- isRglDuty:"",
- rglDutyDep:"",
- rglDutyName:"",
- rglDutyTel:"",
- isRglPub:"",
- isRglNote:"",
- isAdmDuty:"",
- admDutyDep:"",
- admDutyName:"",
- admDutyPost:"",
- admDutyTel:"",
- isAdmPub:"",
- isAdmNote:""
- },
- dialogFormVisible: false,
- formLabelWidth: '400px',
- loading: true,
- operationType1:'',
- rsvrRules: null,
- probId: '',
- showAddProblemDialog: false
- }
- },
- computed:{
- recPersId(){
- return localStorage.getItem("userid")? localStorage.getItem("userid"): ''
- }
- },
- created(){
- this.findItemByType()
- },
- mounted() {
- this.getRgstridObj();
- },
- watch: {
- currentObjectRgstrId(n,o){
- this.getRgstridObj();
- },
- },
- methods: {
- jqmmDialogClose() {
- this.jqmmDialogShow = false;
- },
- showPic(type){
- this.type = type
- this.jqmmDialogShow = true
- },
- getRgstridObj(){
- var _self = this;
- getDutyStat(_self.currentObjectRgstrId).then((res)=>{
- _self.formObj = res.data;
- _self.id = res.data.id;
- });
- },
- addHandler(){
- var _self = this;
- _self.formObj['rgstrId'] = _self.currentObjectRgstrId;
- _self.formObj['recPersId'] = _self.recPersId;
- if(
- !this.formObj.isMakDuty &&
- !this.formObj.isRglDuty &&
- !this.formObj.isAdmDuty
- ){
- this.formObj.state = "0"
- }else if(
- this.formObj.isMakDuty &&
- this.formObj.isRglDuty &&
- this.formObj.isAdmDuty
- ){
- this.formObj.state = "2";
- }else{
- this.formObj.state = "1"
- }
- this.$confirm('确认保存现场督查情况信息?', '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- })
- .then(() => {
- try{
- request.post('/bis/insp/hystp/duty/',_self.formObj).then((res)=>{
- if (res.success) {
- _self.$message.success("修改成功");
- _self.$emit("addShuiKuSuccess");
- }
- });
- } catch(e) {
- }
- })
- .catch(() => {
- });
- },
- cancelHandler(){
- this.$emit('cancelHandler');
- },
- findItemByType(){
- const obj ={
- tname: "BIS_INSP_HYSTP_DUTY",
- }
- request.post("/bis/insp/item/ques/info/findItemByType",obj).then(res =>{
- this.rsvrRules = res.data;
- })
- },
- addProblem(item,iValue){
- let rest = this.rsvrRules.filter(e => {
- return e.iValue === iValue && e.eName === item;
- });
- if (rest[0]){
- this.probId = rest[0].id;
- }
- this.showAddProblemDialog = true;
- },
- formatRadio(val){
- if(val == '1'){
- return '是'
- }else if(val == '2'){
- return '否'
- }else{
- return val
- }
- },
- closePlDialog(val) {
- this.showAddProblemDialog = false;
- }
- },
- }
- </script>
- <style scoped>
- #dcdxHeader {
- padding: 15px 20px;
- }
- #dxdcFooter {
- text-align: center;
- }
- #dxdcAside {
- border:1px solid #d5d5ff;
- }
- .el-dialog__wrapper .el-treeWhite{
- /* max-height: 260px !important; */
- }
- .left-vertical {
- width: 8px;
- height: 24px;
- background: #00b0f0;
- display: inline-block;
- vertical-align: bottom;
- }
- .add-problem-icon{
- font-size: 16px;
- }
- .el-icon-camera-solid,.el-icon-circle-plus{
- margin-left: 20px;
- color: #00bbff;
- font-size: 18px;
- line-height: 12px;
- vertical-align: middle;
- cursor: pointer;
- }
- .el-icon-circle-plus{
- vertical-align: top;
- }
- </style>
|