|
@ -1,149 +1,127 @@ |
|
|
<template> |
|
|
<template> |
|
|
<div class="m-record" style="padding: 0 20px"> |
|
|
<div class="m-record" |
|
|
|
|
|
style="padding: 0 20px"> |
|
|
<h3>巡查记录</h3> |
|
|
<h3>巡查记录</h3> |
|
|
<div class="mt10" v-if="formType == 'edit'"> |
|
|
<div class="mt10" |
|
|
<el-button |
|
|
v-if="formType == 'edit'"> |
|
|
size="small" |
|
|
<el-button size="small" |
|
|
class="diy-button--add" |
|
|
:class="[source==='manage'?'diy-button--add':'diy-button--export']" |
|
|
:disabled="btnDisabled || disabled" |
|
|
:disabled="btnDisabled || disabled" |
|
|
@click="handleAdd" |
|
|
@click="handleAdd">新增</el-button> |
|
|
>新增</el-button |
|
|
|
|
|
> |
|
|
|
|
|
</div> |
|
|
</div> |
|
|
<el-table |
|
|
<el-table :data="tableData" |
|
|
:data="tableData" |
|
|
|
|
|
row-key="id" |
|
|
row-key="id" |
|
|
border |
|
|
border |
|
|
style="width: 100%" |
|
|
style="width: 100%" |
|
|
:header-cell-style="getRowClass" |
|
|
:header-cell-style="getRowClass"> |
|
|
> |
|
|
<el-table-column label="序号" |
|
|
<el-table-column label="序号" type="index" align="center" width="50"> |
|
|
type="index" |
|
|
|
|
|
align="center" |
|
|
|
|
|
width="50"> |
|
|
</el-table-column> |
|
|
</el-table-column> |
|
|
|
|
|
|
|
|
<el-table-column |
|
|
<el-table-column prop="patrolTime" |
|
|
prop="patrolTime" |
|
|
|
|
|
label="巡查时间" |
|
|
label="巡查时间" |
|
|
align="center" |
|
|
align="center" |
|
|
width="200px" |
|
|
width="200px"> |
|
|
> |
|
|
|
|
|
<template slot-scope="scope"> |
|
|
<template slot-scope="scope"> |
|
|
<el-date-picker |
|
|
<el-date-picker v-if="scope.row.isEdit" |
|
|
v-if="scope.row.isEdit" |
|
|
|
|
|
v-model="scope.row.patrolTime" |
|
|
v-model="scope.row.patrolTime" |
|
|
type="date" |
|
|
type="date" |
|
|
class="input-width" |
|
|
class="input-width" |
|
|
value-format="yyyy-MM-dd" |
|
|
value-format="yyyy-MM-dd" |
|
|
placeholder="选择日期" |
|
|
placeholder="选择日期"> |
|
|
> |
|
|
|
|
|
</el-date-picker> |
|
|
</el-date-picker> |
|
|
<div v-else class="div-content">{{ scope.row.patrolTime }}</div> |
|
|
<div v-else |
|
|
|
|
|
class="div-content">{{ scope.row.patrolTime }}</div> |
|
|
</template> |
|
|
</template> |
|
|
</el-table-column> |
|
|
</el-table-column> |
|
|
|
|
|
|
|
|
<el-table-column |
|
|
<el-table-column prop="staffId" |
|
|
prop="staffId" |
|
|
|
|
|
label="巡查人员" |
|
|
label="巡查人员" |
|
|
align="center" |
|
|
align="center" |
|
|
width="200px" |
|
|
width="200px"> |
|
|
> |
|
|
|
|
|
<template slot-scope="scope"> |
|
|
<template slot-scope="scope"> |
|
|
<el-select |
|
|
<el-select v-if="scope.row.isEdit" |
|
|
v-if="scope.row.isEdit" |
|
|
|
|
|
v-model="scope.row.staffId" |
|
|
v-model="scope.row.staffId" |
|
|
placeholder="请选择" |
|
|
placeholder="请选择" |
|
|
class="input-width" |
|
|
class="input-width" |
|
|
@change="handleChangeStaff(scope.row)" |
|
|
@change="handleChangeStaff(scope.row)" |
|
|
clearable |
|
|
clearable> |
|
|
> |
|
|
<el-option v-for="subItem in optionStaff" |
|
|
<el-option |
|
|
|
|
|
v-for="subItem in optionStaff" |
|
|
|
|
|
:key="subItem.value" |
|
|
:key="subItem.value" |
|
|
:label="subItem.label" |
|
|
:label="subItem.label" |
|
|
:value="subItem.value" |
|
|
:value="subItem.value"> |
|
|
> |
|
|
|
|
|
</el-option> |
|
|
</el-option> |
|
|
</el-select> |
|
|
</el-select> |
|
|
<div v-else class="div-content">{{ scope.row.staffName }}</div> |
|
|
<div v-else |
|
|
|
|
|
class="div-content">{{ scope.row.staffName }}</div> |
|
|
</template> |
|
|
</template> |
|
|
</el-table-column> |
|
|
</el-table-column> |
|
|
|
|
|
|
|
|
<el-table-column |
|
|
<el-table-column prop="mobile" |
|
|
prop="mobile" |
|
|
|
|
|
label="联系电话" |
|
|
label="联系电话" |
|
|
align="center" |
|
|
align="center" |
|
|
width="200px" |
|
|
width="200px"> |
|
|
> |
|
|
|
|
|
<template slot-scope="scope"> |
|
|
<template slot-scope="scope"> |
|
|
<el-input |
|
|
<el-input v-if="scope.row.isEdit" |
|
|
v-if="scope.row.isEdit" |
|
|
|
|
|
type="number" |
|
|
type="number" |
|
|
v-model="scope.row.mobile" |
|
|
v-model="scope.row.mobile" |
|
|
placeholder="请输入" |
|
|
placeholder="请输入" |
|
|
class="input-width" |
|
|
class="input-width" |
|
|
clearable |
|
|
clearable |
|
|
disabled |
|
|
disabled></el-input> |
|
|
></el-input> |
|
|
<div v-else |
|
|
<div v-else class="div-content">{{ scope.row.mobile }}</div> |
|
|
class="div-content">{{ scope.row.mobile }}</div> |
|
|
</template> |
|
|
</template> |
|
|
</el-table-column> |
|
|
</el-table-column> |
|
|
|
|
|
|
|
|
<el-table-column |
|
|
<el-table-column prop="result" |
|
|
prop="result" |
|
|
|
|
|
label="巡查结果" |
|
|
label="巡查结果" |
|
|
align="center" |
|
|
align="center" |
|
|
width="200px" |
|
|
width="200px"> |
|
|
> |
|
|
|
|
|
<template slot-scope="scope"> |
|
|
<template slot-scope="scope"> |
|
|
<el-select |
|
|
<el-select v-if="scope.row.isEdit" |
|
|
v-if="scope.row.isEdit" |
|
|
|
|
|
v-model="scope.row.result" |
|
|
v-model="scope.row.result" |
|
|
placeholder="请选择" |
|
|
placeholder="请选择" |
|
|
class="input-width" |
|
|
class="input-width" |
|
|
size="small" |
|
|
size="small" |
|
|
clearable |
|
|
clearable> |
|
|
> |
|
|
<el-option v-for="subItem in optionResult" |
|
|
<el-option |
|
|
|
|
|
v-for="subItem in optionResult" |
|
|
|
|
|
:key="subItem.value" |
|
|
:key="subItem.value" |
|
|
:label="subItem.label" |
|
|
:label="subItem.label" |
|
|
:value="subItem.value" |
|
|
:value="subItem.value"> |
|
|
> |
|
|
|
|
|
</el-option> |
|
|
</el-option> |
|
|
</el-select> |
|
|
</el-select> |
|
|
<div v-else class="div-content">{{ scope.row.resultName }}</div> |
|
|
<div v-else |
|
|
|
|
|
class="div-content">{{ scope.row.resultName }}</div> |
|
|
</template> |
|
|
</template> |
|
|
</el-table-column> |
|
|
</el-table-column> |
|
|
|
|
|
|
|
|
<el-table-column |
|
|
<el-table-column prop="detailed" |
|
|
prop="detailed" |
|
|
|
|
|
label="隐患明细" |
|
|
label="隐患明细" |
|
|
align="center" |
|
|
align="center" |
|
|
width="200px" |
|
|
width="200px"> |
|
|
> |
|
|
|
|
|
<template slot-scope="scope"> |
|
|
<template slot-scope="scope"> |
|
|
<el-input |
|
|
<el-input v-if="scope.row.isEdit" |
|
|
v-if="scope.row.isEdit" |
|
|
|
|
|
type="text" |
|
|
type="text" |
|
|
v-model="scope.row.detailed" |
|
|
v-model="scope.row.detailed" |
|
|
placeholder="请输入" |
|
|
placeholder="请输入" |
|
|
class="input-width" |
|
|
class="input-width" |
|
|
maxlength="500" |
|
|
maxlength="500" |
|
|
clearable |
|
|
clearable></el-input> |
|
|
></el-input> |
|
|
<div v-else |
|
|
<div v-else class="div-content">{{ scope.row.detailed }}</div> |
|
|
class="div-content">{{ scope.row.detailed }}</div> |
|
|
</template> |
|
|
</template> |
|
|
</el-table-column> |
|
|
</el-table-column> |
|
|
|
|
|
|
|
|
<el-table-column |
|
|
<el-table-column prop="imgList" |
|
|
prop="imgList" |
|
|
|
|
|
label="图片列表" |
|
|
label="图片列表" |
|
|
align="center" |
|
|
align="center" |
|
|
width="150px" |
|
|
width="150px"> |
|
|
> |
|
|
|
|
|
<template slot-scope="scope"> |
|
|
<template slot-scope="scope"> |
|
|
<div v-if="scope.row.isEdit"> |
|
|
<div v-if="scope.row.isEdit"> |
|
|
<el-upload |
|
|
<el-upload class="avatar-uploader" |
|
|
class="avatar-uploader" |
|
|
|
|
|
:action="uploadUrl" |
|
|
:action="uploadUrl" |
|
|
:data="{ customerId: customerId }" |
|
|
:data="{ customerId: customerId }" |
|
|
:show-file-list="true" |
|
|
:show-file-list="true" |
|
@ -152,92 +130,71 @@ |
|
|
:on-success="(res) => handleImgSuccess(res, scope.row)" |
|
|
:on-success="(res) => handleImgSuccess(res, scope.row)" |
|
|
:on-remove="(res) => handleImgRemove(res, scope.row)" |
|
|
:on-remove="(res) => handleImgRemove(res, scope.row)" |
|
|
list-type="picture" |
|
|
list-type="picture" |
|
|
:before-upload="beforeImgUpload" |
|
|
:before-upload="beforeImgUpload"> |
|
|
> |
|
|
|
|
|
<i class="el-icon-plus avatar-uploader-icon"></i> 最多三张图片 |
|
|
<i class="el-icon-plus avatar-uploader-icon"></i> 最多三张图片 |
|
|
</el-upload> |
|
|
</el-upload> |
|
|
</div> |
|
|
</div> |
|
|
|
|
|
|
|
|
<div v-else class="div-content"> |
|
|
<div v-else |
|
|
<el-image |
|
|
class="div-content"> |
|
|
v-if="scope.row.imgList.length > 0" |
|
|
<el-image v-if="scope.row.imgList.length > 0" |
|
|
style="width: 100px; height: 50px" |
|
|
style="width: 100px; height: 50px" |
|
|
:src="scope.row.imgList[0]" |
|
|
:src="scope.row.imgList[0]" |
|
|
fit="cover" |
|
|
fit="cover" |
|
|
:preview-src-list="scope.row.imgList" |
|
|
:preview-src-list="scope.row.imgList"></el-image> |
|
|
></el-image> |
|
|
|
|
|
</div> |
|
|
</div> |
|
|
</template> |
|
|
</template> |
|
|
</el-table-column> |
|
|
</el-table-column> |
|
|
|
|
|
|
|
|
<el-table-column |
|
|
<el-table-column prop="reviewTime" |
|
|
prop="reviewTime" |
|
|
|
|
|
label="拟复查时间" |
|
|
label="拟复查时间" |
|
|
align="center" |
|
|
align="center" |
|
|
width="200px" |
|
|
width="200px"> |
|
|
> |
|
|
|
|
|
<template slot-scope="scope"> |
|
|
<template slot-scope="scope"> |
|
|
<el-date-picker |
|
|
<el-date-picker v-if="scope.row.isEdit" |
|
|
v-if="scope.row.isEdit" |
|
|
|
|
|
v-model="scope.row.reviewTime" |
|
|
v-model="scope.row.reviewTime" |
|
|
type="date" |
|
|
type="date" |
|
|
class="input-width" |
|
|
class="input-width" |
|
|
value-format="yyyy-MM-dd" |
|
|
value-format="yyyy-MM-dd" |
|
|
placeholder="选择日期" |
|
|
placeholder="选择日期"> |
|
|
> |
|
|
|
|
|
</el-date-picker> |
|
|
</el-date-picker> |
|
|
<div v-else class="div-content">{{ scope.row.patrolTime }}</div> |
|
|
<div v-else |
|
|
|
|
|
class="div-content">{{ scope.row.patrolTime }}</div> |
|
|
</template> |
|
|
</template> |
|
|
</el-table-column> |
|
|
</el-table-column> |
|
|
|
|
|
|
|
|
<el-table-column |
|
|
<el-table-column v-if="!disabled" |
|
|
v-if="!disabled" |
|
|
|
|
|
fixed="right" |
|
|
fixed="right" |
|
|
label="操作" |
|
|
label="操作" |
|
|
align="center" |
|
|
align="center" |
|
|
width="120" |
|
|
width="120"> |
|
|
> |
|
|
|
|
|
<template slot-scope="scope"> |
|
|
<template slot-scope="scope"> |
|
|
<template v-if="scope.row.isEdit"> |
|
|
<template v-if="scope.row.isEdit"> |
|
|
<el-button |
|
|
<el-button @click="handleEdit(scope.row)" |
|
|
@click="handleEdit(scope.row)" |
|
|
|
|
|
type="text" |
|
|
type="text" |
|
|
size="small" |
|
|
size="small" |
|
|
class="btn-color-edit" |
|
|
class="btn-color-edit">保存</el-button> |
|
|
>保存</el-button |
|
|
<el-button @click="handleChange(scope.row, 'cancle')" |
|
|
> |
|
|
|
|
|
<el-button |
|
|
|
|
|
@click="handleChange(scope.row, 'cancle')" |
|
|
|
|
|
type="text" |
|
|
type="text" |
|
|
size="small" |
|
|
size="small" |
|
|
class="btn-color-edit" |
|
|
class="btn-color-edit">取消</el-button> |
|
|
>取消</el-button |
|
|
|
|
|
> |
|
|
|
|
|
</template> |
|
|
</template> |
|
|
<template v-else> |
|
|
<template v-else> |
|
|
<el-button |
|
|
<el-button v-if="formType == 'edit'" |
|
|
v-if="formType == 'edit'" |
|
|
|
|
|
@click="handleChange(scope.row, 'edit')" |
|
|
@click="handleChange(scope.row, 'edit')" |
|
|
type="text" |
|
|
type="text" |
|
|
size="small" |
|
|
size="small" |
|
|
:disabled="disabled" |
|
|
:disabled="disabled" |
|
|
class="btn-color-edit" |
|
|
class="btn-color-edit">修改</el-button> |
|
|
>修改</el-button |
|
|
<el-popconfirm v-if="formType == 'edit'" |
|
|
> |
|
|
|
|
|
<el-popconfirm |
|
|
|
|
|
v-if="formType == 'edit'" |
|
|
|
|
|
title="删除之后无法恢复,确认删除?" |
|
|
title="删除之后无法恢复,确认删除?" |
|
|
@onConfirm="del(scope.row)" |
|
|
@onConfirm="del(scope.row)" |
|
|
@confirm="del(scope.row)" |
|
|
@confirm="del(scope.row)"> |
|
|
> |
|
|
<el-button slot="reference" |
|
|
<el-button |
|
|
|
|
|
slot="reference" |
|
|
|
|
|
type="text" |
|
|
type="text" |
|
|
size="small" |
|
|
size="small" |
|
|
class="btn-color-del" |
|
|
class="btn-color-del" |
|
|
style="margin-left: 10px" |
|
|
style="margin-left: 10px">删除</el-button> |
|
|
>删除</el-button |
|
|
|
|
|
> |
|
|
|
|
|
</el-popconfirm> |
|
|
</el-popconfirm> |
|
|
</template> |
|
|
</template> |
|
|
</template> |
|
|
</template> |
|
@ -267,6 +224,10 @@ export default { |
|
|
type: String, |
|
|
type: String, |
|
|
default: "", |
|
|
default: "", |
|
|
}, |
|
|
}, |
|
|
|
|
|
source: {//展示来源:manage 管理平台 visiual 可视化平台 |
|
|
|
|
|
type: String, |
|
|
|
|
|
default: 'manage' |
|
|
|
|
|
} |
|
|
}, |
|
|
}, |
|
|
data () { |
|
|
data () { |
|
|
return { |
|
|
return { |
|
|