安全隐患详情开发
parent
2536e68a0d
commit
be9e392ec7
|
@ -272,7 +272,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
a.checkUserPhone,
|
||||
a.smark_url,
|
||||
a.isDel,
|
||||
c.nick_name as createUser,
|
||||
CONCAT(c.nick_name,'【',c.phonenumber,'】') as createUser,
|
||||
a.createTime,
|
||||
a.updateUser,
|
||||
a.updateTime,
|
||||
|
|
|
@ -7,6 +7,8 @@ import java.util.concurrent.atomic.AtomicInteger;
|
|||
import com.yanzhu.common.core.context.SecurityContextHolder;
|
||||
import com.yanzhu.common.core.utils.DateUtils;
|
||||
import com.yanzhu.common.security.utils.SecurityUtils;
|
||||
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.SmzSspProblemmodifyMapper;
|
||||
|
@ -104,12 +106,15 @@ public class SmzSspProblemmodifyServiceImpl implements ISmzSspProblemmodifyServi
|
|||
@Override
|
||||
public int insertSmzSspProblemmodifies(List<SmzSspProblemmodify> list) {
|
||||
AtomicInteger count = new AtomicInteger();
|
||||
LoginUser loginUser=SecurityUtils.getLoginUser();
|
||||
SysUser sysUser=loginUser.getSysUser();
|
||||
list.stream().forEach(it->{
|
||||
it.setCheckState(0L);
|
||||
it.setIsDel(0L);
|
||||
it.setCreateTime(DateUtils.getNowDate());
|
||||
it.setCreateBy(""+SecurityUtils.getLoginUser().getSysUser().getUserId());
|
||||
it.setCreateUser(""+SecurityUtils.getLoginUser().getSysUser().getUserId());
|
||||
it.setProjectName(sysUser.getActiveProjectName());
|
||||
it.setCreateBy(""+sysUser.getUserId());
|
||||
it.setCreateUser(""+sysUser.getUserId());
|
||||
count.addAndGet(smzSspProblemmodifyMapper.insertSmzSspProblemmodify(it));
|
||||
});
|
||||
return count.get();
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
<svg class="icon" style="width: 1em;height: 1em;vertical-align: middle;fill: currentColor;overflow: hidden;" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="4939"><path d="M60.8 1024c-33.6 0-60.8-27.2-60.8-60.8v-243.2c0-33.6 27.2-60.8 60.8-60.8s60.8 27.2 60.8 60.8v243.2c0 33.6-27.2 60.8-60.8 60.8zM361.6 1024c-33.6 0-60.8-27.2-60.8-60.8v-473.6c0-33.6 27.2-60.8 60.8-60.8s60.8 27.2 60.8 60.8v473.6c0 33.6-27.2 60.8-60.8 60.8zM662.4 1024c-33.6 0-60.8-27.2-60.8-60.8v-678.4c0-33.6 27.2-60.8 60.8-60.8s60.8 27.2 60.8 60.8v678.4c0 33.6-27.2 60.8-60.8 60.8zM963.2 1024c-33.6 0-60.8-27.2-60.8-60.8V60.8c0-33.6 27.2-60.8 60.8-60.8s60.8 27.2 60.8 60.8v902.4c0 33.6-27.2 60.8-60.8 60.8z" p-id="4940"></path></svg>
|
After Width: | Height: | Size: 735 B |
|
@ -150,8 +150,8 @@
|
|||
<el-form-item label="用户类型" prop="userType">
|
||||
<el-select v-model="form.userType" placeholder="请选择用户类型" style="width: 100%"
|
||||
@change="doRoleChange">
|
||||
<el-option v-for="dict in sys_user_type" v-show="dict.value != '99'" :key="dict.value" :label="dict.label"
|
||||
:value="dict.value" />
|
||||
<el-option v-for="dict in sys_user_type" v-show="dict.value != '99'" :key="dict.value"
|
||||
:label="dict.label" :value="dict.value" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
@ -184,7 +184,7 @@
|
|||
<el-form-item label="用户状态">
|
||||
<el-radio-group v-model="form.status">
|
||||
<el-radio v-for="dict in sys_normal_disable" :key="dict.value" :label="dict.value">{{ dict.label
|
||||
}}</el-radio>
|
||||
}}</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
@ -797,7 +797,6 @@ function submitForm() {
|
|||
data.loading = true;
|
||||
proxy.$refs["userRef"].validate(valid => {
|
||||
if (valid) {
|
||||
debugger
|
||||
let obj = form.value.userInfos || {};
|
||||
obj.cardImgPos = form.value.cardImgPos;
|
||||
obj.cardImgInv = form.value.cardImgInv;
|
||||
|
|
|
@ -1,34 +1,178 @@
|
|||
<template>
|
||||
<el-drawer v-model="data.visible" :close-on-click-modal="false" :close-on-press-escape="false" size="960px"
|
||||
<el-drawer v-model="data.visible" :close-on-click-modal="false" :close-on-press-escape="false" size="1000px"
|
||||
:append-to-body="true" title="安全隐患详情" class="problemmodify-detail-drawer">
|
||||
<el-row>
|
||||
<el-col :span="12" class="detail-left">
|
||||
<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-step title="待整改" />
|
||||
<el-step title="待复检" />
|
||||
<el-step title="复检驳回" />
|
||||
<el-step title="复检通过" />
|
||||
</el-steps>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
|
||||
<div class="step-header" :class="data.row.checkState >= 0 ? 'is-active' : ''">
|
||||
<el-icon>
|
||||
<SuccessFilled />
|
||||
</el-icon>
|
||||
01.待整改
|
||||
</div>
|
||||
<el-card>
|
||||
<table border class="step-table">
|
||||
<tr>
|
||||
<td width="40%"><el-icon>
|
||||
<User />
|
||||
</el-icon>办理用户</td>
|
||||
<td>{{ data.row.createUser }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><el-icon>
|
||||
<Calendar />
|
||||
</el-icon>办理时间</td>
|
||||
<td>{{ data.row.createTime }}</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><el-icon>
|
||||
<Picture />
|
||||
</el-icon>隐患图片</td>
|
||||
<td>
|
||||
<el-image :src="data.row.smarkUrlPic" style="height:80px;" :preview-teleported="true"
|
||||
:preview-src-list="data.row.smarkUrlPics"></el-image>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</el-card>
|
||||
</el-col>
|
||||
<el-col :span="14" class="detail-right">
|
||||
<el-form style="margin: 0px 20px;">
|
||||
<el-form-item label="项目名称">
|
||||
{{ data.row.projectName }}
|
||||
</el-form-item>
|
||||
<el-form-item label="隐患图片">
|
||||
<el-image :src="data.row.smarkUrlPic" style="height:80px;" :preview-teleported="true"
|
||||
:preview-src-list="data.row.smarkUrlPics"></el-image>
|
||||
</el-form-item>
|
||||
<el-form-item label="检查类型">
|
||||
<dict-tag :options="ssp_proble_type" :value="data.row.problemType" />
|
||||
</el-form-item>
|
||||
<el-form-item label="隐患类型">
|
||||
<dict-tag :options="ssp_proble_sub_type" :value="data.row.dangerType" />
|
||||
</el-form-item>
|
||||
<el-form-item label="施工部位">
|
||||
{{ data.row.workParts }}
|
||||
</el-form-item>
|
||||
<el-form-item label="整改要求">
|
||||
{{ data.row.changeInfo }}
|
||||
</el-form-item>
|
||||
|
||||
<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-form>
|
||||
<div class="step-2">
|
||||
<div class="step-header">
|
||||
<svg-icon icon-class="twrap" /> 整改情况
|
||||
</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>
|
||||
</div>
|
||||
</el-col>
|
||||
</el-row>
|
||||
</el-drawer>
|
||||
</template>
|
||||
|
||||
<script setup name="Problemmodify">
|
||||
|
||||
const { proxy } = getCurrentInstance();
|
||||
const { ssp_proble_type, ssp_proble_sub_type } = proxy.useDict('ssp_proble_type', 'ssp_proble_sub_type');
|
||||
const formStep2Ref = ref();
|
||||
let data = reactive({
|
||||
loading: false,
|
||||
visible: false,
|
||||
row: null
|
||||
row: null,
|
||||
step2: {
|
||||
opinion: '',
|
||||
images: [],
|
||||
},
|
||||
step2Form: {},
|
||||
step2Rules: {
|
||||
opinion: [
|
||||
{ required: true, message: "请输入审核意见", trigger: "blur" },
|
||||
{ min: 1, max: 200, message: "长度在 1 到 255 个字符", trigger: "blur" }
|
||||
],
|
||||
images: [
|
||||
{ validator: validateStep2Images }
|
||||
]
|
||||
}
|
||||
});
|
||||
|
||||
const { step2Form, step2Rules } = toRefs(data);
|
||||
function validateStep2Images(rule, value, callback) {
|
||||
if (value.length == 0) {
|
||||
callback(new Error("请上传图片!"))
|
||||
} else {
|
||||
callback()
|
||||
}
|
||||
}
|
||||
function showDrawer(row) {
|
||||
data.row = row;
|
||||
data.visible = true;
|
||||
}
|
||||
|
||||
function step2Submit() {
|
||||
data.loading = true;
|
||||
formStep2Ref.value.validate(v => {
|
||||
data.loading = false;
|
||||
if (v) {
|
||||
|
||||
}
|
||||
});
|
||||
}
|
||||
function doStep2ImageUpload() {
|
||||
formStep2Ref.value.validateField("images");
|
||||
|
||||
}
|
||||
defineExpose({
|
||||
showDrawer
|
||||
});
|
||||
|
@ -37,7 +181,7 @@ defineExpose({
|
|||
<style lang="scss">
|
||||
.problemmodify-detail-drawer {
|
||||
.el-drawer__header {
|
||||
margin-bottom: 20px;
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
.el-drawer__body {
|
||||
|
@ -52,6 +196,58 @@ defineExpose({
|
|||
max-width: unset;
|
||||
}
|
||||
}
|
||||
|
||||
.el-card__body {
|
||||
padding: 8px !important;
|
||||
}
|
||||
|
||||
.step-table {
|
||||
width: 100%;
|
||||
border-collapse: collapse;
|
||||
border-color: #dddddda6;
|
||||
|
||||
td {
|
||||
color: #888;
|
||||
font-size: 12px;
|
||||
padding: 4px 10px;
|
||||
background: #eeebeb;
|
||||
}
|
||||
}
|
||||
|
||||
.step-header {
|
||||
line-height: 40px;
|
||||
font-weight: bold;
|
||||
|
||||
&.is-active {
|
||||
color: var(--el-color-success);
|
||||
}
|
||||
|
||||
.el-icon {
|
||||
position: relative;
|
||||
top: 2px;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.detail-right {
|
||||
|
||||
.el-upload-list__item,
|
||||
.el-upload--picture-card {
|
||||
width: 80px !important;
|
||||
height: 80px !important;
|
||||
}
|
||||
|
||||
.el-form-item--default {
|
||||
margin-bottom: 0px;
|
||||
}
|
||||
|
||||
.step-header {
|
||||
color: var(--el-color-primary);
|
||||
font-weight: bold;
|
||||
line-height: 30px;
|
||||
border-bottom: dotted 1px var(--el-border-color-light);
|
||||
margin-block: 12px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue