更新安全隐患排查-审批流程
parent
be9e392ec7
commit
411a84e564
|
@ -5,6 +5,8 @@ import org.apache.commons.lang3.builder.ToStringStyle;
|
|||
import com.yanzhu.common.core.annotation.Excel;
|
||||
import com.yanzhu.common.core.web.domain.BaseEntity;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 隐患流程信息对象 smz_ssp_auditinfo
|
||||
*
|
||||
|
@ -38,7 +40,26 @@ public class SmzSspAuditinfo extends BaseEntity
|
|||
@Excel(name = "创建人")
|
||||
private String createUser;
|
||||
|
||||
public void setId(Long id)
|
||||
private String images;
|
||||
private List<SmzSspFileinfo> files;
|
||||
|
||||
public List<SmzSspFileinfo> getFiles() {
|
||||
return files;
|
||||
}
|
||||
|
||||
public void setFiles(List<SmzSspFileinfo> files) {
|
||||
this.files = files;
|
||||
}
|
||||
|
||||
public String getImages() {
|
||||
return images;
|
||||
}
|
||||
|
||||
public void setImages(String images) {
|
||||
this.images = images;
|
||||
}
|
||||
|
||||
public void setId(Long id)
|
||||
{
|
||||
this.id = id;
|
||||
}
|
||||
|
|
|
@ -12,6 +12,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<result property="isDel" column="isDel" />
|
||||
<result property="createUser" column="createUser" />
|
||||
<result property="createTime" column="createTime" />
|
||||
<collection property="files" ofType="com.yanzhu.manage.domain.SmzSspFileinfo">
|
||||
<id property="id" column="fileId"/>
|
||||
<result property="fileUrl" column="fileUrl"/>
|
||||
</collection>
|
||||
</resultMap>
|
||||
|
||||
<sql id="selectSmzSspAuditinfoVo">
|
||||
|
@ -19,7 +23,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
</sql>
|
||||
|
||||
<select id="selectSmzSspAuditinfoList" parameterType="SmzSspAuditinfo" resultMap="SmzSspAuditinfoResult">
|
||||
<include refid="selectSmzSspAuditinfoVo"/>
|
||||
select a.id, a.mainId, a.processState, a.opinion, a.isDel, a.createUser, a.createTime,b.id fileId,b.fileUrl
|
||||
from smz_ssp_auditinfo a
|
||||
left join smz_ssp_fileinfo b on a.id=b.auditId
|
||||
<where>
|
||||
<if test="mainId != null "> and mainId = #{mainId}</if>
|
||||
<if test="processState != null and processState != ''"> and processState = #{processState}</if>
|
||||
|
@ -28,6 +34,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<if test="createUser != null and createUser != ''"> and createUser = #{createUser}</if>
|
||||
<if test="createTime != null "> and createTime = #{createTime}</if>
|
||||
</where>
|
||||
order by createTime desc
|
||||
</select>
|
||||
|
||||
<select id="selectSmzSspAuditinfoById" parameterType="Long" resultMap="SmzSspAuditinfoResult">
|
||||
|
|
|
@ -257,7 +257,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
a.problemArea,
|
||||
a.workParts,
|
||||
a.changeInfo,
|
||||
CONCAT(a.lordSentUser ,'【',b.sub_dept_name,'】',b.user_phone) as lordSent,
|
||||
a.lordSent,
|
||||
CONCAT(a.lordSentUser ,'【',b.sub_dept_name,'】',b.user_phone) as lordSentUser,
|
||||
a.lordSentUser,
|
||||
a.copySend,
|
||||
a.copySendUser,
|
||||
|
@ -277,7 +278,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
a.updateUser,
|
||||
a.updateTime,
|
||||
a.danger_type,
|
||||
CONCAT(a.recheckSendUser ,'【',d.sub_dept_name,'】',d.user_phone) as recheckSend,
|
||||
a.recheckSend,
|
||||
CONCAT(a.recheckSendUser ,'【',d.sub_dept_name,'】',d.user_phone) as recheckSendUser,
|
||||
a.recheckSendUser,
|
||||
a.roleType,
|
||||
a.problemType
|
||||
|
|
|
@ -1,8 +1,18 @@
|
|||
package com.yanzhu.manage.service.impl;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
|
||||
import cn.hutool.core.util.NumberUtil;
|
||||
import com.yanzhu.common.core.utils.DateUtils;
|
||||
import com.yanzhu.common.core.utils.StringUtils;
|
||||
import com.yanzhu.common.security.utils.SecurityUtils;
|
||||
import com.yanzhu.manage.domain.SmzSspFileinfo;
|
||||
import com.yanzhu.manage.domain.SmzSspProblemmodify;
|
||||
import com.yanzhu.manage.mapper.SmzSspFileinfoMapper;
|
||||
import com.yanzhu.manage.mapper.SmzSspProblemmodifyMapper;
|
||||
import com.yanzhu.system.api.domain.SysUser;
|
||||
import com.yanzhu.system.api.model.LoginUser;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Service;
|
||||
import com.yanzhu.manage.mapper.SmzSspAuditinfoMapper;
|
||||
|
@ -21,6 +31,11 @@ public class SmzSspAuditinfoServiceImpl implements ISmzSspAuditinfoService
|
|||
@Autowired
|
||||
private SmzSspAuditinfoMapper smzSspAuditinfoMapper;
|
||||
|
||||
@Autowired
|
||||
private SmzSspFileinfoMapper fileinfoMapper;
|
||||
|
||||
@Autowired
|
||||
private SmzSspProblemmodifyMapper problemmodifyMapper;
|
||||
/**
|
||||
* 查询隐患流程信息
|
||||
*
|
||||
|
@ -54,8 +69,39 @@ public class SmzSspAuditinfoServiceImpl implements ISmzSspAuditinfoService
|
|||
@Override
|
||||
public int insertSmzSspAuditinfo(SmzSspAuditinfo smzSspAuditinfo)
|
||||
{
|
||||
LoginUser loginUser= SecurityUtils.getLoginUser();
|
||||
SysUser sysUser=loginUser.getSysUser();
|
||||
smzSspAuditinfo.setCreateTime(DateUtils.getNowDate());
|
||||
return smzSspAuditinfoMapper.insertSmzSspAuditinfo(smzSspAuditinfo);
|
||||
smzSspAuditinfo.setCreateUser(sysUser.getUserName());
|
||||
int result= smzSspAuditinfoMapper.insertSmzSspAuditinfo(smzSspAuditinfo);
|
||||
//上传图片
|
||||
String images=smzSspAuditinfo.getImages();
|
||||
if(StringUtils.isNotEmpty(images)){
|
||||
Arrays.stream(images.split(",")).forEach(img->{
|
||||
SmzSspFileinfo file=new SmzSspFileinfo();
|
||||
file.setFileType(0L);
|
||||
file.setAuditId(smzSspAuditinfo.getId());
|
||||
file.setFileUrl(img);
|
||||
file.setCreateUser(sysUser.getUserName());
|
||||
file.setCreateTime(DateUtils.getNowDate());
|
||||
fileinfoMapper.insertSmzSspFileinfo(file);
|
||||
});
|
||||
}
|
||||
//修改安全隐患的状态
|
||||
SmzSspProblemmodify problemmodify=new SmzSspProblemmodify();
|
||||
problemmodify.setId(smzSspAuditinfo.getMainId());
|
||||
//(0待审,1通过,2驳回)
|
||||
//(0待整改,1待复检,2复检驳回,3复检通过)
|
||||
if("0".equals(smzSspAuditinfo.getProcessState())){
|
||||
problemmodify.setCheckState(1L);
|
||||
}else if("1".equals(smzSspAuditinfo.getProcessState())){
|
||||
problemmodify.setCheckState(3L);
|
||||
}else{
|
||||
problemmodify.setCheckState(2L);
|
||||
}
|
||||
|
||||
problemmodifyMapper.updateSmzSspProblemmodify(problemmodify);
|
||||
return result;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -1,44 +1,44 @@
|
|||
import request from '@/utils/request'
|
||||
import request from "@/utils/request";
|
||||
|
||||
// 查询隐患流程信息列表
|
||||
export function listAuditinfo(query) {
|
||||
return request({
|
||||
url: '/trouble/auditinfo/list',
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
url: "/manage/auditinfo/list",
|
||||
method: "get",
|
||||
params: query,
|
||||
});
|
||||
}
|
||||
|
||||
// 查询隐患流程信息详细
|
||||
export function getAuditinfo(id) {
|
||||
return request({
|
||||
url: '/trouble/auditinfo/' + id,
|
||||
method: 'get'
|
||||
})
|
||||
url: "/manage/auditinfo/" + id,
|
||||
method: "get",
|
||||
});
|
||||
}
|
||||
|
||||
// 新增隐患流程信息
|
||||
export function addAuditinfo(data) {
|
||||
return request({
|
||||
url: '/trouble/auditinfo',
|
||||
method: 'post',
|
||||
data: data
|
||||
})
|
||||
url: "/manage/auditinfo",
|
||||
method: "post",
|
||||
data: data,
|
||||
});
|
||||
}
|
||||
|
||||
// 修改隐患流程信息
|
||||
export function updateAuditinfo(data) {
|
||||
return request({
|
||||
url: '/trouble/auditinfo',
|
||||
method: 'put',
|
||||
data: data
|
||||
})
|
||||
url: "/manage/auditinfo",
|
||||
method: "put",
|
||||
data: data,
|
||||
});
|
||||
}
|
||||
|
||||
// 删除隐患流程信息
|
||||
export function delAuditinfo(id) {
|
||||
return request({
|
||||
url: '/trouble/auditinfo/' + id,
|
||||
method: 'delete'
|
||||
})
|
||||
url: "/manage/auditinfo/" + id,
|
||||
method: "delete",
|
||||
});
|
||||
}
|
||||
|
|
|
@ -3,13 +3,50 @@
|
|||
:append-to-body="true" title="安全隐患详情" class="problemmodify-detail-drawer">
|
||||
<el-row v-if="data && data.row" style="padding:20px;">
|
||||
<el-col :span="10" class="detail-left">
|
||||
<el-steps style="max-width: 600px" :active="1" finish-status="success" simple>
|
||||
<el-steps style="max-width: 600px" :active="data.stepActive" finish-status="success" simple>
|
||||
<el-step title="待整改" />
|
||||
<el-step title="待复检" />
|
||||
<el-step title="复检驳回" />
|
||||
<el-step title="复检通过" />
|
||||
</el-steps>
|
||||
|
||||
<div v-for="(it, idx) in data.auditinfoList" :key="idx">
|
||||
<div class="step-header" :class="data.row.checkState >= 0 ? 'is-active' : ''">
|
||||
<el-icon>
|
||||
<SuccessFilled />
|
||||
</el-icon>
|
||||
{{ it.index }}.
|
||||
<span v-if="it.processState == 0">整改处理</span>
|
||||
<span v-if="it.processState == 1">复检通过</span>
|
||||
<span v-if="it.processState == 2">复检驳回</span>
|
||||
</div>
|
||||
<el-card>
|
||||
<table border class="step-table">
|
||||
<tr>
|
||||
<td width="40%"><el-icon>
|
||||
<User />
|
||||
</el-icon>
|
||||
<span v-if="it.processState == 0">整改说明</span>
|
||||
<span v-if="it.processState == 1">复检意见</span>
|
||||
<span v-if="it.processState == 2">驳回意见</span>
|
||||
|
||||
</td>
|
||||
<td>{{ it.opinion }}</td>
|
||||
</tr>
|
||||
<tr v-if="it.processState == 0">
|
||||
<td><el-icon>
|
||||
<Picture />
|
||||
</el-icon>整改图片</td>
|
||||
<td>
|
||||
<div class="step-img"><el-image :src="file.fileUrl"
|
||||
v-for="(file, index) in it.files" :key="index" :preview-teleported="true"
|
||||
:preview-src-list="[file.fileUrl]"></el-image></div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</el-card>
|
||||
</div>
|
||||
|
||||
<div class="step-header" :class="data.row.checkState >= 0 ? 'is-active' : ''">
|
||||
<el-icon>
|
||||
<SuccessFilled />
|
||||
|
@ -41,9 +78,11 @@
|
|||
</tr>
|
||||
</table>
|
||||
</el-card>
|
||||
|
||||
|
||||
</el-col>
|
||||
<el-col :span="14" class="detail-right">
|
||||
<el-form style="margin: 0px 20px;">
|
||||
<el-col :span="14" class="detail-right" :class="'is-' + data.mode">
|
||||
<el-form style="margin: 0px 20px;" :model="data.baseForm" ref="baseInfo">
|
||||
<el-form-item label="项目名称">
|
||||
{{ data.row.projectName }}
|
||||
</el-form-item>
|
||||
|
@ -63,80 +102,135 @@
|
|||
<el-form-item label="整改要求">
|
||||
{{ data.row.changeInfo }}
|
||||
</el-form-item>
|
||||
<template v-if="data.mode == 'edit'">
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="提交人">
|
||||
{{ data.row.createUser }}
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="提交时间">
|
||||
{{ data.row.createTime }}
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="提交人">
|
||||
{{ data.row.createUser }}
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="提交时间">
|
||||
{{ data.row.createTime }}
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="整改人">
|
||||
{{ data.row.lordSent }}
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="抄送人">
|
||||
{{ data.row.copySendUser }}
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="复检人">
|
||||
{{ data.row.recheckSend }}
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="截至时间">
|
||||
{{ data.row.nickedTime }}
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="整改人">
|
||||
{{ data.row.lordSentUser }}
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="抄送人">
|
||||
{{ data.row.copySendUser }}
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="复检人">
|
||||
{{ data.row.recheckSendUser }}
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="截至时间">
|
||||
{{ data.row.nickedTime }}
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</template>
|
||||
<template v-else>
|
||||
<el-form-item label="提交人">
|
||||
{{ data.row.createUser }}
|
||||
</el-form-item>
|
||||
<el-form-item label="提交时间">
|
||||
{{ data.row.createTime }}
|
||||
</el-form-item>
|
||||
<el-form-item label="整改人">
|
||||
{{ data.row.lordSentUser }}
|
||||
</el-form-item>
|
||||
<el-form-item label="抄送人">
|
||||
{{ data.row.copySendUser }}
|
||||
</el-form-item>
|
||||
<el-form-item label="复检人">
|
||||
{{ data.row.recheckSendUser }}
|
||||
</el-form-item>
|
||||
<el-form-item label="截至时间">
|
||||
{{ data.row.nickedTime }}
|
||||
</el-form-item>
|
||||
<el-form-item label="流程状态">
|
||||
<dict-tag :options="data.checkStates" :value="data.row.checkState" />
|
||||
</el-form-item>
|
||||
</template>
|
||||
</el-form>
|
||||
<div class="step-2">
|
||||
<div class="step-header">
|
||||
<svg-icon icon-class="twrap" /> 整改情况
|
||||
<template v-if="data.mode == 'edit'">
|
||||
<div class="step-2"
|
||||
v-if="data.hasStep2Role && (data.row.checkState == 0 || data.row.checkState == 2)">
|
||||
<div class="step-header">
|
||||
<svg-icon icon-class="twrap" /> 整改情况
|
||||
</div>
|
||||
<el-form ref="formStep2Ref" :model="step2Form" :rules="step2Rules">
|
||||
<el-form-item label="整改说明" prop="opinion">
|
||||
<el-input v-model="step2Form.opinion" style="width: 100%" maxlength="200" :rows="3"
|
||||
type="textarea" placeholder="请输入整改说明(最多255字)" />
|
||||
</el-form-item>
|
||||
<el-form-item label="整改图片" prop="images" style="margin-top:15px">
|
||||
<image-upload v-model="step2Form.images" previewAll :limit="5"
|
||||
@change="doStep2ImageUpload" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div style="text-align: center;">
|
||||
<el-button @click="data.visible = false">取消</el-button>
|
||||
<el-button type="primary" @click="step2Submit" :disabled="data.loading">提交</el-button>
|
||||
</div>
|
||||
</div>
|
||||
<el-form ref="formStep2Ref" :mode="step2Form" :rules="step2Rules">
|
||||
<el-form-item label="整改说明" prop="opinion">
|
||||
<el-input v-model="step2Form.opinion" style="width: 100%" maxlength="200" :rows="3"
|
||||
type="textarea" placeholder="请输入整改说明(最多200字)" />
|
||||
</el-form-item>
|
||||
<el-form-item label="整改图片" prop="images" style="margin-top:15px">
|
||||
<image-upload v-model="step2Form.images" previewAll :limit="5"
|
||||
@change="doStep2ImageUpload" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div style="text-align: center;">
|
||||
<el-button type="primary" @click="step2Submit" :disabled="data.loading">提交</el-button>
|
||||
<div class="step-3" v-if="data.hasStep3Role && data.row.checkState == 1">
|
||||
<div class="step-header">
|
||||
<svg-icon icon-class="twrap" /> 复检
|
||||
</div>
|
||||
<el-form ref="formStep3Ref" :model="step3Form" :rules="step3Rules">
|
||||
<el-form-item label="复检意见" prop="opinion">
|
||||
<el-input v-model="step3Form.opinion" style="width: 100%" maxlength="200" :rows="3"
|
||||
type="textarea" placeholder="请输入复检意见(最多255字)" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div style="text-align: center;margin-top:20px;">
|
||||
<el-button @click="data.visible = false">取消</el-button>
|
||||
<el-button type="danger" @click="step3Reject" :disabled="data.loading">复检驳回</el-button>
|
||||
<el-button type="primary" @click="step3Submit" :disabled="data.loading">复检通过</el-button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-drawer>
|
||||
</template>
|
||||
|
||||
<script setup name="Problemmodify">
|
||||
import useUserStore from '@/store/modules/user'
|
||||
import { listAuditinfo, addAuditinfo } from '@/api/trouble/auditinfo'
|
||||
const { proxy } = getCurrentInstance();
|
||||
const { ssp_proble_type, ssp_proble_sub_type } = proxy.useDict('ssp_proble_type', 'ssp_proble_sub_type');
|
||||
const formStep2Ref = ref();
|
||||
const formStep3Ref = ref();
|
||||
const userStore = useUserStore()
|
||||
const emit = defineEmits(["success"]);
|
||||
let data = reactive({
|
||||
mode: '',
|
||||
loading: false,
|
||||
visible: false,
|
||||
row: null,
|
||||
step2: {
|
||||
auditinfoList: [],
|
||||
stepActive: 0,
|
||||
hasStep2Role: false,
|
||||
hasStep3Role: false,
|
||||
baseForm: {},
|
||||
step2Form: {
|
||||
opinion: '',
|
||||
images: [],
|
||||
},
|
||||
step2Form: {},
|
||||
step2Rules: {
|
||||
opinion: [
|
||||
{ required: true, message: "请输入审核意见", trigger: "blur" },
|
||||
|
@ -145,27 +239,130 @@ let data = reactive({
|
|||
images: [
|
||||
{ validator: validateStep2Images }
|
||||
]
|
||||
}
|
||||
},
|
||||
step3Form: {
|
||||
opinion: ''
|
||||
},
|
||||
step3Rules: {
|
||||
opinion: [
|
||||
{ required: true, message: "请输入审核意见", trigger: "blur" },
|
||||
{ min: 1, max: 200, message: "长度在 1 到 255 个字符", trigger: "blur" }
|
||||
]
|
||||
},
|
||||
checkStates: [{ value: "0", label: '待整改' }, { value: "1", label: '待复检' },
|
||||
{ value: "2", label: '复检驳回' },
|
||||
{ value: "3", label: '复检通过' }]
|
||||
});
|
||||
const { step2Form, step2Rules } = toRefs(data);
|
||||
const { step2Form, step2Rules, step3Form, step3Rules } = toRefs(data);
|
||||
function validateStep2Images(rule, value, callback) {
|
||||
if (value.length == 0) {
|
||||
if (step2Form.value.images.length == 0) {
|
||||
callback(new Error("请上传图片!"))
|
||||
} else {
|
||||
callback()
|
||||
}
|
||||
}
|
||||
function showDrawer(row) {
|
||||
function showDrawer(row, mode) {
|
||||
data.mode = mode;
|
||||
data.row = row;
|
||||
step2Form.value.images = [];
|
||||
step2Form.value.opinion = "";
|
||||
step3Form.value.opinion = "";
|
||||
data.hasStep2Role = row.lordSent == userStore.uid;
|
||||
data.hasStep3Role = row.recheckSend == userStore.uid;
|
||||
data.stepActive = row.checkState + 1;
|
||||
data.visible = true;
|
||||
getListAuditinfo();
|
||||
}
|
||||
function getListAuditinfo() {
|
||||
listAuditinfo({
|
||||
page: 1,
|
||||
limit: 100,
|
||||
mainId: data.row.id
|
||||
}).then(res => {
|
||||
let tmps = (res.rows || []).map(it => {
|
||||
it.index = "";
|
||||
return it;
|
||||
});
|
||||
for (let i = 0; i < tmps.length; i++) {
|
||||
let idx = tmps.length - i + 1;
|
||||
tmps[i].index = idx < 10 ? '0' + idx : idx;
|
||||
}
|
||||
data.auditinfoList = tmps;
|
||||
})
|
||||
|
||||
}
|
||||
function step3Reject() {
|
||||
data.loading = true;
|
||||
formStep3Ref.value.validate(v => {
|
||||
debugger
|
||||
data.loading = false;
|
||||
if (!v) {
|
||||
return;
|
||||
}
|
||||
proxy.$confirm("确认驳回此整改?", "提示", {
|
||||
confirmButtonText: "确 认",
|
||||
cancelButtonText: "取 消"
|
||||
}).then(() => {
|
||||
let postData = {
|
||||
mainId: data.row.id,
|
||||
opinion: step3Form.value.opinion,
|
||||
processState: 2,
|
||||
};
|
||||
addAuditinfo(postData).then(d => {
|
||||
if (d.code == 200) {
|
||||
proxy.$modal.msgSuccess("提交成功!");
|
||||
data.visible = false;
|
||||
emit("success");
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
}
|
||||
function step3Submit() {
|
||||
data.loading = true;
|
||||
formStep3Ref.value.validate(v => {
|
||||
data.loading = false;
|
||||
if (!v) {
|
||||
return;
|
||||
}
|
||||
proxy.$confirm("确认复检通过此整改?", "提示", {
|
||||
confirmButtonText: "确 认",
|
||||
cancelButtonText: "取 消"
|
||||
}).then(() => {
|
||||
let postData = {
|
||||
mainId: data.row.id,
|
||||
opinion: step3Form.value.opinion,
|
||||
processState: 1,
|
||||
};
|
||||
addAuditinfo(postData).then(d => {
|
||||
if (d.code == 200) {
|
||||
proxy.$modal.msgSuccess("提交成功!");
|
||||
data.visible = false;
|
||||
emit("success");
|
||||
}
|
||||
});
|
||||
});
|
||||
});
|
||||
|
||||
}
|
||||
function step2Submit() {
|
||||
data.loading = true;
|
||||
formStep2Ref.value.validate(v => {
|
||||
data.loading = false;
|
||||
if (v) {
|
||||
|
||||
let postData = {
|
||||
mainId: data.row.id,
|
||||
opinion: step2Form.value.opinion,
|
||||
processState: 0,
|
||||
images: step2Form.value.images,
|
||||
};
|
||||
addAuditinfo(postData).then(d => {
|
||||
if (d.code == 200) {
|
||||
proxy.$modal.msgSuccess("提交成功!");
|
||||
data.visible = false;
|
||||
emit("success");
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
@ -227,10 +424,25 @@ defineExpose({
|
|||
top: 2px;
|
||||
}
|
||||
}
|
||||
|
||||
.step-img {
|
||||
.el-image {
|
||||
width: 95px;
|
||||
height: 80px;
|
||||
margin-left: 3px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.detail-right {
|
||||
padding-left: 12px;
|
||||
|
||||
&.is-edit {
|
||||
.el-form-item--default {
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
}
|
||||
|
||||
.el-upload-list__item,
|
||||
.el-upload--picture-card {
|
||||
|
@ -238,9 +450,6 @@ defineExpose({
|
|||
height: 80px !important;
|
||||
}
|
||||
|
||||
.el-form-item--default {
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
.step-header {
|
||||
color: var(--el-color-primary);
|
||||
|
|
|
@ -59,8 +59,8 @@
|
|||
<el-table-column label="施工部位" align="center" prop="workParts" />
|
||||
<el-table-column label="整改要求" align="center" prop="changeInfo" />
|
||||
<el-table-column label="整改截至时间" align="center" prop="nickedTime" width="120" />
|
||||
<el-table-column label="整改人" align="center" prop="lordSent" width="200" />
|
||||
<el-table-column label="复检人" align="center" prop="recheckSend" width="200" />
|
||||
<el-table-column label="整改人" align="center" prop="lordSentUser" width="200" />
|
||||
<el-table-column label="复检人" align="center" prop="recheckSendUser" width="200" />
|
||||
<el-table-column label="抄送人" align="center" prop="copySendUser" width="200" />
|
||||
<el-table-column label="流程状态" align="center" prop="checkState">
|
||||
<template #default="scope">
|
||||
|
@ -88,25 +88,25 @@
|
|||
|
||||
<pagination v-show="total > 0" :total="total" v-model:page="queryParams.pageNum"
|
||||
v-model:limit="queryParams.pageSize" @pagination="getList" />
|
||||
<detailDrawer ref="detailDrawerRef"></detailDrawer>
|
||||
<detailDrawer ref="detailDrawerRef" @success="handleQuery"></detailDrawer>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script setup name="Problemmodify">
|
||||
import detailDrawer from "./detailDrawer.vue";
|
||||
import useUserStore from '@/store/modules/user'
|
||||
import { Check, Document, Delete } from '@element-plus/icons-vue'
|
||||
import { listProblemmodify, getProblemmodify, delProblemmodify, addProblemmodify, updateProblemmodify, getListCount } from "@/api/trouble/problemmodify";
|
||||
const { proxy } = getCurrentInstance();
|
||||
const { ssp_proble_type, ssp_proble_sub_type } = proxy.useDict('ssp_proble_type', 'ssp_proble_sub_type');
|
||||
const problemmodifyList = ref([]);
|
||||
const open = ref(false);
|
||||
const userStore = useUserStore()
|
||||
const loading = ref(true);
|
||||
const showSearch = ref(true);
|
||||
const ids = ref([]);
|
||||
const single = ref(true);
|
||||
const multiple = ref(true);
|
||||
const total = ref(0);
|
||||
const title = ref("");
|
||||
const detailDrawerRef = ref();
|
||||
const data = reactive({
|
||||
form: {},
|
||||
|
@ -174,16 +174,22 @@ function tabClick() {
|
|||
}
|
||||
|
||||
function handleModify(row) {
|
||||
|
||||
detailDrawerRef.value.showDrawer(row, 'edit');
|
||||
}
|
||||
function handleDetail(row) {
|
||||
detailDrawerRef.value.showDrawer(row);
|
||||
detailDrawerRef.value.showDrawer(row, 'show');
|
||||
}
|
||||
function getIsVdel(row) {
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
function getIsModify(row) {
|
||||
return true;
|
||||
if (row.checkState == 0 || row.checkState == 2) {
|
||||
return row.lordSent == userStore.uid;
|
||||
}
|
||||
if (row.checkState == 1) {
|
||||
return row.recheckSend == userStore.uid;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
/** 重置按钮操作 */
|
||||
function resetQuery() {
|
||||
|
|
Loading…
Reference in New Issue