Authored by 高磊

Merge branch 'wangfeng-500-dev' into 'master-500-dev'

Wangfeng 500 dev



See merge request !1237
@@ -74,7 +74,6 @@ layui.define(['common', 'swiper', 'admin', 'commonDetail', 'mxClient', 'sessions @@ -74,7 +74,6 @@ layui.define(['common', 'swiper', 'admin', 'commonDetail', 'mxClient', 'sessions
74 text-overflow: ellipsis;white-space: nowrap;max-width: 100%;display: inline-block;" 74 text-overflow: ellipsis;white-space: nowrap;max-width: 100%;display: inline-block;"
75 class="vulnerability-name" data-id="${item.id}">${item.name}</span> 75 class="vulnerability-name" data-id="${item.id}">${item.name}</span>
76 <div style="margin-top: 20px;"> 76 <div style="margin-top: 20px;">
77 - <span style="margin-right: 30px;">漏洞级别:<span style="padding: 4px 10px;color: white;background-color: #C41011;border-radius: 4px;">${item.level}</span></span>  
78 <span>披露时间: ${item.createTime}</span> 77 <span>披露时间: ${item.createTime}</span>
79 </div> 78 </div>
80 </li>` 79 </li>`
@@ -122,17 +121,17 @@ layui.define(['common', 'swiper', 'admin', 'commonDetail', 'mxClient', 'sessions @@ -122,17 +121,17 @@ layui.define(['common', 'swiper', 'admin', 'commonDetail', 'mxClient', 'sessions
122 <div class="layui-input-block">${d.repairSuggestions}</div> 121 <div class="layui-input-block">${d.repairSuggestions}</div>
123 </div> 122 </div>
124 <div class="layui-form-item"> 123 <div class="layui-form-item">
125 - <label class="layui-form-label"><span style="color: red;">*</span>阅读状态:</label> 124 + <label class="layui-form-label"><span style="color: red;">*</span>接收状态:</label>
126 <div class="layui-input-inline"> 125 <div class="layui-input-inline">
127 <input type="radio" name="isRead" value="1" title="已读" lay-filter="isRead"checked> 126 <input type="radio" name="isRead" value="1" title="已读" lay-filter="isRead"checked>
128 <input type="radio" name="isRead" value="0" title="未读" lay-filter="isRead"> 127 <input type="radio" name="isRead" value="0" title="未读" lay-filter="isRead">
129 </div> 128 </div>
130 </div> 129 </div>
131 <div class="layui-form-item"> 130 <div class="layui-form-item">
132 - <label class="layui-form-label"><span style="color: red;">*</span>是否涉及:</label> 131 + <label class="layui-form-label"><span style="color: red;">*</span>自查结果:</label>
133 <div class="layui-input-inline"> 132 <div class="layui-input-inline">
134 - <input type="radio" name="isRelated" value="1" title="是" lay-filter="isRelated">  
135 - <input type="radio" name="isRelated" value="0" title="否" lay-filter="isRelated" checked> 133 + <input type="radio" name="isRelated" value="1" title="涉及" lay-filter="isRelated">
  134 + <input type="radio" name="isRelated" value="0" title="不涉及" lay-filter="isRelated" checked>
136 </div> 135 </div>
137 <div><input type="hidden" id="vulnerabilitiesId" name="vulnerabilitiesId" value="${d.id}"></div> 136 <div><input type="hidden" id="vulnerabilitiesId" name="vulnerabilitiesId" value="${d.id}"></div>
138 </div> 137 </div>
@@ -6,15 +6,15 @@ @@ -6,15 +6,15 @@
6 <el-form-item> 6 <el-form-item>
7 <el-input clearable :size="$global.elementConfig.size.input" v-model="queryParams.name" placeholder="关键字搜索" /> 7 <el-input clearable :size="$global.elementConfig.size.input" v-model="queryParams.name" placeholder="关键字搜索" />
8 </el-form-item> 8 </el-form-item>
9 - <el-form-item>  
10 - <el-select clearable :size="$global.elementConfig.size.input" v-model="queryParams.type" placeholder="漏洞类型">  
11 - <el-option :value="" label="全部漏洞"/>  
12 - <el-option :value="1" label="高危漏洞"/>  
13 - <el-option :value="2" label="中危漏洞"/>  
14 - <el-option :value="3" label="低危漏洞"/>  
15 - <el-option :value="4" label="信息漏洞"/>  
16 - </el-select>  
17 - </el-form-item> 9 + <!--<el-form-item>-->
  10 + <!-- <el-select clearable :size="$global.elementConfig.size.input" v-model="queryParams.type" placeholder="漏洞类型">-->
  11 + <!-- <el-option :value="" label="全部漏洞"/>-->
  12 + <!-- <el-option :value="1" label="高危漏洞"/>-->
  13 + <!-- <el-option :value="2" label="中危漏洞"/>-->
  14 + <!-- <el-option :value="3" label="低危漏洞"/>-->
  15 + <!-- <el-option :value="4" label="信息漏洞"/>-->
  16 + <!-- </el-select>-->
  17 + <!--</el-form-item>-->
18 <el-form-item> 18 <el-form-item>
19 <el-button @click="handleQuery" :size="$global.elementConfig.size.button" type="primary">查询</el-button> 19 <el-button @click="handleQuery" :size="$global.elementConfig.size.button" type="primary">查询</el-button>
20 </el-form-item> 20 </el-form-item>
@@ -78,26 +78,26 @@ @@ -78,26 +78,26 @@
78 <el-form-item label="漏洞名称" prop="name"> 78 <el-form-item label="漏洞名称" prop="name">
79 <el-input :size="$global.elementConfig.size.input" clearable v-model="docForm.name"></el-input> 79 <el-input :size="$global.elementConfig.size.input" clearable v-model="docForm.name"></el-input>
80 </el-form-item> 80 </el-form-item>
81 - <el-form-item label="漏洞级别" prop="type">  
82 - <el-select v-model="docForm.type" style="width: 100%;">  
83 - <el-option :value="1" label="高危漏洞"/>  
84 - <el-option :value="2" label="中危漏洞"/>  
85 - <el-option :value="3" label="低危漏洞"/>  
86 - <el-option :value="4" label="信息漏洞"/>  
87 - </el-select>  
88 - </el-form-item>  
89 - <el-form-item label="存在站点" prop="existsSite">  
90 - <el-input type="textarea" v-model="docForm.existsSite"></el-input>  
91 - </el-form-item> 81 + <!--<el-form-item label="漏洞级别" prop="type">-->
  82 + <!-- <el-select v-model="docForm.type" style="width: 100%;">-->
  83 + <!-- <el-option :value="1" label="高危漏洞"/>-->
  84 + <!-- <el-option :value="2" label="中危漏洞"/>-->
  85 + <!-- <el-option :value="3" label="低危漏洞"/>-->
  86 + <!-- <el-option :value="4" label="信息漏洞"/>-->
  87 + <!-- </el-select>-->
  88 + <!--</el-form-item>-->
  89 + <!--<el-form-item label="存在站点" prop="existsSite">-->
  90 + <!-- <el-input type="textarea" v-model="docForm.existsSite"></el-input>-->
  91 + <!--</el-form-item>-->
92 <el-form-item label="漏洞详情" prop="remark"> 92 <el-form-item label="漏洞详情" prop="remark">
93 <el-input type="textarea" v-model="docForm.remark"></el-input> 93 <el-input type="textarea" v-model="docForm.remark"></el-input>
94 </el-form-item> 94 </el-form-item>
95 - <el-form-item label="影响范围" prop="impactSite">  
96 - <el-input type="textarea" v-model="docForm.impactSite"></el-input>  
97 - </el-form-item>  
98 - <el-form-item label="修复建议" prop="repairSuggestions">  
99 - <el-input type="textarea" v-model="docForm.repairSuggestions"></el-input>  
100 - </el-form-item> 95 + <!--<el-form-item label="影响范围" prop="impactSite">-->
  96 + <!-- <el-input type="textarea" v-model="docForm.impactSite"></el-input>-->
  97 + <!--</el-form-item>-->
  98 + <!--<el-form-item label="修复建议" prop="repairSuggestions">-->
  99 + <!-- <el-input type="textarea" v-model="docForm.repairSuggestions"></el-input>-->
  100 + <!--</el-form-item>-->
101 101
102 102
103 <el-form-item> 103 <el-form-item>
@@ -123,14 +123,17 @@ @@ -123,14 +123,17 @@
123 <el-form-item label="厂商" prop="manufacturer"> 123 <el-form-item label="厂商" prop="manufacturer">
124 <el-input :size="$global.elementConfig.size.input" clearable v-model="handleForm.manufacturerName" disabled></el-input> 124 <el-input :size="$global.elementConfig.size.input" clearable v-model="handleForm.manufacturerName" disabled></el-input>
125 </el-form-item> 125 </el-form-item>
126 - 126 + <el-form-item label="影响范围" prop="impactSite">
  127 + <el-input type="textarea" v-model="handleForm.impactSite"></el-input>
  128 + </el-form-item>
127 <el-form-item label="处理时间" prop="solveTime"> 129 <el-form-item label="处理时间" prop="solveTime">
128 <el-date-picker v-model="handleForm.solveTime"></el-date-picker> 130 <el-date-picker v-model="handleForm.solveTime"></el-date-picker>
129 </el-form-item> 131 </el-form-item>
130 <el-form-item label="处理情况" prop="solveResult"> 132 <el-form-item label="处理情况" prop="solveResult">
131 <el-select v-model="handleForm.solveResult" style="width: 100%;"> 133 <el-select v-model="handleForm.solveResult" style="width: 100%;">
132 - <el-option :value="1" label="已处理"/>  
133 <el-option :value="0" label="未处理"/> 134 <el-option :value="0" label="未处理"/>
  135 + <el-option :value="1" label="已处理且处理成功"/>
  136 + <el-option :value="2" label="已处理且未处理成功"/>
134 </el-select> 137 </el-select>
135 </el-form-item> 138 </el-form-item>
136 <el-form-item label="处理说明" prop="solveRemark"> 139 <el-form-item label="处理说明" prop="solveRemark">
@@ -150,7 +153,7 @@ @@ -150,7 +153,7 @@
150 <el-drawer 153 <el-drawer
151 v-model="viewDrawer" 154 v-model="viewDrawer"
152 direction="rtl" 155 direction="rtl"
153 - size="50%" 156 + size="95%"
154 > 157 >
155 <template #header="{ close, titleId, titleClass }"> 158 <template #header="{ close, titleId, titleClass }">
156 <span style="text-align: left;" :id="titleId" :class="titleClass">查看详情</span> 159 <span style="text-align: left;" :id="titleId" :class="titleClass">查看详情</span>
@@ -161,22 +164,22 @@ @@ -161,22 +164,22 @@
161 <div style="width: 80px;">漏洞名称:</div> 164 <div style="width: 80px;">漏洞名称:</div>
162 <div style="flex: 1;">{{detail.name}}</div> 165 <div style="flex: 1;">{{detail.name}}</div>
163 </li> 166 </li>
164 - <li style="margin-bottom: 15px;display: flex;">  
165 - <div style="width: 80px;">漏洞级别:</div>  
166 - <div style="flex: 1;">{{detail.level}}</div>  
167 - </li> 167 + <!--<li style="margin-bottom: 15px;display: flex;">-->
  168 + <!-- <div style="width: 80px;">漏洞级别:</div>-->
  169 + <!-- <div style="flex: 1;">{{detail.level}}</div>-->
  170 + <!--</li>-->
168 <li style="margin-bottom: 15px;display: flex;"> 171 <li style="margin-bottom: 15px;display: flex;">
169 <div style="width: 80px;">漏洞详情:</div> 172 <div style="width: 80px;">漏洞详情:</div>
170 <div style="flex: 1;">{{detail.remark}}</div> 173 <div style="flex: 1;">{{detail.remark}}</div>
171 </li> 174 </li>
172 - <li style="margin-bottom: 15px;display: flex;">  
173 - <div style="width: 80px;">影响范围:</div>  
174 - <div style="flex: 1;">{{detail.impactSite}}</div>  
175 - </li>  
176 - <li style="margin-bottom: 15px;display: flex;">  
177 - <div style="width: 80px;">修复建议:</div>  
178 - <div style="flex: 1;">{{detail.repairSuggestions}}</div>  
179 - </li> 175 + <!--<li style="margin-bottom: 15px;display: flex;">-->
  176 + <!-- <div style="width: 80px;">影响范围:</div>-->
  177 + <!-- <div style="flex: 1;">{{detail.impactSite}}</div>-->
  178 + <!--</li>-->
  179 + <!--<li style="margin-bottom: 15px;display: flex;">-->
  180 + <!-- <div style="width: 80px;">修复建议:</div>-->
  181 + <!-- <div style="flex: 1;">{{detail.repairSuggestions}}</div>-->
  182 + <!--</li>-->
180 <li style="margin-bottom: 15px;display: flex;"> 183 <li style="margin-bottom: 15px;display: flex;">
181 <div style="width: 80px;">录入人:</div> 184 <div style="width: 80px;">录入人:</div>
182 <div style="flex: 1;">{{detail.createUserName}}</div> 185 <div style="flex: 1;">{{detail.createUserName}}</div>
@@ -184,15 +187,29 @@ @@ -184,15 +187,29 @@
184 </ul> 187 </ul>
185 188
186 <el-table :data="detail.resolutions" v-if="detail.resolutions.length > 0"> 189 <el-table :data="detail.resolutions" v-if="detail.resolutions.length > 0">
187 - <el-table-column align="center" prop="manufacturerName" label="处理厂商" width="100" show-overflow-tooltip/>  
188 - <el-table-column align="center" prop="solveResult" label="处理状态" width="80" > 190 + <el-table-column align="center" prop="manufacturerName" label="处理厂商" width="150" show-overflow-tooltip/>
  191 + <el-table-column align="center" prop="solveResult" label="接收状态" width="100" >
  192 + <template #default="scope">
  193 + <span v-if="scope.row.isRead == '0'">未读</span>
  194 + <span v-if="scope.row.isRead == '1'">已读</span>
  195 + </template>
  196 + </el-table-column>
  197 + <el-table-column align="center" prop="solveResult" label="自查结果" width="100" >
  198 + <template #default="scope">
  199 + <span v-if="scope.row.isRead == '0'">涉及</span>
  200 + <span v-if="scope.row.isRead == '1'">不涉及</span>
  201 + </template>
  202 + </el-table-column>
  203 + <el-table-column align="center" prop="impactSite" label="影响范围" width="200" show-overflow-tooltip/>
  204 + <el-table-column align="center" prop="solveResult" label="处理状态" width="150" >
189 <template #default="scope"> 205 <template #default="scope">
190 <span v-if="scope.row.solveResult == '0'">未处理</span> 206 <span v-if="scope.row.solveResult == '0'">未处理</span>
191 - <span v-if="scope.row.solveResult == '1'">已处理</span> 207 + <span v-if="scope.row.solveResult == '1'">已处理且处理成功</span>
  208 + <span v-if="scope.row.solveResult == '2'">已处理且未处理成功</span>
192 </template> 209 </template>
193 </el-table-column> 210 </el-table-column>
194 <el-table-column align="center" prop="solveUserName" label="处理人" width="120" /> 211 <el-table-column align="center" prop="solveUserName" label="处理人" width="120" />
195 - <el-table-column align="center" prop="solveTime" label="处理时间" width="160" /> 212 + <el-table-column align="center" prop="solveTime" label="处理时间" width="100" />
196 <el-table-column align="center" prop="solveRemark" label="处理说明" /> 213 <el-table-column align="center" prop="solveRemark" label="处理说明" />
197 214
198 </el-table> 215 </el-table>
@@ -102,6 +102,7 @@ export default { @@ -102,6 +102,7 @@ export default {
102 let docForm = Vue.ref({ 102 let docForm = Vue.ref({
103 name:'', 103 name:'',
104 level:'', 104 level:'',
  105 + type:'1',
105 remark:'', 106 remark:'',
106 impactSite:'', 107 impactSite:'',
107 repairSuggestions:'', 108 repairSuggestions:'',
@@ -152,7 +153,8 @@ export default { @@ -152,7 +153,8 @@ export default {
152 solveResult:'', 153 solveResult:'',
153 solveRemark:'', 154 solveRemark:'',
154 solveTime:'', 155 solveTime:'',
155 - vulnerabilitiesId:'' 156 + vulnerabilitiesId:'',
  157 + impactSite:''
156 }) 158 })
157 let handleRulesForm = Vue.ref({ 159 let handleRulesForm = Vue.ref({
158 solveResult:[{ 160 solveResult:[{
@@ -178,6 +180,7 @@ export default { @@ -178,6 +180,7 @@ export default {
178 handleForm.value.solveRemark = ''; 180 handleForm.value.solveRemark = '';
179 handleForm.value.solveTime = ''; 181 handleForm.value.solveTime = '';
180 handleForm.value.vulnerabilitiesId = ''; 182 handleForm.value.vulnerabilitiesId = '';
  183 + handleForm.value.impactSite = '';
181 184
182 if(res.success){ 185 if(res.success){
183 proxy.$global.showMsg('处理成功'); 186 proxy.$global.showMsg('处理成功');