Commit 6302b64b authored by jiaxu.yan's avatar jiaxu.yan

feat(init): 添加假数据,修改格式问题

parent d0f0ecf9
......@@ -66,13 +66,11 @@ module.exports = [
scene: [
{
text: 'TBOX-蜂窝以太网接口'
},
}
]
}
]
},
}
},
{
category: '车型检验',
......@@ -80,8 +78,10 @@ module.exports = [
request: '应对车端具备远程控制功能的系统进行完整性验证。',
resultYes: 'xxxxxxxxxxxxxxx',
resultNO: 'xxxxxxxxxxxxxxx',
way: { text: '测试人员根据车辆生产企业提供的车辆远程控制功能系统完整性校验功能的证明文件,检查车辆是否满足7.1.2.4的要求。', object: [] },
way: {
text: '测试人员根据车辆生产企业提供的车辆远程控制功能系统完整性校验功能的证明文件,检查车辆是否满足7.1.2.4的要求。',
object: []
}
}
]
}
......@@ -99,41 +99,223 @@ module.exports = [
response: config => {
let temp = []
temp = [{
label: '一级 1',
children: [{
label: '二级 1-1',
children: [{
label: '三级 1-1-1'
}]
}]
}, {
label: '一级 2',
children: [{
label: '二级 2-1',
children: [{
label: '三级 2-1-1'
}]
}, {
label: '二级 2-2',
children: [{
label: '三级 2-2-1'
}]
}]
}, {
label: '一级 3',
children: [{
label: '二级 3-1',
children: [{
label: '三级 3-1-1'
}]
}, {
label: '二级 3-2',
children: [{
label: '三级 3-2-1'
}]
}]
}]
temp = [
{
label:
'5.1 车辆制造商应具备车辆全生命周期的汽车信息安全管理体系。注:车辆全生命周期包括车辆的开发阶段、生产阶段及后生产阶段。',
children: [
{
label: '车辆制造商是否建立汽车信息安全管理制度。',
children: [
{
label:
'车辆制造商是否能够提供/展示汽车信息安全管理制度文件,制度文件应定义信息安全政策以及信息安全规则和流程,信息安全政策应致力于管理与车辆制造商活动相关的信息安全风险。'
// children: [{
// label: '--'
// }]
},
{
label:
'车辆制造商是否能够提供/展示汽车信息安全管理制度正式发布的证明材料。',
children: [
{
label: '1.管理制度发布会红头文件'
},
{
label: '2.管理制度正式发布会议纪要'
},
{
label: '3.专用系统正式发布流程或记录'
}
]
}
]
},
{
label:
'车辆制造商汽车信息安全管理制度是否明确汽车信息安全管理制度适用于车辆全生命周期,包括开发阶段、生产阶段及后生产阶段。',
children: [
{
label:
'车辆制造商汽车信息安全管理制度中明确覆盖了车辆全生命周期,包括开发阶段、生产阶段及后生产阶段,且能够提供每个阶段的流程文件。'
// children: [{
// label: '--'
// }]
}
]
},
{
label:
'车辆全生命周期每个阶段的流程文件能够包含相应阶段的信息安全活动及要求。',
children: [
{
label:
'开发阶段流程文件应包含概念设计、设计开发和测试验证阶段的信息安全活动及要求。'
// children: [{
// label: '--'
// }]
},
{
label:
'生产阶段流程文件应包含生产控制计划制定,生产控制计划应包含生产阶段的信息安全需求,确保生产环节的信息安全需求能够顺利落地实施,且不引入新的信息安全漏洞。'
// children: [{
// label: '--'
// }]
},
{
label:
'后生产阶段流程文件应考虑运维阶段、终止支持、退役阶段的信息安全需求,运维阶段包含网络安全事件响应和软件升级。'
// children: [{
// label: '--'
// }]
}
]
}
]
},
{
label:
'5.2 汽车信息安全管理体系应包括以下内容。建立企业内部管理汽车信息安全的过程。',
children: [
{
label:
'车辆制造商汽车信息安全管理制度是否建立并明确汽车信息安全管理制度的组织架构及权责。',
children: [
{
label:
'车辆制造商汽车信息安全管理制度的角色应覆盖车辆/车辆产品在生命周期中的信息安全活动。',
children: [
{
label:
'1.汽车信息安全管理制度或其配套的流程文件中包含流程图,定义了信息安全活动及对应的角色,并有角色的权责定义。'
}
]
},
{
label:
'车辆制造商汽车信息安全管理制度的角色应与车辆制造商的组织架构匹配。',
children: [
{
label:
'1.汽车信息安全管理制度中定义的角色与车辆制造商的组织架构岗位名称一致。'
},
{
label:
'2.汽车信息安全管理制度中定义的角色与车辆制造商的组织架构岗位有映射关系。'
}
]
}
]
},
{
label:
'车辆制造商汽车信息安全管理制度是否明确为保障汽车信息安全需求实现和维持所投入的资源。',
children: [
{
label:
'车辆制造商应提供在信息安全方面提供资源支持的证明材料,包括投入的场地、基础软硬件设备、技术人员和资金等。',
children: [
{
label:
'1.典型的资源要求为人力投入,例如负责网络安全风险管理的人员、研发人员和事件管理响应人员。'
}
]
}
]
},
{
label:
'车辆制造商汽车信息安全管理制度是否明确与其它管理流程(如QMS、ISMS)的适配性。',
children: [
{
label:
'车辆制造商应提供信息安全管理制度在建设实施中与企业其他管理流程相适配的证明材料。',
children: [
{
label:
'1.明确信息安全管理要求融合到现有管理制度流程中,如在现有ISMS制度中增加汽车信息安全管理要求。'
},
{
label: '2.在信息安全管理制度中明确与其它管理流程的接口。'
}
]
}
]
}
]
}
]
return {
rows: temp,
code: 200,
total: 10
}
}
},
{
url: '/scene-list',
type: 'get',
response: config => {
let temp = []
temp = [
{
code: '101',
type: '车型检验',
content: 'TBOX-蜂窝以太网接口',
testType: '系统服务漏扫、固件代码漏扫',
user: 'admin',
createTime: '@datetime'
},
{
code: '102',
type: '车型检验',
content: 'TBOX 固件',
testType: '端口扫描、篡改伪造',
user: 'admin',
createTime: '@datetime'
},
{
code: '103',
type: '车型检验',
content: 'WiFi AP接口',
testType: '系统服务漏扫、固件代码漏扫',
user: 'admin',
createTime: '@datetime'
},
{
code: '104',
type: '车型检验',
content: 'WiFi Client接口',
testType: '固件代码漏扫、端口扫描、篡改伪造',
user: 'admin',
createTime: '@datetime'
},
{
code: '105',
type: '车型检验',
content: '车载信息交互系统固件',
testType: '系统服务漏扫、固件代码漏扫、模糊测试、拒绝服务',
user: 'admin',
createTime: '@datetime'
},
{
code: '101',
type: '车型检验',
content: 'TBOX-蜂窝以太网接口',
testType: '系统服务漏扫、固件代码漏扫',
user: 'admin',
createTime: '@datetime'
},
{
code: '106',
type: '车型检验',
content: '第三方应用软件',
testType: '非授权安装',
user: 'admin',
createTime: '@datetime'
},
]
return {
rows: temp,
code: 200,
......
......@@ -64,13 +64,15 @@
</td>
</tr>
<!-- 循环遍历 keyPointList -->
<template v-for="(i, index) in item.keyPointList">
<tr :key="index">
<template v-for="(i, keyPointIndex) in item.keyPointList">
<tr :key="keyPointIndex">
<td align="center" :rowspan="getRows(i)">{{ i.text }}</td>
</tr>
<!-- 循环遍历 reviewDetailsList -->
<template v-for="(v, index) in i.reviewDetailsList">
<tr :key="index">
<template
v-for="(v, reviewDetailIndex) in i.reviewDetailsList"
>
<tr :key="reviewDetailIndex">
<td
align="center"
:rowspan="v.reviewSceneList.length + 1"
......@@ -79,8 +81,10 @@
</td>
</tr>
<!-- 循环遍历 reviewSceneList -->
<template v-for="(s, index) in v.reviewSceneList">
<tr :key="index">
<template
v-for="(s, reviewSceneIndex) in v.reviewSceneList"
>
<tr :key="reviewSceneIndex">
<td align="center">{{ s.text }}</td>
<td align="center">{{ s.result }}</td>
<td align="center">{{ s.people }}</td>
......
......@@ -75,9 +75,12 @@
export default {
props: {
dialogManger: {
default: {
dialogVisible: false,
source: {}
type: Object,
default() {
return {
dialogVisible: false,
source: {}
}
}
}
},
......
......@@ -73,7 +73,7 @@
</el-form>
<el-row :gutter="10" class="mb10">
<el-col :span="1.5">
<!-- <el-col :span="1.5">
<el-button
v-hasPermi="['setting:rules:add']"
type="primary"
......@@ -94,7 +94,7 @@
@click="handleAdd"
>新增细则</el-button
>
</el-col>
</el-col> -->
<right-toolbar
:show-search.sync="showSearch"
@queryTable="loadData"
......@@ -102,22 +102,65 @@
</el-row>
<el-tree
:data="tableData"
show-checkbox
node-key="id"
default-expand-all
:expand-on-click-node="false"
>
<span slot-scope="{ node, data }" class="custom-tree-node">
<span>{{ node.label }}</span>
<span>
<div slot-scope="{ node, data }" class="item-box">
<el-tooltip
class="item"
effect="dark"
:content="node.label"
placement="bottom"
>
<div class="title">{{ node.label }}</div>
</el-tooltip>
<div class="buttons-list">
<el-button
v-if="node.level == 1"
type="text"
size="mini"
@click="() => append(data)"
>
添加标准要求
</el-button>
<el-button
v-if="node.level == 2"
type="text"
size="mini"
@click="() => append(data)"
>
添加审查要点
</el-button>
<el-button
v-if="node.level == 3"
type="text"
size="mini"
@click="() => append(data)"
>
添加审查细则
</el-button>
<el-button
v-if="node.level == 4"
type="text"
size="mini"
@click="() => append(data)"
>
添加关联场景
</el-button>
<el-button type="text" size="mini" @click="() => append(data)">
Append
修改
</el-button>
<el-button type="text" size="mini" @click="() => remove(node, data)">
Delete
<el-button
type="text"
size="mini"
@click="() => handleDelete(node, data)"
>
删除
</el-button>
</span>
</span>
</div>
</div>
</el-tree>
<yan-dialog
:dialog-manger="dialogManger"
......@@ -180,17 +223,18 @@ export default {
this.dialogPointManger.dialogVisible = true
this.dialogPointManger.source = {}
},
handleDelete(row) {
this.$modal
.confirm('是否确定删除该条数据?', '操作确认')
.then(() => {
// return delNotice(noticeIds)
})
.then(() => {
this.loadData()
this.$modal.msgSuccess('删除成功')
})
.catch(() => {})
handleDelete(node, data) {
console.log(node, data)
// this.$modal
// .confirm('是否确定删除该条数据?', '操作确认')
// .then(() => {
// // return delNotice(noticeIds)
// })
// .then(() => {
// this.loadData()
// this.$modal.msgSuccess('删除成功')
// })
// .catch(() => {})
},
handleUpdate(row) {
this.dialogManger.dialogVisible = true
......@@ -199,3 +243,24 @@ export default {
}
}
</script>
<style scoped lang="scss">
.item-box {
flex: 1;
display: flex;
align-items: center;
justify-content: space-between;
font-size: 14px;
padding-right: 8px;
.title {
width: 500px;
overflow: hidden;
white-space: nowrap;
text-overflow: ellipsis;
}
.buttons-list {
margin-left: 20px;
}
}
</style>
......@@ -75,28 +75,41 @@
<el-table-column
label="检验场景编号"
min-width="200"
prop="code"
sortable
align="left"
>
</el-table-column>
<el-table-column label="场景分类" min-width="200" sortable align="left">
<el-table-column
label="场景分类"
prop="type"
min-width="200"
sortable
align="left"
>
</el-table-column>
<el-table-column
label="检验场景内容"
prop="content"
min-width="200"
sortable
align="left"
>
</el-table-column>
<el-table-column label="更新人员" min-width="200" align="left">
<el-table-column
label="更新人员"
prop="user"
min-width="200"
align="left"
>
</el-table-column>
<el-table-column
label="更新时间"
prop="createTime"
min-width="200"
align="left"
sortable
prop="createTime"
>
<template slot-scope="scope">
<span>{{ parseTime(scope.row.createTime) }}</span>
......@@ -114,7 +127,7 @@
v-hasPermi="['setting:scene:update']"
plain
size="mini"
type="primary"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
>修改</el-button
......@@ -123,7 +136,7 @@
v-hasPermi="['setting:scene:delete']"
plain
size="mini"
type="danger"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
>删除</el-button
......@@ -157,7 +170,7 @@ export default {
dicts: ['sys_scene_type'],
data() {
return {
listUrl: '/system/role/list',
listUrl: '/scene-list',
showSearch: true,
tableData: [],
dialogManger: {
......
......@@ -177,7 +177,7 @@
v-hasPermi="['setting:standard:update']"
plain
size="mini"
type="primary"
type="text"
icon="el-icon-edit"
@click="handleUpdate(scope.row)"
>修改</el-button
......@@ -186,7 +186,7 @@
v-hasPermi="['setting:standard:delete']"
plain
size="mini"
type="danger"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
>删除</el-button
......
......@@ -130,13 +130,15 @@
</td>
</tr>
<!-- 循环遍历 keyPointList -->
<template v-for="(i, index) in item.keyPointList">
<tr :key="index">
<template v-for="(i, PointIndex) in item.keyPointList">
<tr :key="PointIndex">
<td align="center" :rowspan="getRows(i)">{{ i.text }}</td>
</tr>
<!-- 循环遍历 reviewDetailsList -->
<template v-for="(v, index) in i.reviewDetailsList">
<tr :key="index">
<template
v-for="(v, reviewDetailIndex) in i.reviewDetailsList"
>
<tr :key="reviewDetailIndex">
<td
align="center"
:rowspan="v.reviewSceneList.length + 1"
......@@ -145,8 +147,10 @@
</td>
</tr>
<!-- 循环遍历 reviewSceneList -->
<template v-for="(s, index) in v.reviewSceneList">
<tr :key="index">
<template
v-for="(s, reviewSceneIndex) in v.reviewSceneList"
>
<tr :key="reviewSceneIndex">
<td align="center">{{ s.text }}</td>
<td align="center">{{ s.result }}</td>
<td align="center">{{ s.people }}</td>
......
......@@ -83,7 +83,7 @@
</template>
</el-table-column>
<el-table-column label="紧要程度" align="left" prop="createTime">
<template>紧急</template>
紧急
</el-table-column>
<el-table-column label="审查问卷" align="left" prop="createTime">
<template slot-scope="scope">
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment