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
d5e8db79
Commit
d5e8db79
authored
Mar 13, 2024
by
盖献康
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'develop' of
http://gitlab.91isoft.com:90/car-test/web
into developer/gaixiankang
parents
c17ae5c6
9b4a045a
Changes
22
Hide whitespace changes
Inline
Side-by-side
Showing
22 changed files
with
1084 additions
and
130 deletions
+1084
-130
.env.production
.env.production
+1
-1
.env.staging
.env.staging
+1
-1
index.html
public/index.html
+2
-2
sample.js
src/api/system/sample.js
+19
-0
element-ui.scss
src/assets/styles/element-ui.scss
+4
-0
standard.js
src/store/modules/standard.js
+0
-1
index.vue
src/views/processing/archivedTask/index.vue
+8
-6
sceneDialog.vue
...ing/carReview/write-check-form/components/sceneDialog.vue
+4
-4
dialog.vue
src/views/processing/checkFileLibrary/components/dialog.vue
+183
-0
index.vue
src/views/processing/checkFileLibrary/index.vue
+259
-0
index.vue
src/views/processing/fileLibrary/index.vue
+6
-1
index.vue
src/views/processing/processed-review/index.vue
+2
-2
index.vue
src/views/processing/retention-file/index.vue
+2
-0
sceneDialog.vue
.../systemReview/write-check-form/components/sceneDialog.vue
+4
-4
index.vue
src/views/processing/systemReview/write-check-form/index.vue
+2
-0
index.vue
src/views/processing/unprocessed-review/index.vue
+1
-2
index.vue
src/views/setting/company/index.vue
+1
-0
index.vue
src/views/setting/sample/index.vue
+1
-1
index.vue
src/views/setting/sample/taskDetails/index.vue
+579
-92
index.vue
src/views/setting/testMatrix/useCaseDetails/index.vue
+2
-1
index.vue
src/views/task/on/index.vue
+2
-11
vue.config.js
vue.config.js
+1
-1
No files found.
.env.production
View file @
d5e8db79
...
...
@@ -10,4 +10,4 @@ VUE_APP_BASE_API = '/prod-api'
# 图片服务器地址
VUE_APP_IMAGE_API ='/'
VUE_APP_CLIENT_API = 'http
s://10.12.48.78/usecase
'
VUE_APP_CLIENT_API = 'http
://10.12.48.78:8090
'
.env.staging
View file @
d5e8db79
...
...
@@ -9,4 +9,4 @@ VUE_APP_BASE_API = 'http://49.232.167.247:22032'
# 图片服务器地址
VUE_APP_IMAGE_API = 'http://49.232.167.247:22037'
VUE_APP_CLIENT_API = 'http
s://10.12.48.78/usecase
'
VUE_APP_CLIENT_API = 'http
://10.12.48.78:8090
'
public/index.html
View file @
d5e8db79
...
...
@@ -3,9 +3,9 @@
<head>
<meta
charset=
"utf-8"
>
<meta
http-equiv=
"X-UA-Compatible"
content=
"IE=edge,chrome=1"
>
<
%
if
(
process
.
env
.
NODE_ENV =
==
'
production
')
{
%
>
<
!-- <
% if (process.env.NODE_ENV === 'production') { %>
<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
<
%
}
%
>
<% } %>
-->
<meta
name=
"renderer"
content=
"webkit"
>
<meta
name=
"viewport"
content=
"width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"
>
<link
rel=
"icon"
href=
"<%= BASE_URL %>favicon.ico"
>
...
...
src/api/system/sample.js
View file @
d5e8db79
...
...
@@ -47,3 +47,22 @@ export function selectMaterial(data) {
data
:
data
})
}
// 查看任务概览任务详情
export
function
selectTaskInfo
(
data
){
return
request
({
url
:
'/task/getById'
,
method
:
'post'
,
data
:
data
})
}
// 查看任务概览数据统计
export
function
selectDataStatistics
(
data
){
return
request
({
url
:
'/task/dataStatistics'
,
method
:
'post'
,
data
:
data
})
}
src/assets/styles/element-ui.scss
View file @
d5e8db79
...
...
@@ -118,3 +118,7 @@
top
:
20px
;
transform
:
translateX
(
100%
);
}
.el-checkbox__input.is-disabled
+
span
.el-checkbox__label
{
color
:
#606266
;
}
src/store/modules/standard.js
View file @
d5e8db79
...
...
@@ -24,7 +24,6 @@ const standard = {
pageNum
:
1
,
pageSize
:
9999
}).
then
(
res
=>
{
console
.
log
(
res
.
rows
)
if
(
res
.
code
===
200
)
{
standard
.
state
.
standard
=
res
.
rows
[
0
].
id
commit
(
'SET_STANDARD_LIST'
,
res
.
rows
)
...
...
src/views/processing/archivedTask/index.vue
View file @
d5e8db79
...
...
@@ -13,7 +13,7 @@
v-for=
"(item, key) in standardList"
:key=
"key"
:value=
"item.id"
:label=
"item.name"
:label=
"item.
standardNo + item.
name"
></el-option>
</el-select>
</el-form-item>
...
...
@@ -82,7 +82,9 @@
:key=
"index"
class=
"task-card-box"
>
<div
class=
"inspection-standard"
>
检验依据:《
{{
item
.
name
}}
》
</div>
<div
class=
"inspection-standard"
>
检验依据:
{{
item
.
standardNo
}}
《
{{
item
.
name
}}
》
</div>
<div
class=
"card-content"
>
<div
class=
"card-cell"
>
<div
class=
"cell-label"
>
任务编号
</div>
...
...
@@ -98,7 +100,7 @@
@
click=
"goNext('/task/task-detail?taskId=' + item.id)"
>
{{
item
.
taskName
?
item
.
taskName
:
'---'
}}
<
span
class=
"green"
>
(已归档)
</span
>
<
!--
<span
class=
"green"
>
(已归档)
</span>
--
>
</el-link>
</div>
</div>
...
...
@@ -106,9 +108,9 @@
<div
class=
"cell-label"
>
车辆型号
</div>
<div
class=
"cell-value"
:title=
"item.
taskName ? item.taskName
: '---'"
:title=
"item.
productModel ? item.productModel
: '---'"
>
{{
item
.
taskName
?
item
.
taskName
:
'---'
}}
{{
item
.
productModel
?
item
.
productModel
:
'---'
}}
</div>
</div>
<div
class=
"card-cell"
>
...
...
@@ -197,7 +199,7 @@
type=
"primary"
plain
size=
"mini"
@
click=
"goNext('/processing/
f
ileLibrary?id=' + item.id)"
@
click=
"goNext('/processing/
checkF
ileLibrary?id=' + item.id)"
>
车企文件库
</el-button
>
</div>
...
...
src/views/processing/carReview/write-check-form/components/sceneDialog.vue
View file @
d5e8db79
...
...
@@ -23,11 +23,11 @@
label-position=
"top"
class=
"scene-form"
>
<el-form-item
label=
"
评审
要求分类"
prop=
"reviewType"
>
<el-form-item
label=
"
标准
要求分类"
prop=
"reviewType"
>
<!-- 下拉框 -->
<el-select
v-model=
"sceneForm.reviewType"
placeholder=
"请选择
评审
要求分类"
placeholder=
"请选择
标准
要求分类"
style=
"width: 100%"
>
<el-option
...
...
@@ -101,10 +101,10 @@ export default {
sceneForm
:
{},
sceneRules
:
{
reviewType
:
[
{
required
:
true
,
message
:
'请选择
评审类型
'
,
trigger
:
'change'
}
{
required
:
true
,
message
:
'请选择
标准要求分类
'
,
trigger
:
'change'
}
],
sceneClassification
:
[
{
required
:
true
,
message
:
'请选择
场景分类
'
,
trigger
:
'change'
}
{
required
:
true
,
message
:
'请选择
评审类型
'
,
trigger
:
'change'
}
],
sceneContent
:
[
{
required
:
true
,
message
:
'请输入场景内容'
,
trigger
:
'blur'
}
...
...
src/views/processing/checkFileLibrary/components/dialog.vue
0 → 100644
View file @
d5e8db79
<
template
>
<el-dialog
:visible
.
sync=
"dialogManger.dialogVisible"
:title=
"modelTitle"
width=
"1200"
append-to-body
destroy-on-close
:close-on-click-modal=
"false"
:before-close=
"handleClose"
>
<el-form
ref=
"fileRef"
:model=
"model"
label-width=
"100px"
label-position=
"top"
class=
"file-form-class"
:rules=
"rules"
>
<el-row
:gutter=
"40"
>
<el-col
:span=
"12"
>
<el-form-item
label=
"企业名称"
prop=
"enterpriseName"
>
<el-input
v-model=
"model.enterpriseName"
placeholder=
"请输入"
></el-input>
</el-form-item>
<el-form-item
label=
"文件版本"
prop=
"version"
>
<el-input
v-model=
"model.version"
placeholder=
"请输入"
></el-input>
</el-form-item>
<el-form-item
label=
"文件状态"
prop=
"status"
>
<el-select
v-model=
"model.status"
placeholder=
"请选择"
style=
"width: 100%"
>
<el-option
v-for=
"item in dict.type.file_status"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
label=
"文件识别号"
prop=
"identifyNumber"
>
<el-input
v-model=
"model.identifyNumber"
placeholder=
"请输入"
></el-input>
</el-form-item>
<el-form-item
label=
"存储位置"
prop=
"storage"
>
<el-input
v-model=
"model.storage"
placeholder=
"请输入"
></el-input>
</el-form-item>
</el-col>
<el-col
:span=
"12"
>
<el-form-item
label=
"文件名称"
prop=
"fileName"
>
<el-input
v-model=
"model.fileName"
placeholder=
"请输入"
:disabled=
"true"
></el-input>
</el-form-item>
<el-form-item
label=
"发布日期"
prop=
"publishDate"
>
<el-date-picker
v-model=
"model.publishDate"
value-format=
"yyyy-MM-dd"
type=
"date"
placeholder=
"选择日期"
style=
"width: 100%"
>
</el-date-picker>
</el-form-item>
<el-form-item
label=
"文件照片"
prop=
"photo"
>
<ImageUpload
v-model=
"model.photo"
:limit=
"1"
></ImageUpload>
</el-form-item>
</el-col>
</el-row>
</el-form>
<div
slot=
"footer"
>
<el-button
@
click=
"handleClose()"
>
取消
</el-button>
<el-button
type=
"primary"
@
click=
"handleConfirm()"
>
保存
</el-button>
</div>
</el-dialog>
</
template
>
<
script
>
export
default
{
props
:
{
dialogManger
:
{
type
:
Object
,
default
()
{
return
{
dialogVisible
:
false
,
dialogEditId
:
0
}
}
}
},
dicts
:
[
'file_status'
],
data
()
{
return
{
model
:
this
.
$modelDataSource
({
url
:
'/review/enterprise/archive'
,
dataKey
:
'model'
,
attributes
:
{
id
:
0
,
enterpriseName
:
''
,
fileName
:
''
,
version
:
''
,
publishDate
:
''
,
status
:
''
,
storage
:
''
,
identifyNumber
:
''
,
photo
:
''
,
taskId
:
''
}
}),
rules
:
{
enterpriseName
:
[
{
required
:
true
,
message
:
'请输入企业名称'
,
trigger
:
'blur'
}
],
fileName
:
[
{
required
:
true
,
message
:
'请输入文件名称'
,
trigger
:
'blur'
}
],
version
:
[
{
required
:
true
,
message
:
'请输入文件版本'
,
trigger
:
'blur'
}
],
publishDate
:
[
{
required
:
true
,
message
:
'请选择发布日期'
,
trigger
:
'change'
}
],
status
:
[
{
required
:
true
,
message
:
'请选择文件状态'
,
trigger
:
'change'
}
],
storage
:
[
{
required
:
true
,
message
:
'请输入存储位置'
,
trigger
:
'blur'
}
],
identifyNumber
:
[
{
required
:
true
,
message
:
'请输入文件识别号'
,
trigger
:
'blur'
}
],
photo
:
[
{
required
:
true
,
message
:
'请选择文件照片'
,
trigger
:
'change'
}
]
}
}
},
computed
:
{
modelTitle
()
{
return
this
.
dialogManger
.
dialogEditId
?
'编辑'
:
'新增'
+
'校验场景'
}
},
watch
:
{
'dialogManger.dialogEditId'
(
newValue
)
{
this
.
model
.
fetch
(
newValue
,
{},
()
=>
{
this
.
dialogManger
.
dialogVisible
=
true
},
()
=>
{
this
.
$emit
(
'refresh'
)
}
)
}
},
methods
:
{
handleClose
()
{
this
.
$emit
(
'close'
)
},
handleConfirm
()
{
this
.
$refs
[
'fileRef'
].
validate
(
valid
=>
{
if
(
valid
)
{
this
.
model
.
save
(
()
=>
{
this
.
dialogManger
.
dialogVisible
=
false
this
.
$emit
(
'refresh'
)
},
errors
=>
{}
)
}
})
}
}
}
</
script
>
src/views/processing/checkFileLibrary/index.vue
0 → 100644
View file @
d5e8db79
<
template
>
<task-standard>
<div
slot=
"header-right"
>
<header-button
icon=
"arrow-left"
type=
"no-line"
@
click=
"goBack"
>
返回
</header-button>
</div>
<el-form
ref=
"queryForm"
:model=
"queryParams"
size=
"small"
:inline=
"true"
>
<template
v-if=
"showSearch"
>
<el-form-item
prop=
"fileName"
label=
"文件名称"
>
<el-input
v-model=
"queryParams.fileName"
placeholder=
"请输入"
clearable
@
keyup
.
enter
.
native=
"loadData"
/>
</el-form-item>
<el-form-item
prop=
"status"
label=
"文件状态"
>
<el-select
v-model=
"queryParams.status"
placeholder=
"请选择"
>
<el-option
v-for=
"item in dict.type.file_status"
:key=
"item.value"
:label=
"item.label"
:value=
"item.value"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item
prop=
"identifyNumber"
label=
"文件识别号"
>
<el-input
v-model=
"queryParams.identifyNumber"
placeholder=
"请输入"
clearable
@
keyup
.
enter
.
native=
"loadData"
/>
</el-form-item>
<el-form-item>
<el-button
type=
"primary"
icon=
"el-icon-search"
size=
"mini"
@
click=
"handleQuery"
>
查询
</el-button
>
<el-button
type=
"default"
icon=
"el-icon-refresh"
size=
"mini"
@
click=
"resetQuery"
>
重置
</el-button
>
</el-form-item>
</
template
>
<!-- <el-form-item>
<right-toolbar
:show-search.sync="showSearch"
@queryTable="loadData"
></right-toolbar>
</el-form-item> -->
</el-form>
<el-table
v-loading=
"tableLoading"
border
:scroll-x=
"'1500px'"
:default-sort=
"{ prop: 'createTime', order: 'descending' }"
:data=
"tableData"
>
<el-table-column
type=
"index"
width=
"55"
label=
"序号"
align=
"center"
>
<
template
slot-scope=
"scope"
>
<span>
{{
scope
.
$index
+
1
}}
</span>
</
template
>
</el-table-column>
<el-table-column
label=
"所属车企"
sortable
min-width=
"210"
prop=
"enterpriseName"
align=
"left"
>
</el-table-column>
<el-table-column
prop=
"fileName"
label=
"文件名称"
min-width=
"220"
align=
"left"
>
</el-table-column>
<el-table-column
prop=
"version"
label=
"文件版本"
min-width=
"100"
align=
"left"
>
</el-table-column>
<el-table-column
prop=
"publishDate"
label=
"发布日期"
min-width=
"100"
align=
"left"
>
<
template
slot-scope=
"scope"
>
<span>
{{
parseTime
(
scope
.
row
.
publishDate
,
'{y
}
-{m
}
-{d
}
'
)
}}
<
/span
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
prop
=
"status"
label
=
"文件状态"
min
-
width
=
"100"
align
=
"left"
>
<
template
slot
-
scope
=
"scope"
>
<
el
-
tag
v
-
if
=
"scope.row.status == 0"
size
=
"medium"
type
=
"success"
>
{{
getDictData
(
dict
.
type
.
file_status
,
scope
.
row
.
status
)
}}
<
/el-tag
>
<
el
-
tag
v
-
else
size
=
"medium"
type
=
"warning"
>
{{
getDictData
(
dict
.
type
.
file_status
,
scope
.
row
.
status
)
}}
<
/el-tag
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
prop
=
"storage"
label
=
"存储位置"
min
-
width
=
"210"
align
=
"left"
>
<
/el-table-column
>
<
el
-
table
-
column
prop
=
"identifyNumber"
label
=
"文件识别号"
min
-
width
=
"170"
align
=
"left"
>
<
/el-table-column
>
<
el
-
table
-
column
prop
=
"photo"
label
=
"文件照片"
min
-
width
=
"80"
align
=
"left"
>
<
template
slot
-
scope
=
"scope"
>
<
img
:
src
=
"baseUrl + scope.row.photo"
alt
=
"文件照片"
width
=
"36"
height
=
"36"
/>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
prop
=
"createBy"
label
=
"创建人员"
min
-
width
=
"130"
align
=
"left"
>
<
/el-table-column
>
<
el
-
table
-
column
label
=
"创建时间"
min
-
width
=
"170"
align
=
"left"
sortable
prop
=
"createTime"
>
<
template
slot
-
scope
=
"scope"
>
<
span
>
{{
parseTime
(
scope
.
row
.
createTime
)
}}
<
/span
>
<
/template
>
<
/el-table-column
>
<
el
-
table
-
column
v
-
if
=
"view == 1"
label
=
"操作"
align
=
"center"
min
-
width
=
"90"
fixed
=
"right"
class
-
name
=
"fixed-width"
>
<
template
slot
-
scope
=
"scope"
>
<
page
-
button
style
=
"margin: 0 auto"
icon
=
"edit"
title
=
"修改"
@
click
.
native
=
"handleUpdate(scope.row.id)"
><
/page-button
>
<
/template
>
<
/el-table-column
>
<
/el-table
>
<
yan
-
dialog
:
dialog
-
manger
=
"dialogManger"
@
refresh
=
"refreshList = true"
@
close
=
"dialogManger.dialogVisible = false"
><
/yan-dialog
>
<
pagination
:
total
=
"total"
:
background
=
"false"
:
page
.
sync
=
"queryParams.pageNum"
:
limit
.
sync
=
"queryParams.pageSize"
@
pagination
=
"loadData"
>
<
/pagination
>
<
/task-standard
>
<
/template
>
<
script
>
import
page
from
'@/mixins/page'
import
dialog
from
'./components/dialog.vue'
import
routerMixins
from
'@/mixins/router'
export
default
{
components
:
{
'yan-dialog'
:
dialog
}
,
dicts
:
[
'file_status'
],
mixins
:
[
page
,
routerMixins
],
data
()
{
return
{
// 弹窗管理器
dialogManger
:
{
dialogVisible
:
false
,
refreshList
:
false
,
dialogEditId
:
0
}
,
refreshList
:
false
,
baseUrl
:
process
.
env
.
VUE_APP_IMAGE_API
,
listUrl
:
'/review/enterprise/archive/findEnterpriseArchiveByTaskId'
,
// 表格loading状态
tableLoading
:
false
,
// 表格数据
tableData
:
[],
view
:
''
}
}
,
watch
:
{
refreshList
(
newVal
)
{
if
(
newVal
)
{
this
.
loadData
()
this
.
refreshList
=
false
}
}
}
,
created
()
{
this
.
queryParams
.
taskId
=
this
.
$route
.
query
.
id
this
.
view
=
this
.
$route
.
query
.
view
}
,
methods
:
{
resetQuery
()
{
// this.refs.queryForm.restForm() this.resetForm("queryForm");
this
.
queryParams
=
{
pageNum
:
this
.
queryParams
.
pageNum
,
pageSize
:
this
.
queryParams
.
pageSize
,
taskId
:
this
.
$route
.
query
.
id
}
this
.
handleQuery
()
}
,
handleUpdate
(
id
)
{
this
.
dialogManger
.
dialogVisible
=
true
this
.
dialogManger
.
dialogEditId
=
id
}
}
}
<
/script
>
<
style
lang
=
"scss"
scoped
><
/style
>
src/views/processing/fileLibrary/index.vue
View file @
d5e8db79
...
...
@@ -12,6 +12,7 @@
v-model=
"queryParams.fileName"
placeholder=
"请输入"
clearable
@
keyup
.
enter
.
native=
"loadData"
/>
</el-form-item>
<el-form-item
prop=
"status"
label=
"文件状态"
>
...
...
@@ -30,6 +31,7 @@
v-model=
"queryParams.identifyNumber"
placeholder=
"请输入"
clearable
@
keyup
.
enter
.
native=
"loadData"
/>
</el-form-item>
<el-form-item>
...
...
@@ -107,7 +109,10 @@
align
=
"left"
>
<
template
slot
-
scope
=
"scope"
>
<
el
-
tag
size
=
"medium"
type
=
"success"
<
el
-
tag
v
-
if
=
"scope.row.status == 0"
size
=
"medium"
type
=
"success"
>
{{
getDictData
(
dict
.
type
.
file_status
,
scope
.
row
.
status
)
}}
<
/el-tag
>
<
el
-
tag
v
-
else
size
=
"medium"
type
=
"warning"
>
{{
getDictData
(
dict
.
type
.
file_status
,
scope
.
row
.
status
)
}}
<
/el-tag
>
<
/template
>
...
...
src/views/processing/processed-review/index.vue
View file @
d5e8db79
...
...
@@ -13,7 +13,7 @@
v-for=
"(item, key) in standardList"
:key=
"key"
:value=
"item.id"
:label=
"item.name"
:label=
"item.
standardNo + item.
name"
></el-option>
</el-select>
</el-form-item>
...
...
@@ -197,7 +197,7 @@
type=
"primary"
plain
size=
"mini"
@
click=
"goNext('/processing/
f
ileLibrary?id=' + item.id)"
@
click=
"goNext('/processing/
checkF
ileLibrary?id=' + item.id)"
>
车企文件库
</el-button
>
</div>
...
...
src/views/processing/retention-file/index.vue
View file @
d5e8db79
...
...
@@ -58,6 +58,7 @@ export default {
return
{
task
:
{},
taskId
:
1
,
view
:
''
,
fileUrl
:
'http://storage.xuetangx.com/public_assets/xuetangx/PDF/PlayerAPI_v1.0.6.pdf'
}
...
...
@@ -67,6 +68,7 @@ export default {
this
.
taskId
=
this
.
$route
.
query
.
id
this
.
getTaskDetail
()
}
this
.
view
=
this
.
$route
.
query
.
view
},
methods
:
{
async
getTaskDetail
()
{
...
...
src/views/processing/systemReview/write-check-form/components/sceneDialog.vue
View file @
d5e8db79
...
...
@@ -23,11 +23,11 @@
label-position=
"top"
class=
"scene-form"
>
<el-form-item
label=
"
评审
要求分类"
prop=
"reviewType"
>
<el-form-item
label=
"
标准
要求分类"
prop=
"reviewType"
>
<!-- 下拉框 -->
<el-select
v-model=
"sceneForm.reviewType"
placeholder=
"请选择
评审
要求分类"
placeholder=
"请选择
标准
要求分类"
style=
"width: 100%"
>
<el-option
...
...
@@ -101,10 +101,10 @@ export default {
sceneForm
:
{},
sceneRules
:
{
reviewType
:
[
{
required
:
true
,
message
:
'请选择
评审类型
'
,
trigger
:
'change'
}
{
required
:
true
,
message
:
'请选择
标准要求分类
'
,
trigger
:
'change'
}
],
sceneClassification
:
[
{
required
:
true
,
message
:
'请选择
场景分类
'
,
trigger
:
'change'
}
{
required
:
true
,
message
:
'请选择
评审类型
'
,
trigger
:
'change'
}
],
sceneContent
:
[
{
required
:
true
,
message
:
'请输入场景内容'
,
trigger
:
'blur'
}
...
...
src/views/processing/systemReview/write-check-form/index.vue
View file @
d5e8db79
...
...
@@ -653,6 +653,8 @@ export default {
this
.
$modal
.
msgError
(
res
.
msg
)
}
})
}
else
{
this
.
$message
.
error
(
'您有未保存内容,请点击保存按钮'
)
}
}
})
...
...
src/views/processing/unprocessed-review/index.vue
View file @
d5e8db79
...
...
@@ -13,7 +13,7 @@
v-for=
"(item, key) in standardList"
:key=
"key"
:value=
"item.id"
:label=
"item.name"
:label=
"item.
standardNo + item.
name"
></el-option>
</el-select>
</el-form-item>
...
...
@@ -443,7 +443,6 @@ export default {
* 企业文件库
*/
handleFileLibrary
(
item
)
{
console
.
log
(
item
)
this
.
$router
.
push
({
path
:
'/processing/fileLibrary?id='
+
item
.
id
})
...
...
src/views/setting/company/index.vue
View file @
d5e8db79
...
...
@@ -74,6 +74,7 @@
border
:scroll-x=
"'1500px'"
:data=
"tableData"
:default-sort=
"{ prop: 'createTime', order: 'descending' }"
@
sort-change=
"sort_change"
>
<el-table-column
type=
"index"
width=
"55"
label=
"序号"
align=
"center"
>
...
...
src/views/setting/sample/index.vue
View file @
d5e8db79
...
...
@@ -150,7 +150,7 @@
@
click=
"goTaskDetails(item.taskId)"
>
{{
item
.
taskNo
?
item
.
taskNo
:
'--'
}}
<span
v-show=
"index + 1 != scope.row.taskSampleRelation.length"
>
,
、
</span></el-link
>
</div>
...
...
src/views/setting/sample/taskDetails/index.vue
View file @
d5e8db79
<
template
>
<page-standard>
<div
class=
"header"
>
<div
class=
"header-title"
>
任务编号
</div>
<div
class=
"header-state"
>
(任务状态:)
</div>
<div
class=
"header-title"
>
{{
taskForm
.
taskNo
}}
-
{{
taskForm
.
taskName
}}
</div>
<div
class=
"header-state"
>
(任务状态:
<dict-tag
:options=
"dict.type.system_task_status"
:value=
"taskForm.taskStatus"
/>
)
</div>
</div>
<div
class=
"detailsCard"
>
<el-row
:gutter=
"41"
style=
"margin-bottom: 24px"
>
<el-col
:span=
"8"
class=
"card-title"
>
检验依据:
<sapn
class=
"card-contnet"
>
GBxxx
</sapn>
</el-col>
<el-col
:span=
"8"
class=
"card-title"
>
检验项目:
</el-col>
<el-col
:span=
"8"
class=
"card-title"
>
保密等级:
</el-col>
</el-row>
<el-row
:gutter=
"41"
style=
"margin-bottom: 24px"
>
<el-col
:span=
"8"
class=
"card-title"
>
产品名称:
</el-col>
<el-col
:span=
"8"
class=
"card-title"
>
小组成员:
</el-col>
<el-col
:span=
"8"
class=
"card-title"
>
委托单位:
</el-col>
</el-row>
<el-row
:gutter=
"41"
style=
"margin-bottom: 24px"
>
<el-col
:span=
"8"
class=
"card-title"
>
车辆型号:
</el-col>
</el-row>
<el-form
:model=
"taskForm"
size=
"small"
label-position=
"right"
label-width=
"100px"
>
<el-row
:gutter=
"41"
>
<el-col
:span=
"8"
>
<el-form-item
label=
"检验依据:"
>
<sapn
class=
"card-contnet"
>
{{
taskForm
.
name
}}
</sapn>
</el-form-item>
</el-col>
<el-col
:span=
"8"
class=
"card-title"
>
<el-form-item
label=
"检验项目:"
>
<el-checkbox-group
v-model=
"taskList"
>
<el-checkbox
v-for=
"(item, index) in taskList"
:key=
"index"
:label=
"item"
disabled
></el-checkbox>
</el-checkbox-group>
</el-form-item>
</el-col>
<el-col
:span=
"8"
class=
"card-title"
style=
"display: flex"
>
<el-form-item
label=
"保密等级:"
>
<dict-tag
:options=
"dict.type.confidentiality_level"
:value=
"taskForm.confidentialityLevel"
/>
</el-form-item>
</el-col>
</el-row>
<el-row
:gutter=
"41"
>
<el-col
:span=
"8"
class=
"card-title"
>
<el-form-item
label=
"产品名称:"
>
<sapn
class=
"card-contnet"
>
{{
taskForm
.
productName
}}
</sapn>
</el-form-item>
</el-col>
<el-col
:span=
"8"
class=
"card-title"
>
<el-form-item
label=
"小组成员:"
>
<sapn
class=
"card-contnet"
>
{{
taskForm
.
leader
?
taskForm
.
leader
+
'(组长)、'
:
''
}}
<div
v-for=
"(item, index) in taskForm.auditors"
:key=
"index"
>
{{
item
.
name
}}
<span
v-show=
"index + 1 != taskForm.auditors.length"
>
、
</span>
</div>
</sapn>
</el-form-item>
</el-col>
<el-col
:span=
"8"
class=
"card-title"
>
<el-form-item
label=
"委托单位:"
>
<sapn
class=
"card-contnet"
>
{{
taskForm
.
entrustedUnit
}}
</sapn>
</el-form-item>
</el-col>
</el-row>
<el-row
:gutter=
"41"
>
<el-col
:span=
"8"
class=
"card-title"
>
<el-form-item
label=
"车辆型号:"
>
<sapn
class=
"card-contnet"
>
{{
taskForm
.
productModel
}}
</sapn>
</el-form-item>
</el-col>
</el-row>
</el-form>
</div>
<div>
<el-tabs
v-model=
"activeName"
@
tab-click=
"tabClick"
>
...
...
@@ -36,14 +94,16 @@
<el-col
:span=
"4"
>
<el-progress
type=
"circle"
:percentage=
"30"
:percentage=
"
percentageChange(dataStatistic.systemDetailsPass)
"
color=
"#13BE24"
:width=
"1
2
0"
:width=
"1
3
0"
:stroke-width=
"16"
:format=
"format"
></el-progress>
</el-col>
<el-col
:span=
"
4
"
>
<el-col
:span=
"
6
"
>
<div
class=
"prograss-laout"
style=
"text-align: end"
>
<span
class=
"line-prograss-title"
>
审查细则(条)
</span>
<span
class=
"line-prograss-title"
...
...
@@ -55,32 +115,44 @@
<span
class=
"line-prograss-title"
>
审查中(个)
</span>
</div>
</el-col>
<el-col
:span=
"1
4
"
>
<el-col
:span=
"1
2
"
>
<div
class=
"prograss-laout"
>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"70"
:percentage=
"
percentageChange(dataStatistic.systemDetails)
"
:format=
"progressLine"
text-color=
"#fff"
></el-progress>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"100"
:percentage=
"
percentageChange(dataStatistic.systemDetailsPassNum)
"
:format=
"progressLine"
status=
"success"
text-color=
"#fff"
></el-progress>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"80"
:percentage=
"
percentageChange(dataStatistic.systemDetailsNoPassNum)
"
:format=
"progressLine"
status=
"warning"
text-color=
"#fff"
></el-progress>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"50"
:percentage=
"
percentageChange(dataStatistic.systemDetailsUnderNum)
"
:format=
"progressLine"
status=
"exception"
color=
"#f98921"
text-color=
"#fff"
...
...
@@ -97,14 +169,16 @@
<el-col
:span=
"4"
>
<el-progress
type=
"circle"
:percentage=
"30"
:percentage=
"
percentageChange(dataStatistic.systemStandardsPass)
"
color=
"#13BE24"
:width=
"1
2
0"
:width=
"1
3
0"
:stroke-width=
"16"
:format=
"format"
></el-progress>
</el-col>
<el-col
:span=
"
4
"
>
<el-col
:span=
"
6
"
>
<div
class=
"prograss-laout"
style=
"text-align: end"
>
<span
class=
"line-prograss-title"
>
标准条款(个)
</span>
<span
class=
"line-prograss-title"
...
...
@@ -116,32 +190,48 @@
<span
class=
"line-prograss-title"
>
审查中(个)
</span>
</div>
</el-col>
<el-col
:span=
"1
4
"
>
<el-col
:span=
"1
2
"
>
<div
class=
"prograss-laout"
>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"70"
:percentage=
"
percentageChange(dataStatistic.systemStandards)
"
:format=
"progressLine"
text-color=
"#fff"
></el-progress>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"100"
:percentage=
"
percentageChange(dataStatistic.systemStandardsPassNum)
"
:format=
"progressLine"
status=
"success"
text-color=
"#fff"
></el-progress>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"80"
:percentage=
"
percentageChange(
dataStatistic.systemStandardsNoPassNum
)
"
:format=
"progressLine"
status=
"warning"
text-color=
"#fff"
></el-progress>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"50"
:percentage=
"
percentageChange(
dataStatistic.systemStandardsUnderNum
)
"
:format=
"progressLine"
status=
"exception"
color=
"#f98921"
text-color=
"#fff"
...
...
@@ -160,54 +250,68 @@
<el-row
:gutter=
"40"
>
<el-col
:span=
"12"
>
<div
style=
"border: 1px solid #ebebeb; padding: 24px 0 24px 24px"
>
<el-row
style=
"text-align: center
"
>
用例维度
</el-row>
<el-row
class=
"prograss-title
"
>
用例维度
</el-row>
<el-row
:gutter=
"20"
>
<el-col
:span=
"4"
>
<el-progress
type=
"circle"
:percentage=
"30"
:percentage=
"
percentageChange(dataStatistic.carDetailsPass)
"
color=
"#13BE24"
:width=
"1
2
0"
:width=
"1
3
0"
:stroke-width=
"16"
:format=
"format"
></el-progress>
</el-col>
<el-col
:span=
"
4
"
>
<el-col
:span=
"
6
"
>
<div
class=
"prograss-laout"
style=
"text-align: end"
>
<span
class=
"line-prograss-title"
>
审查细则(条)
</span>
<span
class=
"line-prograss-title"
>
测试用例合计
(个)
</span
>
审查细则通过
(个)
</span
>
<span
class=
"line-prograss-title"
>
测试通过(个)
</span>
<span
class=
"line-prograss-title"
>
测试未通过(个)
</span>
<span
class=
"line-prograss-title"
>
执行未完成(个)
</span>
<span
class=
"line-prograss-title"
>
审查细则未通过(个)
</span
>
<span
class=
"line-prograss-title"
>
审查中(个)
</span>
</div>
</el-col>
<el-col
:span=
"1
4
"
>
<el-col
:span=
"1
2
"
>
<div
class=
"prograss-laout"
>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"70"
:percentage=
"percentageChange(dataStatistic.carDetails)"
:format=
"progressLine"
text-color=
"#fff"
></el-progress>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"100"
:percentage=
"
percentageChange(dataStatistic.carDetailsPassNum)
"
:format=
"progressLine"
status=
"success"
text-color=
"#fff"
></el-progress>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"80"
:percentage=
"
percentageChange(dataStatistic.carDetailsNoPassNum)
"
:format=
"progressLine"
status=
"warning"
text-color=
"#fff"
></el-progress>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"50"
:percentage=
"
percentageChange(dataStatistic.carDetailsUnderNum)
"
:format=
"progressLine"
status=
"exception"
color=
"#f98921"
text-color=
"#fff"
...
...
@@ -219,56 +323,70 @@
</el-col>
<el-col
:span=
"12"
>
<div
style=
"border: 1px solid #ebebeb; padding: 24px 0 24px 24px"
>
<el-row
style=
"text-align: center
"
>
合规维度
</el-row>
<el-row
class=
"prograss-title
"
>
合规维度
</el-row>
<el-row
:gutter=
"20"
>
<el-col
:span=
"4"
>
<el-progress
type=
"circle"
:percentage=
"30"
:percentage=
"
percentageChange(dataStatistic.carStandardsPass)
"
color=
"#13BE24"
:width=
"1
2
0"
:width=
"1
3
0"
:stroke-width=
"16"
:format=
"format"
></el-progress>
</el-col>
<el-col
:span=
"
4
"
>
<el-col
:span=
"
6
"
>
<div
class=
"prograss-laout"
style=
"text-align: end"
>
<span
class=
"line-prograss-title"
>
标准条款(个)
</span>
<span
class=
"line-prograss-title"
>
审查细则
通过(个)
</span
>
标准条款
通过(个)
</span
>
<span
class=
"line-prograss-title"
>
审查细则
未通过(个)
</span
>
标准条款
未通过(个)
</span
>
<span
class=
"line-prograss-title"
>
审查中(个)
</span>
</div>
</el-col>
<el-col
:span=
"1
4
"
>
<el-col
:span=
"1
2
"
>
<div
class=
"prograss-laout"
>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"70"
:percentage=
"
percentageChange(dataStatistic.carStandards)
"
:format=
"progressLine"
text-color=
"#fff"
></el-progress>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"100"
:percentage=
"
percentageChange(dataStatistic.carStandardsPassNum)
"
:format=
"progressLine"
status=
"success"
text-color=
"#fff"
></el-progress>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"80"
:percentage=
"
percentageChange(dataStatistic.carStandardsNoPassNum)
"
:format=
"progressLine"
status=
"warning"
text-color=
"#fff"
></el-progress>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"50"
:percentage=
"
percentageChange(dataStatistic.carStandardsUnderNum)
"
:format=
"progressLine"
status=
"exception"
color=
"#f98921"
text-color=
"#fff"
...
...
@@ -281,61 +399,73 @@
</el-row>
<div
class=
"tip-navigation"
>
<div
class=
"tip"
></div>
<div
class=
"tip-title"
>
体系审查
</div>
<div
class=
"tip-title"
>
车型试验
</div>
</div>
<el-row
:gutter=
"40"
>
<el-col
:span=
"12"
>
<div
style=
"border: 1px solid #ebebeb; padding: 24px 0 24px 24px"
>
<el-row
style=
"text-align: center
"
>
用例维度
</el-row>
<el-row
class=
"prograss-title
"
>
用例维度
</el-row>
<el-row
:gutter=
"20"
>
<el-col
:span=
"4"
>
<el-progress
type=
"circle"
:percentage=
"30"
:percentage=
"
percentageChange(dataStatistic.testDetailsPass)
"
color=
"#13BE24"
:width=
"1
2
0"
:width=
"1
3
0"
:stroke-width=
"16"
:format=
"format"
:format=
"format
Test
"
></el-progress>
</el-col>
<el-col
:span=
"
4
"
>
<el-col
:span=
"
6
"
>
<div
class=
"prograss-laout"
style=
"text-align: end"
>
<span
class=
"line-prograss-title"
>
审查细则(条)
</span>
<span
class=
"line-prograss-title"
>
审查细则通过(个)
</span
>
<span
class=
"line-prograss-title"
>
审查细则未通过
(个)
</span
>
测试用例合计
(个)
</span
>
<span
class=
"line-prograss-title"
>
审查中(个)
</span>
<span
class=
"line-prograss-title"
>
测试通过(个)
</span>
<span
class=
"line-prograss-title"
>
测试未通过(个)
</span>
<span
class=
"line-prograss-title"
>
执行未完成(个)
</span>
</div>
</el-col>
<el-col
:span=
"1
4
"
>
<el-col
:span=
"1
2
"
>
<div
class=
"prograss-laout"
>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"70"
:percentage=
"
percentageChange(dataStatistic.testDetails)
"
:format=
"progressLine"
text-color=
"#fff"
></el-progress>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"100"
:percentage=
"
percentageChange(dataStatistic.testDetailsPassNum)
"
:format=
"progressLine"
status=
"success"
text-color=
"#fff"
></el-progress>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"80"
:percentage=
"
percentageChange(dataStatistic.testDetailsNoPassNum)
"
:format=
"progressLine"
status=
"warning"
text-color=
"#fff"
></el-progress>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"50"
:percentage=
"
percentageChange(dataStatistic.testDetailsUnderNum)
"
:format=
"progressLine"
status=
"exception"
color=
"#f98921"
text-color=
"#fff"
...
...
@@ -347,56 +477,66 @@
</el-col>
<el-col
:span=
"12"
>
<div
style=
"border: 1px solid #ebebeb; padding: 24px 0 24px 24px"
>
<el-row
style=
"text-align: center"
>
用例
维度
</el-row>
<el-row
class=
"prograss-title"
>
合规
维度
</el-row>
<el-row
:gutter=
"20"
>
<el-col
:span=
"4"
>
<el-progress
type=
"circle"
:percentage=
"30"
:percentage=
"
percentageChange(dataStatistic.testStandardsPass)
"
color=
"#13BE24"
:width=
"1
2
0"
:width=
"1
3
0"
:stroke-width=
"16"
:format=
"format"
></el-progress>
</el-col>
<el-col
:span=
"
4
"
>
<el-col
:span=
"
6
"
>
<div
class=
"prograss-laout"
style=
"text-align: end"
>
<span
class=
"line-prograss-title"
>
审查细则(条)
</span>
<span
class=
"line-prograss-title"
>
审查细则通过(个)
</span
>
<span
class=
"line-prograss-title"
>
审查细则未通过(个)
</span
>
<span
class=
"line-prograss-title"
>
审查中(个)
</span>
<span
class=
"line-prograss-title"
>
标准条款(个)
</span>
<span
class=
"line-prograss-title"
>
测试通过(个)
</span>
<span
class=
"line-prograss-title"
>
测试未通过(个)
</span>
<span
class=
"line-prograss-title"
>
执行未完成(个)
</span>
</div>
</el-col>
<el-col
:span=
"1
4
"
>
<el-col
:span=
"1
2
"
>
<div
class=
"prograss-laout"
>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"70"
:percentage=
"
percentageChange(dataStatistic.testDetailsUnderNum)
"
:format=
"testStandards"
text-color=
"#fff"
></el-progress>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"100"
:percentage=
"
percentageChange(dataStatistic.testStandardsPassNum)
"
:format=
"testStandards"
status=
"success"
text-color=
"#fff"
></el-progress>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"80"
:percentage=
"
percentageChange(dataStatistic.testStandardsNoPassNum)
"
:format=
"testStandards"
status=
"warning"
text-color=
"#fff"
></el-progress>
<el-progress
:text-inside=
"true"
:stroke-width=
"16"
:percentage=
"50"
:percentage=
"
percentageChange(dataStatistic.testStandardsUnderNum)
"
:format=
"testStandards"
status=
"exception"
color=
"#f98921"
text-color=
"#fff"
...
...
@@ -411,7 +551,212 @@
<el-tab-pane
label=
"样品信息"
name=
"sampleInformation"
>
<div
class=
"tip-navigation"
>
<div
class=
"tip"
></div>
<div
class=
"tip-title"
>
整车样品信息
</div>
<div
class=
"tip-title"
>
{{
'整车样品信息 ('
+
taskForm
.
completeVehicleSample
.
length
+
')'
}}
</div>
</div>
<div
style=
"display: flex; flex-wrap: wrap"
>
<div
v-for=
"(item, index) in taskForm.completeVehicleSample"
:key=
"index"
class=
"sampleCard"
>
<div
class=
"sampleHeader"
>
<div
class=
"avater"
>
<image-preview
width=
"62px"
height=
"62px"
:src=
"item.trademark"
></image-preview>
</div>
<div
class=
"title"
>
<div
class=
"top"
>
{{
item
.
sampleNumber
}}
</div>
<div
class=
"bottom"
>
{{
item
.
sampleName
}}
</div>
</div>
</div>
<div
style=
"margin-left: 4.8rem"
>
<div
v-if=
"item.samplePhotos"
>
<image-preview
width=
"32px"
height=
"32px"
:src=
"item.samplePhotos"
></image-preview>
</div>
<div
v-else
>
暂无样品照片
</div>
</div>
<el-divider></el-divider>
<el-row
:gutter=
"20"
style=
"margin-bottom: 20px"
>
<el-col
:span=
"8"
>
<div
class=
"greenCard"
>
<div>
<div
class=
"title"
>
样品数量
</div>
<div
class=
"content"
>
{{
item
.
numberOfSamples
?
item
.
numberOfSamples
:
'-'
}}
</div>
</div>
</div>
</el-col>
<el-col
:span=
"8"
>
<div
class=
"yellowCard"
>
<div>
<div
class=
"title"
>
送样日期
</div>
<div
class=
"content"
>
{{
item
.
deliveryDate
?
item
.
deliveryDate
:
'-'
}}
</div>
</div>
</div>
</el-col>
<el-col
:span=
"8"
>
<div
class=
"blueCard"
>
<div>
<div
class=
"title"
>
送样者
</div>
<div
class=
"content"
>
{{
item
.
sampleSender
?
item
.
sampleSender
:
'-'
}}
</div>
</div>
</div>
</el-col>
</el-row>
<el-row
:gutter=
"20"
>
<el-col
:span=
"8"
>
<div
class=
"greenCard"
>
<div>
<div
class=
"title"
>
车辆识别码
</div>
<div
class=
"content"
>
{{
item
.
identificationCode
?
item
.
identificationCode
:
'-'
}}
</div>
</div>
</div>
</el-col>
<el-col
:span=
"8"
>
<div
class=
"yellowCard"
>
<div>
<div
class=
"title"
>
生产日期
</div>
<div
class=
"content"
>
{{
item
.
manufactureDate
?
item
.
manufactureDate
:
'-'
}}
</div>
</div>
</div>
</el-col>
<el-col
:span=
"8"
>
<div
class=
"blueCard"
>
<div>
<div
class=
"title"
>
生产企业
</div>
<div
class=
"content"
>
{{
item
.
manufacturingEnterprise
?
item
.
manufacturingEnterprise
:
'-'
}}
</div>
</div>
</div>
</el-col>
</el-row>
</div>
</div>
<div
class=
"tip-navigation"
>
<div
class=
"tip"
></div>
<div
class=
"tip-title"
>
{{
'零部件样品信息 ('
+
taskForm
.
partVehicleSample
.
length
+
')'
}}
</div>
</div>
<div
style=
"display: flex; flex-wrap: wrap"
>
<div
v-for=
"(item, index) in taskForm.partVehicleSample"
:key=
"index"
class=
"sampleCard"
>
<div
class=
"sampleHeader"
>
<div
class=
"avater"
>
<image-preview
width=
"62px"
height=
"62px"
:src=
"item.trademark"
></image-preview>
</div>
<div
class=
"title"
>
<div
class=
"top"
>
{{
item
.
sampleNumber
}}
</div>
<div
class=
"bottom"
>
{{
item
.
sampleName
}}
</div>
</div>
</div>
<div
style=
"margin-left: 4.8rem"
>
<div
v-if=
"item.samplePhotos"
>
<image-preview
width=
"32px"
height=
"32px"
:src=
"item.samplePhotos"
></image-preview>
</div>
<div
v-else
>
暂无样品照片
</div>
</div>
<el-divider></el-divider>
<el-row
:gutter=
"20"
style=
"margin-bottom: 20px"
>
<el-col
:span=
"8"
>
<div
class=
"greenCard"
>
<div>
<div
class=
"title"
>
样品数量
</div>
<div
class=
"content"
>
{{
item
.
numberOfSamples
?
item
.
numberOfSamples
:
'-'
}}
</div>
</div>
</div>
</el-col>
<el-col
:span=
"8"
>
<div
class=
"yellowCard"
>
<div>
<div
class=
"title"
>
送样日期
</div>
<div
class=
"content"
>
{{
item
.
deliveryDate
?
item
.
deliveryDate
:
'-'
}}
</div>
</div>
</div>
</el-col>
<el-col
:span=
"8"
>
<div
class=
"blueCard"
>
<div>
<div
class=
"title"
>
送样者
</div>
<div
class=
"content"
>
{{
item
.
sampleSender
?
item
.
sampleSender
:
'-'
}}
</div>
</div>
</div>
</el-col>
</el-row>
<el-row
:gutter=
"20"
>
<el-col
:span=
"8"
>
<div
class=
"yellowCard"
>
<div>
<div
class=
"title"
>
生产日期
</div>
<div
class=
"content"
>
{{
item
.
manufactureDate
?
item
.
manufactureDate
:
'-'
}}
</div>
</div>
</div>
</el-col>
<el-col
:span=
"16"
>
<div
class=
"blueCard"
>
<div>
<div
class=
"title"
>
生产企业
</div>
<div
class=
"content"
>
{{
item
.
manufacturingEnterprise
?
item
.
manufacturingEnterprise
:
'-'
}}
</div>
</div>
</div>
</el-col>
</el-row>
</div>
</div>
</el-tab-pane>
</el-tabs>
...
...
@@ -419,16 +764,60 @@
</page-standard>
</
template
>
<
script
>
import
{
selectDataStatistics
,
selectTaskInfo
}
from
'@/api/system/sample'
import
dict
from
'@/utils/dict'
export
default
{
dicts
:
[
'system_task_status'
,
'confidentiality_level'
],
data
()
{
return
{
taskList
:
[],
taskId
:
''
,
taskForm
:
{},
dataStatistic
:
{
systemDetailsPass
:
0
},
activeName
:
'dataStatistics'
}
},
created
()
{
this
.
taskId
=
this
.
$route
.
query
.
taskId
this
.
getTaskInfo
()
this
.
getDataStatistics
()
},
methods
:
{
dict
,
getDataStatistics
()
{
selectDataStatistics
({
id
:
this
.
taskId
}).
then
(
res
=>
{
this
.
dataStatistic
=
res
.
data
console
.
log
(
'数据统计'
,
res
)
})
},
getTaskInfo
()
{
selectTaskInfo
({
id
:
this
.
taskId
}).
then
(
res
=>
{
this
.
taskForm
=
res
.
data
if
(
res
.
data
.
taskList
)
{
this
.
taskList
=
this
.
taskForm
.
taskList
.
split
(
','
)
}
console
.
log
(
'任务详情'
,
res
)
})
},
tabClick
()
{},
formatTest
(
percentage
)
{
return
(
percentage
=
`测试通过率\n\n
${
percentage
}
%`
)
},
format
(
percentage
)
{
return
(
percentage
=
`审查通过率\n\n
${
percentage
}
%`
)
},
progressLine
(
percentage
)
{
return
(
percentage
=
`
${
percentage
}
`
)
},
percentageChange
(
data
)
{
if
(
data
)
{
return
data
}
else
{
return
0
}
}
}
}
...
...
@@ -442,11 +831,13 @@ export default {
padding
:
25px
25px
0
25px
;
margin-bottom
:
40px
;
.card-title
{
display
:
flex
;
font-size
:
14px
;
font-weight
:
700
;
color
:
#606266
;
}
.card-contnet
{
display
:
flex
;
font-size
:
14px
;
font-weight
:
400
;
color
:
#606266
;
...
...
@@ -462,6 +853,8 @@ export default {
margin-bottom
:
16px
;
}
.header-state
{
display
:
flex
;
justify-content
:
center
;
font-size
:
16px
;
font-weight
:
400
;
color
:
#13be24
;
...
...
@@ -503,6 +896,100 @@ export default {
color
:
#606266
;
margin-bottom
:
20px
;
}
.sampleCard
{
width
:
30%
;
margin-bottom
:
20px
;
margin-right
:
40px
;
padding
:
25px
;
background
:
#ffffff
;
border
:
1px
solid
#ebebeb
;
border-radius
:
4px
;
.sampleHeader
{
display
:
flex
;
.avater
{
margin-right
:
14px
;
}
.title
{
height
:
62px
;
display
:
flex
;
flex-direction
:
column
;
justify-content
:
space-between
;
.top
{
font-size
:
16px
;
font-weight
:
700
;
color
:
#303133
;
}
.bottom
{
font-size
:
14px
;
font-weight
:
400
;
color
:
#606266
;
}
}
}
.greenCard
{
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
height
:
70px
;
background
:
rgba
(
19
,
190
,
36
,
0
.1
);
border-radius
:
8px
;
.title
{
text-align
:
center
;
font-size
:
14px
;
font-weight
:
400
;
color
:
#303133
;
margin-bottom
:
10px
;
}
.content
{
font-size
:
14px
;
font-weight
:
700
;
color
:
#13be24
;
text-align
:
center
;
}
}
.yellowCard
{
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
height
:
70px
;
background
:
rgba
(
249
,
171
,
56
,
0
.1
);
border-radius
:
8px
;
.title
{
text-align
:
center
;
font-size
:
14px
;
font-weight
:
400
;
color
:
#303133
;
margin-bottom
:
10px
;
}
.content
{
font-size
:
14px
;
font-weight
:
700
;
color
:
#f9ab38
;
text-align
:
center
;
}
}
.blueCard
{
display
:
flex
;
justify-content
:
center
;
align-items
:
center
;
height
:
70px
;
background
:
rgba
(
26
,
111
,
215
,
0
.1
);
border-radius
:
8px
;
.title
{
font-size
:
14px
;
font-weight
:
400
;
color
:
#303133
;
margin-bottom
:
10px
;
text-align
:
center
;
}
.content
{
font-size
:
14px
;
font-weight
:
700
;
color
:
#1a6fd7
;
text-align
:
center
;
}
}
}
::v-deep
.el-progress__text
{
white-space
:
pre
;
}
...
...
src/views/setting/testMatrix/useCaseDetails/index.vue
View file @
d5e8db79
...
...
@@ -19,7 +19,8 @@ export default {
data
()
{
return
{
id
:
this
.
$route
.
query
,
url
:
'https://10.12.48.78/usecase/car/caseManage/case/casePublishDetail/case_items;375'
url
:
'http://10.12.48.78:8090/car/caseManage/case/casePublishDetail/case_items;375'
// http://10.12.48.80:1234/car/caseManage/case/casePublishDetail/case_items;375
}
},
mounted
()
{
...
...
src/views/task/on/index.vue
View file @
d5e8db79
...
...
@@ -24,7 +24,7 @@
v-for=
"(item, key) in standardList"
:key=
"key"
:value=
"item.id"
:label=
"item.name"
:label=
"item.
standardNo + item.
name"
></el-option>
</el-select>
</el-form-item>
...
...
@@ -462,7 +462,7 @@
type=
"primary"
plain
size=
"mini"
@
click=
"goNext('/processing/
f
ileLibrary?id=' + item.id)"
@
click=
"goNext('/processing/
checkF
ileLibrary?id=' + item.id)"
>
车企文件库
</el-button
>
</div>
...
...
@@ -585,15 +585,6 @@ export default {
* 耗时计算
*/
getHourDiff
,
/**
* 企业文件库
*/
handleFileLibrary
(
item
)
{
console
.
log
(
item
)
this
.
$router
.
push
({
path
:
'/processing/fileLibrary?id='
+
item
.
id
})
},
/**
* 开始任务
* @param {} item 单项数据
...
...
vue.config.js
View file @
d5e8db79
...
...
@@ -42,7 +42,7 @@ module.exports = {
}
},
[
process
.
env
.
VUE_APP_CLIENT_API
]:
{
target
:
`http
s://10.12.48.78/usecase
`
,
target
:
`http
://10.12.48.78:8090
`
,
changeOrigin
:
true
,
pathRewrite
:
{
[
'^'
+
process
.
env
.
VUE_APP_CLIENT_API
]:
''
...
...
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