Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
W
web
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
中汽测评-信息安全测评系统
web
Commits
2053f598
Commit
2053f598
authored
Mar 22, 2024
by
mzx
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'develop' of
http://gitlab.91isoft.com:90/car-test/web
into mengzixuan
parents
1d77967d
a74a5787
Changes
25
Hide whitespace changes
Inline
Side-by-side
Showing
25 changed files
with
533 additions
and
384 deletions
+533
-384
.env.development
.env.development
+1
-1
.env.staging
.env.staging
+1
-1
index.html
public/index.html
+1
-1
process.scss
src/assets/styles/process.scss
+6
-8
TaskStandard.vue
src/components/Page/TaskStandard.vue
+2
-6
index.vue
src/views/processing/carReview/source-record/index.vue
+9
-7
index.vue
src/views/processing/carReview/vehicle-type/index.vue
+16
-12
companyFile.vue
...ing/carReview/write-check-form/components/companyFile.vue
+0
-3
previewView.vue
...ing/carReview/write-check-form/components/previewView.vue
+9
-5
index.vue
src/views/processing/carReview/write-check-form/index.vue
+186
-134
index.vue
src/views/processing/carTest/execution-test-plan/index.vue
+2
-2
dialog.vue
src/views/processing/fileLibrary/components/dialog.vue
+0
-3
index.vue
src/views/processing/fileLibrary/index.vue
+1
-0
index.vue
src/views/processing/systemReview/source-record/index.vue
+9
-7
companyFile.vue
.../systemReview/write-check-form/components/companyFile.vue
+0
-3
previewView.vue
.../systemReview/write-check-form/components/previewView.vue
+9
-5
index.vue
src/views/processing/systemReview/write-check-form/index.vue
+208
-137
index.vue
src/views/setting/sample/index.vue
+6
-4
authUser.vue
src/views/system/role/authUser.vue
+4
-0
index.vue
src/views/system/role/index.vue
+2
-2
index.vue
src/views/system/user/index.vue
+14
-14
index.vue
src/views/task/edit/index.vue
+20
-24
PartInfo.vue
src/views/task/new/components/PartInfo.vue
+10
-1
index.vue
src/views/task/new/index.vue
+16
-4
index.vue
src/views/task/task-detail/index.vue
+1
-0
No files found.
.env.development
View file @
2053f598
# 页面标题
VUE_APP_TITLE =
安全信息
检测平台
VUE_APP_TITLE =
周期性
检测平台
# 开发环境配置
ENV = 'development'
...
...
.env.staging
View file @
2053f598
# 页面标题
VUE_APP_TITLE =
安全信息
检测平台
VUE_APP_TITLE =
周期性
检测平台
# 开发环境配置
ENV = 'staging'
...
...
public/index.html
View file @
2053f598
...
...
@@ -10,7 +10,7 @@
<meta
name=
"viewport"
content=
"width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"
>
<link
rel=
"icon"
href=
"<%= BASE_URL %>favicon.ico"
>
<!-- <link href="https://unpkg.com/tailwindcss@^2/dist/tailwind.min.css" rel="stylesheet"> -->
<script
src=
"https://lf1-cdn-tos.bytegoofy.com/obj/iconpark/icons_31435_85.f03f7ada23edcf4cd72e61338ed55693
.js"
></script>
<script
src=
"https://lf1-cdn-tos.bytegoofy.com/obj/iconpark/icons_31435_86.9b2d26764ccec5f05296d7ffca18aa56
.js"
></script>
<title><
%=
webpackConfig
.
name
%
></title>
<!--[if lt IE 11]>
<script>window.location.href = '/html/ie.html';</script><![endif]-->
...
...
src/assets/styles/process.scss
View file @
2053f598
...
...
@@ -709,15 +709,13 @@
width
:
120px
!
important
;
// text-align: center !important;
}
.passed
{
.el-form-item__label
{
margin-left
:
-10px
;
}
}
.el-progress
{
.el-progress
{
display
:
flex
;
}
.empty-message
{
text-align
:
center
;
.empty-message
{
margin
:
0
10px
;
display
:
flex
;
flex-flow
:
column
;
align-items
:
center
;
color
:
#ccc
;
}
src/components/Page/TaskStandard.vue
View file @
2053f598
...
...
@@ -36,11 +36,7 @@ export default {
},
methods
:
{
goBack
()
{
// 获取当前路由信息
const
currentRoute
=
this
.
$router
.
currentRoute
// 获取来源页面的路由信息
const
fromRoute
=
currentRoute
.
from
console
.
log
(
currentRoute
)
this
.
$router
.
back
()
}
}
}
...
...
@@ -48,7 +44,7 @@ export default {
<
style
lang=
"scss"
scoped
>
.page-data
{
padding
:
0
24px
;
padding-bottom
:
24px
;
padding-bottom
:
24px
;
}
.card-box
{
...
...
src/views/processing/carReview/source-record/index.vue
View file @
2053f598
...
...
@@ -212,13 +212,15 @@
<div
v-else
>
__
</div>
</td>
<td
align=
"center"
>
<div
v-if=
"
reviewDetail.result && reviewDetail.result.fileName
"
>
《
{{
reviewDetail
.
result
.
fileName
}}
》
{{
reviewDetail
.
result
.
catalogue
}}
<div
v-if=
"reviewDetail.result"
>
<div
v-if=
"reviewDetail.result.fileList"
>
<template
v-for=
"i in reviewDetail.result.fileList"
>
《
{{
i
.
fileName
}}
》
{{
i
.
catalogue
}}
</
template
>
</div>
<div
v-if=
"reviewDetail.result.comment"
>
{{ reviewDetail.result.comment }}
</div>
</div>
<div
v-else
>
__
</div>
</td>
...
...
src/views/processing/carReview/vehicle-type/index.vue
View file @
2053f598
...
...
@@ -191,18 +191,21 @@
<tr
:key=
"reviewDetailKey"
>
<td
align=
"center"
>
{{
reviewDetail
.
text
}}
</td>
<td
align=
"center"
class=
"investigate-result"
>
<el-tag
v-if=
"reviewDetail.result.passed === 1"
size=
"medium"
type=
"success"
>
符合
</el-tag
>
<el-tag
v-if=
"reviewDetail.result.passed === 0"
size=
"medium"
type=
"danger"
>
不符合
</el-tag
>
<div
v-if=
"reviewDetail.result"
>
<el-tag
v-if=
"reviewDetail.result.passed === 1"
size=
"medium"
type=
"success"
>
符合
</el-tag
>
<el-tag
v-if=
"reviewDetail.result.passed === 0"
size=
"medium"
type=
"warning"
>
不符合
</el-tag
>
</div>
<div
v-else
>
__
</div>
</td>
<td
align=
"center"
class=
"written-by"
>
{{
...
...
@@ -231,6 +234,7 @@
</div>
<div
class=
"img-item"
>
<div
class=
"img-label"
style=
"margin-top: 20px"
>
选择测试场景
</div>
<div
class=
"img-label"
style=
"margin-top: 20px"
>
选择测试场景
</div>
</div>
<!-- 测试场景 -->
<div
class=
"test-scenario-container"
>
...
...
src/views/processing/carReview/write-check-form/components/companyFile.vue
View file @
2053f598
...
...
@@ -129,9 +129,6 @@ export default {
],
identifyNumber
:
[
{
required
:
true
,
message
:
'请输入文件识别号'
,
trigger
:
'blur'
}
],
photo
:
[
{
required
:
true
,
message
:
'请选择文件照片'
,
trigger
:
'change'
}
]
},
model
:
this
.
$modelDataSource
({
...
...
src/views/processing/carReview/write-check-form/components/previewView.vue
View file @
2053f598
...
...
@@ -99,11 +99,15 @@
<div
v-else
>
__
</div>
</td>
<td
align=
"center"
>
<div
v-if=
"reviewDetail.result && reviewDetail.result.fileName"
>
《
{{
reviewDetail
.
result
.
fileName
}}
》
{{
reviewDetail
.
result
.
catalogue
}}
<div
v-if=
"reviewDetail.result"
>
<div
v-if=
"reviewDetail.result.fileList"
>
<template
v-for=
"i in reviewDetail.result.fileList"
>
《
{{
i
.
fileName
}}
》
{{
i
.
catalogue
}}
</
template
>
</div>
<div
v-if=
"reviewDetail.result.comment"
>
{{ reviewDetail.result.comment }}
</div>
</div>
<div
v-else
>
__
</div>
</td>
...
...
src/views/processing/carReview/write-check-form/index.vue
View file @
2053f598
...
...
@@ -9,6 +9,13 @@
>
预览表单
</header-button>
<header-button
v-if=
"model.systemReviewTask.leaderId == userId"
type=
"default"
icon=
"check"
@
click=
"submitFrom()"
>
提交表单
</header-button
>
<header-button
icon=
"arrow-left"
type=
"no-line"
@
click=
"goBack"
>
返回
</header-button>
...
...
@@ -214,54 +221,107 @@
</el-radio-group>
</el-form-item>
<el-form-item
class=
"right-content-item"
label=
"相关记录"
>
<div
style=
"display: flex; flex-flow: column"
>
<el-row
v-for=
"(file, key) in form.fileList"
:key=
"key"
>
<el-col
:span=
"8"
>
<div>
<el-form-item
prop=
"fileName"
label-suffix=
" "
label=
"文件名称"
>
<el-autocomplete
v-model=
"file.fileName"
style=
"width: 100%"
:fetch-suggestions=
"querySearch"
placeholder=
"请输入文件名称"
@
select=
"
e => {
querySelect(file, e)
}
"
@
input=
"
e => {
queryInput(file, e)
}
"
></el-autocomplete>
</el-form-item>
</div>
</el-col>
<el-col
:span=
"8"
:offset=
"1"
>
<div>
<el-form-item
prop=
"catalogue"
label-suffix=
" "
label=
"章节条目或范围"
>
<el-input
v-model=
"file.catalogue"
placeholder=
"请输入具体章节条目或范围"
/>
</el-form-item>
</div>
</el-col>
<el-col
:span=
"1"
:offset=
"1"
>
<el-button
type=
"danger"
plain
icon=
"el-icon-delete"
size=
"mini"
style=
"margin-top: 27px"
@
click=
"form.fileList.splice(key, 1)"
></el-button>
</el-col>
<el-col
:span=
"24"
>
<company-file
v-show=
"file.show"
:enterprise-name=
"model.carReviewTask.enterpriseName"
:file-name=
"file.fileName"
@
fileNameUpdate=
"
name => {
file.fileName = name
}
"
@
handleUpdate=
"
e => {
handleFileUpdate(file, e)
}
"
@
handleSave=
"
e => {
handleFileSave(file, e)
}
"
></company-file>
</el-col>
</el-row>
<el-button
class=
"add-number"
icon=
"el-icon-circle-plus-outline"
@
click=
"handleAddFile()"
>
添加文件
</el-button
>
</div>
<el-row>
<el-col
:span=
"8"
>
<div>
<el-form-item
prop=
"fileName"
label-suffix=
" "
label=
"文件名称"
>
<el-autocomplete
v-model=
"form.fileName"
style=
"width: 100%"
:fetch-suggestions=
"querySearch"
placeholder=
"请输入文件名称"
@
select=
"querySelect"
></el-autocomplete>
</el-form-item>
</div>
</el-col>
<el-col
:span=
"8"
:offset=
"1"
>
<div>
<el-form-item
prop=
"catalogue"
label-suffix=
" "
label=
"章节条目或范围"
>
<el-input
v-model=
"form.catalogue"
placeholder=
"请输入具体章节条目或范围"
/>
</el-form-item>
</div>
<el-col
:span=
"24"
>
<el-form-item
prop=
"comment"
label-suffix=
" "
label=
"备注信息"
>
<el-input
v-model=
"form.comment"
placeholder=
"请输入备注信息"
type=
"textarea"
:autosize=
"{ minRows: 4, maxRows: 4 }"
clearable
/>
</el-form-item>
</el-col>
</el-row>
<!-- //车企文件信息 -->
</el-form-item>
<company-file
v-show=
"formManger.show"
style=
"margin-left: 125px"
:enterprise-name=
"model.carReviewTask.enterpriseName"
:file-name=
"form.fileName"
@
fileNameUpdate=
"
name => {
form.fileName = name
}
"
@
handleUpdate=
"handleFileUpdate"
@
handleSave=
"handleFileSave"
></company-file>
</el-form>
</div>
</div>
...
...
@@ -277,13 +337,6 @@
>
保存当前条目
</footer-button>
<footer-button
v-if=
"model.carReviewTask.leaderId == userId"
type=
"primary"
icon=
"check"
@
click=
"submitFrom()"
>
提交表单
</footer-button
>
</div>
</div>
</task-standard>
...
...
@@ -339,18 +392,16 @@ export default {
passed
:
''
,
reviewDetailsId
:
''
,
taskId
:
''
,
fileName
:
''
,
catalogue
:
''
,
reviewEnterpriseArchiveId
:
''
comment
:
''
,
fileList
:
[]
},
task
:
{},
oldForm
:
{
passed
:
''
,
reviewDetailsId
:
''
,
taskId
:
''
,
fileName
:
''
,
catalogue
:
''
,
reviewEnterpriseArchiveId
:
''
comment
:
''
,
fileList
:
[]
},
model
:
{
carReviewTask
:
{},
...
...
@@ -361,34 +412,12 @@ export default {
activeModel
:
0
,
checked
:
false
,
detailsList
:
[],
rules
:
{
passed
:
[
{
required
:
true
,
message
:
'请选择审查结果'
,
trigger
:
'blur'
}
],
fileName
:
[
{
required
:
true
,
message
:
'请输入文件名称'
,
trigger
:
[
'change'
]
}
],
catalogue
:
[
{
required
:
true
,
message
:
'请输入具体章节条目或范围'
,
trigger
:
'blur'
}
]
},
rules
:
{},
changeTask
:
[],
changeTaskDetails
:
[],
value1
:
''
,
taskId
:
''
,
options
:
[],
formManger
:
{
show
:
false
,
fileName
:
''
},
fileModel
:
this
.
$modelDataSource
({
url
:
'/review/enterprise/archive'
,
dataKey
:
'model'
,
...
...
@@ -396,7 +425,6 @@ export default {
id
:
0
}
}),
isFileUpdate
:
false
,
loading
:
false
}
},
...
...
@@ -413,23 +441,6 @@ export default {
...
mapGetters
([
'name'
,
'companyFiles'
,
'userId'
])
},
watch
:
{
'form.fileName'
:
function
(
newValue
)
{
if
(
newValue
)
{
const
files
=
this
.
companyFiles
const
query
=
files
.
filter
(
this
.
createFilter
(
newValue
))
if
(
query
.
length
===
0
)
{
this
.
formManger
.
show
=
true
this
.
isFileUpdate
=
true
this
.
formManger
.
fileName
=
newValue
}
else
{
this
.
isFileUpdate
=
false
this
.
formManger
.
show
=
false
}
}
else
{
this
.
isFileUpdate
=
false
this
.
formManger
.
show
=
false
}
},
checked
(
newV
)
{
if
(
newV
)
{
this
.
detailsList
=
this
.
model
.
detailsList
.
filter
(
item
=>
{
...
...
@@ -454,23 +465,46 @@ export default {
/**
* 企业文件保存回调
*/
handleFileSave
(
element
)
{
this
.
form
.
reviewEnterpriseArchiveId
=
String
(
element
)
this
.
isFileUpdate
=
false
this
.
formManger
.
show
=
false
console
.
log
(
'企业文件保存回调'
)
handleFileSave
(
file
,
element
)
{
file
.
id
=
element
file
.
isFileUpdate
=
false
file
.
show
=
false
this
.
$forceUpdate
(
)
},
/**
* 企业文件表单内容修改回调
* @param {*} element 返回值
*/
handleFileUpdate
(
element
)
{
this
.
isFileUpdate
=
element
handleFileUpdate
(
file
,
element
)
{
file
.
isFileUpdate
=
element
console
.
log
(
'企业文件表单内容修改回调'
)
},
querySelect
(
e
)
{
this
.
form
.
reviewEnterpriseArchiveId
=
e
.
id
console
.
log
(
'企业文件筛选'
+
e
.
id
)
handleAddFile
()
{
this
.
form
.
fileList
.
push
({
fileName
:
''
,
catalogue
:
''
,
id
:
''
})
},
querySelect
(
file
,
e
)
{
file
.
id
=
e
.
id
},
queryInput
(
file
,
newValue
)
{
if
(
newValue
)
{
const
files
=
this
.
companyFiles
const
query
=
files
.
filter
(
this
.
createFilter
(
newValue
))
if
(
query
.
length
===
0
)
{
file
.
show
=
true
file
.
isFileUpdate
=
true
file
.
fileName
=
newValue
}
else
{
file
.
isFileUpdate
=
false
file
.
show
=
false
}
}
else
{
file
.
isFileUpdate
=
false
file
.
show
=
false
}
},
querySearch
(
queryString
,
cb
)
{
const
files
=
this
.
companyFiles
...
...
@@ -583,16 +617,35 @@ export default {
* @param item 圆圈对象
*/
changeStep
(
index
)
{
if
(
this
.
isAllPropertiesEqual
()
&&
!
this
.
isFileUpdate
)
{
if
(
this
.
isAllPropertiesEqual
()
&&
!
this
.
allPropertiesCheck
(
this
.
form
.
fileList
,
'isFileUpdate'
)
)
{
this
.
handleCircle
(
index
)
}
else
{
this
.
$message
.
error
(
'您有未保存内容,请点击保存按钮'
)
}
},
// 遍历数组中的对象判断某一属性的数值是否为true
allPropertiesCheck
(
obj
,
key
)
{
if
(
obj
[
key
]
!==
''
&&
typeof
obj
[
key
]
!==
'undefined'
&&
obj
[
key
])
{
return
true
}
return
false
},
/**
* 判断数组中对象的属性是否全部为空
* @param obj
* @returns {boolean}
*/
isAllPropertiesEqual
()
{
for
(
var
key
in
this
.
form
)
{
if
(
this
.
form
[
key
]
!==
this
.
oldForm
[
key
])
{
return
false
if
(
key
!==
'isFileUpdate'
)
{
if
(
JSON
.
stringify
(
this
.
form
[
key
])
!==
JSON
.
stringify
(
this
.
oldForm
[
key
])
)
{
return
false
}
}
}
return
true
...
...
@@ -610,36 +663,30 @@ export default {
passed
:
this
.
taskModel
.
result
.
passed
,
reviewDetailsId
:
this
.
taskModel
.
id
,
taskId
:
this
.
taskId
,
fileName
:
this
.
taskModel
.
result
.
fileName
,
catalogue
:
this
.
taskModel
.
result
.
catalogue
,
reviewEnterpriseArchiveId
:
this
.
taskModel
.
result
.
reviewEnterpriseArchiveId
comment
:
this
.
taskModel
.
result
.
comment
,
fileList
:
this
.
taskModel
.
result
.
fileList
}
this
.
oldForm
=
{
passed
:
this
.
taskModel
.
result
.
passed
,
reviewDetailsId
:
this
.
taskModel
.
id
,
taskId
:
this
.
taskId
,
fileName
:
this
.
taskModel
.
result
.
fileName
,
catalogue
:
this
.
taskModel
.
result
.
catalogue
,
reviewEnterpriseArchiveId
:
this
.
taskModel
.
result
.
reviewEnterpriseArchiveId
comment
:
this
.
taskModel
.
result
.
comment
,
fileList
:
this
.
taskModel
.
result
.
fileList
}
}
else
{
this
.
form
=
{
passed
:
''
,
reviewDetailsId
:
this
.
taskModel
.
id
,
taskId
:
this
.
taskId
,
fileName
:
''
,
catalogue
:
''
,
reviewEnterpriseArchiveId
:
''
comment
:
''
,
fileList
:
[]
}
this
.
oldForm
=
{
passed
:
''
,
reviewDetailsId
:
this
.
taskModel
.
id
,
taskId
:
this
.
taskId
,
fileName
:
''
,
catalogue
:
''
,
reviewEnterpriseArchiveId
:
''
comment
:
''
,
fileList
:
[]
}
}
this
.
$nextTick
(()
=>
{
...
...
@@ -661,23 +708,28 @@ export default {
submitQuestionnaire
(
type
)
{
this
.
$refs
.
form
.
validate
(
valid
=>
{
if
(
valid
)
{
if
(
!
this
.
isFileUpdate
)
{
if
(
!
this
.
allPropertiesCheck
(
this
.
form
.
fileList
,
'isFileUpdate'
)
)
{
// 根据公司文件和文件名获取特定项目项,并据此更新表单中的审核企业档案ID
const
files
=
this
.
companyFiles
// 获取公司文件列表
const
fileName
=
this
.
form
.
fileName
// 获取表单中填写的文件名
// 根据文件名在公司文件列表中查找对应项目项
const
item
=
this
.
getProjectByName
(
files
,
fileName
)
if
(
item
)
{
this
.
form
.
reviewEnterpriseArchiveId
=
item
.
id
// 找到项目项则更新表单的审核企业档案ID
}
else
{
this
.
form
.
reviewEnterpriseArchiveId
=
null
// 未找到则将审核企业档案ID设为null
}
this
.
form
.
fileList
.
map
(
file
=>
{
const
fileName
=
file
.
fileName
// 获取表单中填写的文件名
// 根据文件名在公司文件列表中查找对应项目项
const
item
=
this
.
getProjectByName
(
files
,
fileName
)
if
(
item
)
{
file
.
id
=
item
.
id
// 找到项目项则更新表单的审核企业档案ID
}
else
{
file
.
id
=
null
// 未找到则将审核企业档案ID设为null
}
})
reviewDetailsSubmit
(
this
.
form
).
then
(
async
res
=>
{
if
(
res
.
code
===
200
)
{
await
this
.
getTask
()
if
(
this
.
checked
)
{
this
.
handleCircle
(
0
)
}
this
.
form
.
fileList
.
map
(
i
=>
{
i
.
isFileUpdate
=
false
})
this
.
oldForm
=
this
.
form
this
.
$modal
.
msgSuccess
(
'保存当前条目成功'
)
this
.
$nextTick
(()
=>
{
...
...
src/views/processing/carTest/execution-test-plan/index.vue
View file @
2053f598
<!-- 测试用例详情 -->
<
template
>
<
page
-standard>
<
task
-standard>
<div
class=
"web-page"
>
<iframe
:src=
"url"
...
...
@@ -8,7 +8,7 @@
style=
"width: 100%; height: 100%"
></iframe>
</div>
</
page
-standard>
</
task
-standard>
</
template
>
<
script
>
...
...
src/views/processing/fileLibrary/components/dialog.vue
View file @
2053f598
...
...
@@ -135,9 +135,6 @@ export default {
],
identifyNumber
:
[
{
required
:
true
,
message
:
'请输入文件识别号'
,
trigger
:
'blur'
}
],
photo
:
[
{
required
:
true
,
message
:
'请选择文件照片'
,
trigger
:
'change'
}
]
}
}
...
...
src/views/processing/fileLibrary/index.vue
View file @
2053f598
...
...
@@ -157,6 +157,7 @@
prop
=
"createBy"
label
=
"创建人员"
min
-
width
=
"130"
show
-
overflow
-
tooltip
align
=
"left"
>
<
/el-table-column
>
...
...
src/views/processing/systemReview/source-record/index.vue
View file @
2053f598
...
...
@@ -217,13 +217,15 @@
<div
v-else
>
__
</div>
</td>
<td
align=
"center"
>
<div
v-if=
"
reviewDetail.result && reviewDetail.result.fileName
"
>
《
{{
reviewDetail
.
result
.
fileName
}}
》
{{
reviewDetail
.
result
.
catalogue
}}
<div
v-if=
"reviewDetail.result"
>
<div
v-if=
"reviewDetail.result.fileList"
>
<template
v-for=
"i in reviewDetail.result.fileList"
>
《
{{
i
.
fileName
}}
》
{{
i
.
catalogue
}}
</
template
>
</div>
<div
v-if=
"reviewDetail.result.comment"
>
{{ reviewDetail.result.comment }}
</div>
</div>
<div
v-else
>
__
</div>
</td>
...
...
src/views/processing/systemReview/write-check-form/components/companyFile.vue
View file @
2053f598
...
...
@@ -129,9 +129,6 @@ export default {
],
identifyNumber
:
[
{
required
:
true
,
message
:
'请输入文件识别号'
,
trigger
:
'blur'
}
],
photo
:
[
{
required
:
true
,
message
:
'请选择文件照片'
,
trigger
:
'change'
}
]
},
model
:
this
.
$modelDataSource
({
...
...
src/views/processing/systemReview/write-check-form/components/previewView.vue
View file @
2053f598
...
...
@@ -99,11 +99,15 @@
<div
v-else
>
__
</div>
</td>
<td
align=
"center"
>
<div
v-if=
"reviewDetail.result && reviewDetail.result.fileName"
>
《
{{
reviewDetail
.
result
.
fileName
}}
》
{{
reviewDetail
.
result
.
catalogue
}}
<div
v-if=
"reviewDetail.result"
>
<div
v-if=
"reviewDetail.result.fileList"
>
<template
v-for=
"i in reviewDetail.result.fileList"
>
《
{{
i
.
fileName
}}
》
{{
i
.
catalogue
}}
</
template
>
</div>
<div
v-if=
"reviewDetail.result.comment"
>
{{ reviewDetail.result.comment }}
</div>
</div>
<div
v-else
>
__
</div>
</td>
...
...
src/views/processing/systemReview/write-check-form/index.vue
View file @
2053f598
<
template
>
<div>
<task-standard
v-loading=
"loading"
>
<task-standard>
<div
slot=
"header-right"
>
<header-button
icon=
"preview-open"
...
...
@@ -9,6 +9,13 @@
>
预览表单
</header-button>
<header-button
v-if=
"model.systemReviewTask.leaderId == userId"
type=
"default"
icon=
"check"
@
click=
"submitFrom()"
>
提交表单
</header-button
>
<header-button
icon=
"arrow-left"
class=
"back-btn"
...
...
@@ -130,13 +137,15 @@
:rules=
"rules"
>
<el-form-item
class=
"right-content-item"
label=
"标准章节"
>
<
span>
{{
taskModel
.
chapter
}}
</span
>
<
div
style=
"display: flex"
>
{{
taskModel
.
chapter
}}
</div
>
</el-form-item>
<el-form-item
class=
"right-content-item"
label=
"标准要求"
>
<
span>
{{
taskModel
.
standardText
}}
</span
>
<
div
style=
"display: flex"
>
{{
taskModel
.
standardText
}}
</div
>
</el-form-item>
<el-form-item
class=
"right-content-item"
label=
"审查要点"
>
<span>
{{
taskModel
.
reviewKeypointText
}}
</span>
<div
style=
"display: flex"
>
{{
taskModel
.
reviewKeypointText
}}
</div>
</el-form-item>
<el-form-item
class=
"right-content-item"
label=
"审查细则"
>
<div
class=
"scene-content"
>
...
...
@@ -224,58 +233,116 @@
</el-radio-group>
</el-form-item>
<el-form-item
class=
"right-content-item"
label=
"相关记录"
>
<div
style=
"display: flex; flex-flow: column"
>
<el-row
v-for=
"(file, key) in form.fileList"
:key=
"key"
>
<el-col
:span=
"8"
>
<div>
<el-form-item
prop=
"fileName"
label-suffix=
" "
label=
"文件名称"
>
<el-autocomplete
v-model=
"file.fileName"
style=
"width: 100%"
:fetch-suggestions=
"querySearch"
placeholder=
"请输入文件名称"
@
select=
"
e => {
querySelect(file, e)
}
"
@
input=
"
e => {
queryInput(file, e)
}
"
></el-autocomplete>
</el-form-item>
</div>
</el-col>
<el-col
:span=
"8"
:offset=
"1"
>
<div>
<el-form-item
prop=
"catalogue"
label-suffix=
" "
label=
"章节条目或范围"
>
<el-input
v-model=
"file.catalogue"
placeholder=
"请输入具体章节条目或范围"
/>
</el-form-item>
</div>
</el-col>
<el-col
:span=
"1"
:offset=
"1"
>
<el-button
type=
"danger"
plain
icon=
"el-icon-delete"
size=
"mini"
style=
"margin-top: 27px"
@
click=
"form.fileList.splice(key, 1)"
></el-button>
</el-col>
<el-col
:span=
"24"
>
<company-file
v-show=
"file.show"
:enterprise-name=
"
model.systemReviewTask.enterpriseName
"
:file-name=
"file.fileName"
@
fileNameUpdate=
"
name => {
file.fileName = name
}
"
@
handleUpdate=
"
e => {
handleFileUpdate(file, e)
}
"
@
handleSave=
"
e => {
handleFileSave(file, e)
}
"
></company-file>
</el-col>
</el-row>
<el-button
class=
"add-number"
icon=
"el-icon-circle-plus-outline"
@
click=
"handleAddFile()"
>
添加文件
</el-button
>
</div>
<el-row>
<el-col
:span=
"8"
>
<div>
<el-form-item
prop=
"fileName"
label-suffix=
" "
label=
"文件名称"
>
<el-autocomplete
v-model=
"form.fileName"
style=
"width: 100%"
:fetch-suggestions=
"querySearch"
placeholder=
"请输入文件名称"
@
select=
"querySelect"
></el-autocomplete>
</el-form-item>
</div>
</el-col>
<el-col
:span=
"8"
:offset=
"1"
>
<div>
<el-form-item
prop=
"catalogue"
label-suffix=
" "
label=
"章节条目或范围"
>
<el-input
v-model=
"form.catalogue"
placeholder=
"请输入具体章节条目或范围"
/>
</el-form-item>
</div>
<el-col
:span=
"24"
>
<el-form-item
prop=
"comment"
label-suffix=
" "
label=
"备注信息"
>
<el-input
v-model=
"form.comment"
placeholder=
"请输入备注信息"
type=
"textarea"
:autosize=
"{ minRows: 4, maxRows: 4 }"
clearable
/>
</el-form-item>
</el-col>
</el-row>
<!-- //车企文件信息 -->
</el-form-item>
<company-file
v-show=
"formManger.show"
style=
"margin-left: 125px"
:enterprise-name=
"model.systemReviewTask.enterpriseName"
:file-name=
"form.fileName"
@
fileNameUpdate=
"
name => {
form.fileName = name
}
"
@
handleUpdate=
"handleFileUpdate"
@
handleSave=
"handleFileSave"
></company-file>
</el-form>
</div>
</div>
<div
v-else
class=
"empty-message"
>
-暂无未完成条目-
</div>
<div
v-else
class=
"empty-message"
>
<iconpark-icon
name=
"wutiaomu"
size=
"120px"
></iconpark-icon>
<span>
无未完成条目
</span>
</div>
</div>
<div
class=
"bottom-btn"
>
<footer-button
...
...
@@ -287,13 +354,6 @@
>
保存当前条目
</footer-button>
<footer-button
v-if=
"model.systemReviewTask.leaderId == userId"
type=
"primary"
icon=
"check"
@
click=
"submitFrom()"
>
提交表单
</footer-button
>
</div>
</div>
</task-standard>
...
...
@@ -349,18 +409,16 @@ export default {
passed
:
''
,
reviewDetailsId
:
''
,
taskId
:
''
,
fileName
:
''
,
catalogue
:
''
,
reviewEnterpriseArchiveId
:
''
comment
:
''
,
fileList
:
[]
},
task
:
{},
oldForm
:
{
passed
:
''
,
reviewDetailsId
:
''
,
taskId
:
''
,
fileName
:
''
,
catalogue
:
''
,
reviewEnterpriseArchiveId
:
''
comment
:
''
,
fileList
:
[]
},
model
:
{
systemReviewTask
:
{},
...
...
@@ -371,33 +429,10 @@ export default {
activeModel
:
0
,
checked
:
false
,
detailsList
:
[],
rules
:
{
passed
:
[
{
required
:
true
,
message
:
'请选择审查结果'
,
trigger
:
'blur'
}
],
fileName
:
[
{
required
:
true
,
message
:
'请输入文件名称'
,
trigger
:
[
'change'
]
}
],
catalogue
:
[
{
required
:
true
,
message
:
'请输入具体章节条目或范围'
,
trigger
:
'blur'
}
]
},
rules
:
{},
// TODO 删除
checkedTwo
:
false
,
checkedThree
:
false
,
radio
:
1
,
addData
:
{
fileName
:
''
,
chapterEntry
:
''
},
changeTask
:
[],
changeTaskDetails
:
[],
value1
:
''
,
...
...
@@ -414,7 +449,6 @@ export default {
id
:
0
}
}),
isFileUpdate
:
false
,
loading
:
false
}
},
...
...
@@ -432,23 +466,6 @@ export default {
...
mapGetters
([
'name'
,
'companyFiles'
,
'userId'
])
},
watch
:
{
'form.fileName'
:
function
(
newValue
)
{
if
(
newValue
)
{
const
files
=
this
.
companyFiles
const
query
=
files
.
filter
(
this
.
createFilter
(
newValue
))
if
(
query
.
length
===
0
)
{
this
.
formManger
.
show
=
true
this
.
isFileUpdate
=
true
this
.
formManger
.
fileName
=
newValue
}
else
{
this
.
isFileUpdate
=
false
this
.
formManger
.
show
=
false
}
}
else
{
this
.
isFileUpdate
=
false
this
.
formManger
.
show
=
false
}
},
checked
(
newV
)
{
if
(
newV
)
{
this
.
detailsList
=
this
.
model
.
detailsList
.
filter
(
item
=>
{
...
...
@@ -472,20 +489,45 @@ export default {
/**
* 企业文件保存回调
*/
handleFileSave
(
element
)
{
this
.
form
.
reviewEnterpriseArchiveId
=
element
this
.
isFileUpdate
=
false
this
.
formManger
.
show
=
false
handleFileSave
(
file
,
element
)
{
file
.
id
=
element
file
.
isFileUpdate
=
false
file
.
show
=
false
this
.
$forceUpdate
()
},
/**
* 企业文件表单内容修改回调
* @param {*} element 返回值
*/
handleFileUpdate
(
element
)
{
this
.
isFileUpdate
=
element
handleFileUpdate
(
file
,
element
)
{
file
.
isFileUpdate
=
element
},
handleAddFile
()
{
this
.
form
.
fileList
.
push
({
fileName
:
''
,
catalogue
:
''
,
id
:
''
})
},
querySelect
(
e
)
{
this
.
form
.
reviewEnterpriseArchiveId
=
e
.
id
querySelect
(
file
,
e
)
{
file
.
id
=
e
.
id
},
queryInput
(
file
,
newValue
)
{
if
(
newValue
)
{
const
files
=
this
.
companyFiles
const
query
=
files
.
filter
(
this
.
createFilter
(
newValue
))
if
(
query
.
length
===
0
)
{
file
.
show
=
true
file
.
isFileUpdate
=
true
file
.
fileName
=
newValue
}
else
{
file
.
isFileUpdate
=
false
file
.
show
=
false
}
}
else
{
file
.
isFileUpdate
=
false
file
.
show
=
false
}
},
querySearch
(
queryString
,
cb
)
{
const
files
=
this
.
companyFiles
...
...
@@ -593,12 +635,22 @@ export default {
this
.
sceneViewManger
.
dialogVisible
=
true
this
.
sceneViewManger
.
data
=
data
},
// 遍历数组中的对象判断某一属性的数值是否为true
allPropertiesCheck
(
obj
,
key
)
{
if
(
obj
[
key
]
!==
''
&&
typeof
obj
[
key
]
!==
'undefined'
&&
obj
[
key
])
{
return
true
}
return
false
},
/**
* 点击左侧圆圈触发的回调函数
* @param item 圆圈对象
*/
changeStep
(
index
)
{
if
(
this
.
isAllPropertiesEqual
()
&&
!
this
.
isFileUpdate
)
{
if
(
this
.
isAllPropertiesEqual
()
&&
!
this
.
allPropertiesCheck
(
this
.
form
.
fileList
,
'isFileUpdate'
)
)
{
this
.
handleCircle
(
index
)
}
else
{
this
.
$message
.
error
(
'您有未保存内容,请点击保存按钮'
)
...
...
@@ -606,7 +658,27 @@ export default {
},
isAllPropertiesEqual
()
{
for
(
var
key
in
this
.
form
)
{
if
(
this
.
form
[
key
]
!==
this
.
oldForm
[
key
])
{
if
(
key
!==
'isFileUpdate'
)
{
if
(
JSON
.
stringify
(
this
.
form
[
key
])
!==
JSON
.
stringify
(
this
.
oldForm
[
key
])
)
{
return
false
}
}
}
return
true
},
/**
*判断两个数组是否一样
* @param {*} item
* @param {*} oldItem
*/
isAllPropertiesEqualArray
(
item
,
oldItem
)
{
if
(
item
.
length
!==
oldItem
.
length
)
{
return
false
}
for
(
var
i
=
0
;
i
<
item
.
length
;
i
++
)
{
if
(
item
[
i
].
chapter
!==
oldItem
[
i
].
chapter
)
{
return
false
}
}
...
...
@@ -625,36 +697,30 @@ export default {
passed
:
this
.
taskModel
.
result
.
passed
,
reviewDetailsId
:
this
.
taskModel
.
id
,
taskId
:
this
.
taskId
,
fileName
:
this
.
taskModel
.
result
.
fileName
,
catalogue
:
this
.
taskModel
.
result
.
catalogue
,
reviewEnterpriseArchiveId
:
this
.
taskModel
.
result
.
reviewEnterpriseArchiveId
comment
:
this
.
taskModel
.
result
.
comment
,
fileList
:
this
.
taskModel
.
result
.
fileList
||
[]
}
this
.
oldForm
=
{
passed
:
this
.
taskModel
.
result
.
passed
,
reviewDetailsId
:
this
.
taskModel
.
id
,
taskId
:
this
.
taskId
,
fileName
:
this
.
taskModel
.
result
.
fileName
,
catalogue
:
this
.
taskModel
.
result
.
catalogue
,
reviewEnterpriseArchiveId
:
this
.
taskModel
.
result
.
reviewEnterpriseArchiveId
comment
:
this
.
taskModel
.
result
.
comment
,
fileList
:
this
.
taskModel
.
result
.
fileList
||
[]
}
}
else
{
this
.
form
=
{
passed
:
''
,
reviewDetailsId
:
this
.
taskModel
.
id
,
taskId
:
this
.
taskId
,
fileName
:
''
,
catalogue
:
''
,
reviewEnterpriseArchiveId
:
''
comment
:
''
,
fileList
:
[]
}
this
.
oldForm
=
{
passed
:
''
,
reviewDetailsId
:
this
.
taskModel
.
id
,
taskId
:
this
.
taskId
,
fileName
:
''
,
catalogue
:
''
,
reviewEnterpriseArchiveId
:
''
comment
:
''
,
fileList
:
[]
}
}
this
.
$nextTick
(()
=>
{
...
...
@@ -676,23 +742,28 @@ export default {
submitQuestionnaire
(
type
)
{
this
.
$refs
.
form
.
validate
(
valid
=>
{
if
(
valid
)
{
if
(
!
this
.
isFileUpdate
)
{
if
(
!
this
.
allPropertiesCheck
(
this
.
form
.
fileList
,
'isFileUpdate'
)
)
{
// 根据公司文件和文件名获取特定项目项,并据此更新表单中的审核企业档案ID
const
files
=
this
.
companyFiles
// 获取公司文件列表
const
fileName
=
this
.
form
.
fileName
// 获取表单中填写的文件名
// 根据文件名在公司文件列表中查找对应项目项
const
item
=
this
.
getProjectByName
(
files
,
fileName
)
if
(
item
)
{
this
.
form
.
reviewEnterpriseArchiveId
=
item
.
id
// 找到项目项则更新表单的审核企业档案ID
}
else
{
this
.
form
.
reviewEnterpriseArchiveId
=
null
// 未找到则将审核企业档案ID设为null
}
this
.
form
.
fileList
.
map
(
file
=>
{
const
fileName
=
file
.
fileName
// 获取表单中填写的文件名
// 根据文件名在公司文件列表中查找对应项目项
const
item
=
this
.
getProjectByName
(
files
,
fileName
)
if
(
item
)
{
file
.
id
=
item
.
id
// 找到项目项则更新表单的审核企业档案ID
}
else
{
file
.
id
=
null
// 未找到则将审核企业档案ID设为null
}
})
reviewDetailsSubmit
(
this
.
form
).
then
(
async
res
=>
{
if
(
res
.
code
===
200
)
{
await
this
.
getTask
()
if
(
this
.
checked
)
{
this
.
handleCircle
(
0
)
}
this
.
form
.
fileList
.
map
(
i
=>
{
i
.
isFileUpdate
=
false
})
this
.
oldForm
=
this
.
form
this
.
$modal
.
msgSuccess
(
'保存当前条目成功'
)
this
.
$nextTick
(()
=>
{
...
...
src/views/setting/sample/index.vue
View file @
2053f598
...
...
@@ -360,7 +360,7 @@
height=
"150px"
></image-preview>
</div>
<div
v-else
>
暂无数据
</div>
<div
v-else
>
--未上传--
</div>
</el-form-item>
<el-form-item
label=
"样品照片:"
prop=
"samplePhotos"
>
<div
v-if=
"clickNameForm.samplePhotos"
>
...
...
@@ -373,7 +373,7 @@
:src=
"item"
></image-preview>
</div>
<div
v-else
>
暂无数据
</div>
<div
v-else
>
--未上传--
</div>
</el-form-item>
</el-form>
</el-dialog>
...
...
@@ -646,8 +646,10 @@ export default {
clickSampleName
(
row
)
{
this
.
dialogFormVisible
=
true
this
.
clickNameForm
=
row
this
.
clickNameForm
.
samplePhotos
=
this
.
clickNameForm
.
samplePhotos
.
split
(
','
)
if
(
this
.
clickNameForm
.
samplePhotos
)
{
this
.
clickNameForm
.
samplePhotos
=
this
.
clickNameForm
.
samplePhotos
.
split
(
','
)
}
console
.
log
(
row
)
},
closeSamplePhoto
()
{
...
...
src/views/system/role/authUser.vue
View file @
2053f598
...
...
@@ -239,6 +239,8 @@ export default {
const
roleId
=
this
.
queryParams
.
roleId
this
.
$modal
.
confirm
(
'确认要取消该用户"'
+
row
.
userName
+
'"角色吗?'
,
{
type
:
'warning'
,
title
:
'取消授权'
,
closeOnClickModal
:
false
})
.
then
(
function
()
{
...
...
@@ -256,6 +258,8 @@ export default {
const
userIds
=
this
.
userIds
.
join
(
','
)
this
.
$modal
.
confirm
(
'是否取消选中用户授权数据项?'
,
{
type
:
'warning'
,
title
:
'取消授权'
,
closeOnClickModal
:
false
})
.
then
(
function
()
{
...
...
src/views/system/role/index.vue
View file @
2053f598
...
...
@@ -196,12 +196,12 @@
>
更多
</el-button
>
<el-dropdown-menu
slot=
"dropdown"
>
<el-dropdown-item
<
!--
<
el-dropdown-item
v-hasPermi=
"['system:role:edit']"
command=
"handleDataScope"
icon=
"el-icon-circle-check"
>
数据权限
</el-dropdown-item
>
>
-->
<el-dropdown-item
v-hasPermi=
"['system:role:edit']"
command=
"handleAuthUser"
...
...
src/views/system/user/index.vue
View file @
2053f598
...
...
@@ -142,17 +142,17 @@
>
删除
</el-button
>
</el-col>
<
el-col
:span=
"1.5"
>
<el-button
v-hasPermi=
"['system:user:import']"
type=
"info"
plain
icon=
"el-icon-upload2"
size=
"mini"
@
click=
"handleImport"
>
导入
</el-button
>
<
/el-col
>
<
!--
<el-col
:span=
"1.5"
>
--
>
<!--
<el-button-->
<!-- v-hasPermi="['system:user:import']"-->
<!-- type="info"-->
<!-- plain-->
<!-- icon="el-icon-upload2"-->
<!-- size="mini"-->
<!-- @click="handleImport"-->
<!-- >导入
</el-button-->
<!-- >--
>
<
!--
</el-col>
--
>
<!--
<el-col
:span=
"1.5"
>
<el-button
v-hasPermi=
"['system:user:export']"
...
...
@@ -245,7 +245,7 @@
<el-table-column
label=
"操作"
align=
"center"
width=
"16
0"
min-width=
"20
0"
class-name=
"small-padding fixed-width"
>
<
template
v-if=
"scope.row.userId !== 1"
slot-scope=
"scope"
>
...
...
@@ -779,8 +779,8 @@ export default {
confirmButtonText
:
'确定'
,
cancelButtonText
:
'取消'
,
closeOnClickModal
:
false
,
inputPattern
:
/^.
{
5
,20}
$/
,
inputErrorMessage
:
'用户密码长度必须介于
5
和 20 之间'
inputPattern
:
/^.
{
6
,20}
$/
,
inputErrorMessage
:
'用户密码长度必须介于
6
和 20 之间'
})
.
then
(({
value
})
=>
{
resetUserPwd
(
row
.
userId
,
value
).
then
(
response
=>
{
...
...
src/views/task/edit/index.vue
View file @
2053f598
...
...
@@ -39,7 +39,11 @@
'test-scenario': item.check === false,
'check-test-scenario': item.check === true
}"
@click="handleInspectionItem(item)"
@click="
taskDetail.taskStatus === 'NEW'
? handleInspectionItem(item)
: ''
"
>
<div>
{{
item
.
label
}}
</div>
</div>
...
...
@@ -53,6 +57,13 @@
label=
"请选择测试场景(可多选)"
prop=
"testScenarioList"
>
<footer-button
style=
"width: 80px; height: 25px"
type=
"primary"
@
click=
"selectAll"
>
全部选择
</footer-button>
<div
class=
"test-scenario-container"
>
<div
v-for=
"(item, index) in testScenarioList"
...
...
@@ -414,29 +425,6 @@ export default {
// 小组成员回显数据
tableData
:
[],
inspectionItemList
:
[],
// testScenarioList: [
// { value: 0, label: 'TBOX-蜂窝以太网接口', check: false },
// { value: 1, label: 'WiFi AP接口', check: false },
// { value: 2, label: 'WiFi Client接口', check: false },
// { value: 3, label: '充电以太网接口', check: false },
// { value: 4, label: 'CAN 诊断接口(OBD)', check: false },
// { value: 5, label: '以太网诊断接口(OBD)', check: false },
// { value: 6, label: '车载摄像头以太网接口(无线)', check: false },
// { value: 7, label: '第三方应用软件', check: false },
// { value: 8, label: '远程控车应用', check: false },
// { value: 9, label: 'USB接口', check: false },
// { value: 10, label: 'XCB标定', check: false },
// { value: 11, label: 'CCP标定', check: false },
// { value: 12, label: '安全启动', check: false },
// { value: 13, label: '远程控车', check: false },
// { value: 14, label: 'V2X', check: false },
// { value: 15, label: 'BT', check: false },
// { value: 16, label: 'BLE', check: false },
// { value: 17, label: 'NFC', check: false },
// { value: 18, label: '射频钥匙', check: false },
// { value: 19, label: '软件升级', check: false },
// { value: 20, label: 'ECU固件', check: false }
// ],
rules
:
{
testScenarioList
:
[
{
...
...
@@ -697,6 +685,14 @@ export default {
console
.
log
(
'model'
,
this
.
model
)
})
},
selectAll
()
{
this
.
testScenarioList
.
forEach
(
obj
=>
{
obj
.
check
=
true
})
this
.
model
.
testScenarioList
=
this
.
testScenarioList
.
map
(
obj
=>
{
return
obj
.
value
})
},
getInspectionItemDict
()
{
getDicts
(
'inspection_item'
).
then
(
response
=>
{
this
.
inspectionItemList
=
response
.
data
.
map
(
...
...
src/views/task/new/components/PartInfo.vue
View file @
2053f598
...
...
@@ -19,6 +19,7 @@
<el-select
v-model=
"card.sampleNumber"
:disabled=
"!isEdit"
:placeholder=
"isDetail ? '--' : '请选择'"
@
change=
"handleSampleNumberChange(card, $event)"
>
<el-option
...
...
@@ -31,7 +32,11 @@
</el-select>
</el-form-item>
<el-form-item
label=
"样品名称"
>
<el-input
v-model=
"card.sampleName"
disabled
/>
<el-input
v-model=
"card.sampleName"
disabled
:placeholder=
"isDetail ? '--' : ''"
/>
</el-form-item>
</el-form>
</el-card>
...
...
@@ -61,6 +66,10 @@ export default {
isEdit
:
{
type
:
Boolean
,
default
:
true
},
isDetail
:
{
type
:
Boolean
,
default
:
false
}
},
watch
:
{
...
...
src/views/task/new/index.vue
View file @
2053f598
...
...
@@ -49,6 +49,13 @@
label=
"请选择测试场景(可多选)"
prop=
"testScenarioList"
>
<footer-button
style=
"width: 80px; height: 25px"
type=
"primary"
@
click=
"selectAll"
>
全部选择
</footer-button>
<div
class=
"test-scenario-container"
>
<div
v-for=
"(item, index) in testScenarioList"
...
...
@@ -677,6 +684,15 @@ export default {
console
.
log
(
'model'
,
this
.
model
)
})
},
// 全选
selectAll
()
{
this
.
testScenarioList
.
forEach
(
obj
=>
{
obj
.
check
=
true
})
this
.
model
.
testScenarioList
=
this
.
testScenarioList
.
map
(
obj
=>
{
return
obj
.
value
})
},
getInspectionItemDict
()
{
getDicts
(
'inspection_item'
).
then
(
response
=>
{
this
.
inspectionItemList
=
response
.
data
.
map
(
...
...
@@ -1057,10 +1073,6 @@ export default {
this
.
$message
.
error
(
'请填写整车样品信息'
)
return
}
// else if (this.currentPartSampleInformation.length === 0) {
// this.$message.error('请填写零部件样品信息')
// return
// }
this
.
$confirm
(
'是否确认进行发布功能'
,
'发布'
,
{
confirmButtonText
:
'确定'
,
concelButtonText
:
'取消'
,
...
...
src/views/task/task-detail/index.vue
View file @
2053f598
...
...
@@ -245,6 +245,7 @@
v-model=
"partInfoArr"
class=
"global-left-margin"
:is-edit=
"false"
:is-detail=
"true"
:part-sample-information=
"partSampleInformationList"
@
change=
"handleModChange"
/>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment