Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
Administrator
/
project_progress
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Settings
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit 3dd71352
authored
Apr 30, 2024
by
liangzhen
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
提交
1 parent
64e6048f
Show whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
1650 additions
and
189 deletions
src/api/index.js
src/router/index.js
src/views/assessChecks/auxiliarySelection.vue
src/views/assessChecks/components/seachList.vue
src/views/assessChecks/components/tableList.vue
src/views/assessChecks/confirmRelease.vue
vue.config.js
src/api/index.js
View file @
3dd7135
// import request from '@/utils/request'
// let mainURL="192.168.8.248:18101"
import
{
get
,
post
,
download
}
from
'@/utils/http'
// 获取流程列表
export
function
evalBatchInfo
(
params
)
{
return
post
(
`/api/postEvalBatchInfo/`
,
params
)
}
//专家库
export
function
expertInfo
(
params
)
{
return
post
(
`/api/expertInfo/`
,
params
)
}
//查询关联专家
export
function
expert
(
params
)
{
return
post
(
`/api/expertInfo/expert`
,
params
)
}
//专家删除
export
function
delEvalBatchInfo
(
params
)
{
return
post
(
`/api/postEvalBatchInfo/del`
,
params
)
}
//辅助下发
export
function
sendEvalBatchInfo
(
params
)
{
return
post
(
`/api/postEvalBatchInfo/xf`
,
params
)
}
//编辑
export
function
updEvalBatchInfo
(
params
)
{
return
post
(
`/api/postEvalBatchInfo/upd`
,
params
)
}
//新增
export
function
adEvalBatchInfo
(
params
)
{
return
post
(
`/api/postEvalBatchInfo/ad`
,
params
)
}
//撤回
export
function
chEvalBatchInfo
(
params
)
{
return
post
(
`/api/postEvalBatchInfo/ch`
,
params
)
}
//评估批次确认发布分页查询
export
function
projectInfo
(
params
)
{
return
post
(
`/api/projectInfo/`
,
params
)
}
src/router/index.js
View file @
3dd7135
...
...
@@ -21,7 +21,7 @@ export const routes = [
path
:
'/'
,
name
:
'main'
,
component
:
()
=>
import
(
'@/views/layout/index.vue'
),
redirect
:
'/mainLayout'
,
redirect
:
'/mainLayout
/auxiliarySelection
'
,
children
:[
{
...
...
src/views/assessChecks/auxiliarySelection.vue
View file @
3dd7135
<
template
>
<div
class=
"archiEvoluteLine"
>
<!--
<HeaderInfo
:title=
"title"
></HeaderInfo>
-->
<seachList
searchtype=
"FZXD"
></seachList>
<tableList
class=
"tableList"
tbtyps=
"FZXD"
></tableList>
<seachList
searchtype=
"FZXD"
@
listenToChildEvent=
"showMsgFromChild"
@
delateEval=
"delateEval"
:selection=
"selection"
></seachList>
<tableList
class=
"tableList"
tbtyps=
"FZXD"
:tableData=
"tableData"
:total=
"total"
@
currentPage=
"currentPageP"
@
pageSize=
"pageSizeP"
@
sendselection=
"sendselection"
></tableList>
</div>
</
template
>
<
script
>
import
seachList
from
'./components/seachList.vue'
import
tableList
from
'./components/tableList.vue'
<
script
>
import
seachList
from
"./components/seachList.vue"
;
import
tableList
from
"./components/tableList.vue"
;
import
{
evalBatchInfo
,
delEvalBatchInfo
}
from
"@/api/index"
;
export
default
{
name
:
'auxiliarySelection'
,
name
:
"auxiliarySelection"
,
components
:
{
seachList
,
tableList
tableList
,
},
data
()
{
return
{
title
:
'评估项目辅助选定'
}
return
{
title
:
"评估项目辅助选定"
,
tableData
:
[],
total
:
0
,
current
:
"1"
,
pageSize
:
"10"
,
selection
:
''
,
};
},
mounted
()
{
mounted
()
{
this
.
evalBatchInfo
();
},
methods
:
{
pageSizeP
(
data
)
{
this
.
current
=
data
;
this
.
evalBatchInfo
();
},
currentPageP
(
data
)
{
this
.
current
=
data
;
this
.
evalBatchInfo
();
},
async
evalBatchInfo
(
data
)
{
let
params
=
{
current
:
this
.
current
,
pageSize
:
this
.
pageSize
,
};
if
(
data
)
{
Object
.
assign
(
params
,
data
);
}
//重置查询参数
if
(
data
==
"reset"
)
{
params
=
{
current
:
'1'
,
pageSize
:
'10'
,
};
}
console
.
log
(
params
,
"params"
);
let
res
=
await
evalBatchInfo
(
params
);
console
.
log
(
res
.
data
.
records
,
'222222222222222'
)
this
.
tableData
=
res
.
data
.
records
;
if
(
res
.
data
.
total
)
{
this
.
total
=
res
.
data
.
total
*
1
;
}
}
console
.
log
(
this
.
tableData
,
this
.
total
,
"33333"
);
},
showMsgFromChild
(
data
)
{
console
.
log
(
"船只"
,
data
);
// this.chilidParams = data;
this
.
evalBatchInfo
(
data
);
},
async
delateEval
(){
console
.
log
(
'删除'
,
this
.
selection
)
if
(
this
.
selection
.
length
>
0
){
let
res
=
await
delEvalBatchInfo
(
this
.
selection
[
0
]);
this
.
evalBatchInfo
(
"reset"
)
}
},
sendselection
(
val
){
this
.
selection
=
val
}
},
};
</
script
>
<
style
scoped
>
.archiEvoluteLine
{
<
style
scoped
>
.archiEvoluteLine
{
width
:
100%
;
height
:
100%
;
display
:
flex
;
flex-direction
:
column
;
justify-content
:
flex-start
;
align-items
:
flex-start
;
}
.tableList
{
align-items
:
flex-start
;
}
.tableList
{
width
:
100%
;
}
}
</
style
>
\ No newline at end of file
src/views/assessChecks/components/seachList.vue
View file @
3dd7135
<
template
>
<div
class=
"main"
>
<div
class=
"form-horizontal"
>
<div
class=
"form-group"
>
<div
class=
"form-group"
>
<label>
批次年度:
</label>
<select
class=
"form-control"
placeholder=
"请选择"
v-model=
"
model
Year"
>
<select
class=
"form-control"
placeholder=
"请选择"
v-model=
"
batch
Year"
>
<option
v-for=
"(item, index) in category"
:value=
"item.
id
"
:value=
"item.
name
"
:key=
"item.id"
>
{{
item
.
name
}}
</option>
</select>
</div>
<div
class=
"form-group"
>
<div
class=
"form-group"
>
<label>
后评估批次名称:
</label>
<input
v-model=
"assessName"
type=
"text"
class=
"form-control"
placeholder=
"请输入内容"
/>
<input
v-model=
"batchName"
type=
"text"
class=
"form-control"
placeholder=
"请输入内容"
/>
</div>
<div
class=
"form-group"
>
<
!--
<
div
class=
"form-group"
>
<label>
计划评审日期:
</label>
<el-date-picker
v-model=
"planTime"
...
...
@@ -36,8 +41,8 @@
{{
item
.
name
}}
</option>
</select>
</div>
<div
class=
"form-group"
>
</div>
-->
<div
class=
"form-group"
>
<label>
后评估状态:
</label>
<select
class=
"form-control"
v-model=
"modelState"
placeholder=
"请选择"
>
<option
...
...
@@ -49,7 +54,7 @@
</option>
</select>
</div>
<div
class=
"form-group"
>
<
!--
<
div
class=
"form-group"
>
<label>
创建人:
</label>
<input
type=
"text"
class=
"form-control"
placeholder=
"请输入内容"
v-model=
"creator"
/>
</div>
...
...
@@ -60,106 +65,682 @@
type=
"date"
placeholder=
"选择日期"
>
</el-date-picker>
</div>
</div>
-->
<div
style=
"width: 100%"
></div>
<div
class=
"btn_container"
>
<p
class=
"btn btn-primary"
@
click=
"query()"
v-if=
"queryShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"query()"
v-if=
"queryShow.includes(searchtype)"
>
<img
class=
"buttonIcon"
src=
"../../../assets/cx.png"
/>
查询
</p>
<p
class=
"btn btn-primary"
@
click=
"reset()"
v-if=
"resetShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"reset()"
v-if=
"resetShow.includes(searchtype)"
>
<img
class=
"buttonIcon"
src=
"../../../assets/cz.png"
/>
重置
</p
>
</p>
<p
class=
"btn btn-primary"
@
click=
"details()"
v-if=
"detailsShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"details()"
>
<img
class=
"buttonIcon"
src=
"../../../assets/ck.png"
/>
详情
</p>
<p
class=
"btn btn-primary"
@
click=
"add()"
v-if=
"addShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"add()"
v-if=
"addShow.includes(searchtype)"
>
<img
class=
"buttonIcon"
src=
"../../../assets/xz.png"
/>
新增
</p>
<p
class=
"btn btn-primary"
@
click=
"edit()"
v-if=
"editShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"edit()"
v-if=
"editShow.includes(searchtype)"
>
<img
class=
"buttonIcon"
src=
"../../../assets/bj.png"
/>
编辑
</p>
<p
class=
"btn btn-primary"
@
click=
"deletes()"
v-if=
"deletesShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"deletes()"
v-if=
"deletesShow.includes(searchtype)"
>
<img
class=
"buttonIcon"
src=
"../../../assets/sc.png"
/>
删除
</p>
<p
class=
"btn btn-primary"
@
click=
"expert()"
v-if=
"expertShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"expert()"
v-if=
"expertShow.includes(searchtype)"
>
评审专家名单
</p>
<p
class=
"btn btn-primary"
@
click=
"submiterials()"
v-if=
"submiterialsShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"sendMsg()"
>
下发
</p>
<p
class=
"btn btn-primary"
@
click=
"submiterials()"
v-if=
"submiterialsShow.includes(searchtype)"
>
提交评估材料
</p>
<p
class=
"btn btn-primary"
@
click=
"inspectionEvaluation()"
v-if=
"inspectionEvaluationShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"inspectionEvaluation()"
v-if=
"inspectionEvaluationShow.includes(searchtype)"
>
合规性检查评估
</p>
<p
class=
"btn btn-primary"
@
click=
"submitQuestion()"
v-if=
"submitQuestionShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"submitQuestion()"
v-if=
"submitQuestionShow.includes(searchtype)"
>
提交问题清单
</p>
<p
class=
"btn btn-primary"
@
click=
"configQuestion()"
v-if=
"configQuestionShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"configQuestion()"
v-if=
"configQuestionShow.includes(searchtype)"
>
确认问题清单
</p>
<p
class=
"btn btn-primary"
@
click=
"questionDistribute()"
v-if=
"questionDistributeShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"questionDistribute()"
v-if=
"questionDistributeShow.includes(searchtype)"
>
问题下发
</p>
<p
class=
"btn btn-primary"
@
click=
"questionDistributes()"
v-if=
"questionDistributesShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"questionDistributes()"
v-if=
"questionDistributesShow.includes(searchtype)"
>
问题批量下发
</p>
<p
class=
"btn btn-primary"
@
click=
"questionConfig()"
v-if=
"questionConfiShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"questionConfig()"
v-if=
"questionConfiShow.includes(searchtype)"
>
问题确认
</p>
<p
class=
"btn btn-primary"
@
click=
"questionReview()"
v-if=
"questionReviewShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"questionReview()"
v-if=
"questionReviewShow.includes(searchtype)"
>
问题复核
</p>
<p
class=
"btn btn-primary"
@
click=
"questionRectification()"
v-if=
"questionRectificationShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"questionRectification()"
v-if=
"questionRectificationShow.includes(searchtype)"
>
问题整改
</p>
<p
class=
"btn btn-primary"
@
click=
"submitRectification()"
v-if=
"submitRectificationShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"submitRectification()"
v-if=
"submitRectificationShow.includes(searchtype)"
>
整改提交
</p>
<p
class=
"btn btn-primary"
@
click=
"reviewDistribute()"
v-if=
"reviewDistributeShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"reviewDistribute()"
v-if=
"reviewDistributeShow.includes(searchtype)"
>
复核下发
</p>
<p
class=
"btn btn-primary"
@
click=
"reviewRectification()"
v-if=
"reviewRectificationShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"reviewRectification()"
v-if=
"reviewRectificationShow.includes(searchtype)"
>
整改复核
</p>
<p
class=
"btn btn-primary"
@
click=
"submitReview()"
v-if=
"submitReviewShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"submitReview()"
v-if=
"submitReviewShow.includes(searchtype)"
>
提交整改复核
</p>
<p
class=
"btn btn-primary"
@
click=
"filed()"
v-if=
"filedShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"filed()"
v-if=
"filedShow.includes(searchtype)"
>
材料归档
</p>
<p
class=
"btn btn-primary"
@
click=
"appeal()"
v-if=
"appealShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"appeal()"
v-if=
"appealShow.includes(searchtype)"
>
申诉
</p>
<p
class=
"btn btn-primary"
@
click=
"withdraw()"
v-if=
"withdrawShow.includes(searchtype)"
>
<p
class=
"btn btn-primary"
@
click=
"withdraw()"
>
<!--
<img
class=
"buttonIcon"
src=
"../../../assets/ch.png"
/>
-->
撤回
</p>
<span
style=
"height: 22px;"
>
<input
id=
"is_multiple_select"
type=
"checkbox"
style=
"width: 15px; height: 15px; margin-top: 3px"
>
<!--
<span
style=
"height: 22px"
>
<input
id=
"is_multiple_select"
type=
"checkbox"
style=
"width: 15px; height: 15px; margin-top: 3px"
/>
允许批量选中
</span>
-->
</div>
</div>
<el-dialog
title=
"新增后评估批次信息"
:visible
.
sync=
"dialogAdd"
width=
"70%"
:modal-append-to-body=
"false"
>
<div
class=
"adddialog"
>
<div
class=
"addform-horizontal"
>
<div
class=
"addform-group"
>
<label>
批次年度:
</label>
<select
class=
"form-control"
placeholder=
"请选择"
v-model=
"addbatchYear"
>
<option
v-for=
"(item, index) in addcategory"
:value=
"item.name"
:key=
"item.id"
>
{{
item
.
name
}}
年
</option>
</select>
</div>
<div
class=
"addform-group"
>
<label>
后评估批次名称:
</label>
<input
v-model=
"addbatchName"
type=
"text"
class=
"form-control"
placeholder=
"请输入内容"
/>
</div>
<div
class=
"addform-group"
>
<label>
计划评审日期:
</label>
<el-date-picker
v-model=
"addplanTime"
type=
"date"
placeholder=
"选择日期"
value-format=
"yyyy-MM-dd hh:mm:ss"
>
</el-date-picker>
</div>
</div>
<div
class=
"areaDiv"
>
<label>
工作组织情况:
</label>
<textarea
placeholder=
"请输入内容"
v-model=
"QKarea"
></textarea>
</div>
<div
class=
"areaDiv"
>
<label
>
备注:
</label>
<textarea
placeholder=
"请输入内容"
v-model=
"BZarea"
></textarea>
</div>
<p
>
后评估专家
<span
class=
"zjbtn"
@
click=
"xzExperts()"
>
选择专家
</span>
</p>
<el-table
ref=
"multipleTable"
:data=
"addtableData"
tooltip-effect=
"dark"
style=
"width: 100%"
header-cell-class-name=
"custom-th-background"
class=
"eltable"
:row-class-name=
"tableRowClassName"
>
border
>
<el-table-column
label=
"序号"
width=
"55"
type=
"index"
>
<!--
<template
slot-scope=
"scope"
>
{{
scope
.
row
.
id
}}
</
template
>
-->
</el-table-column>
<!-- <el-table-column type="selection"> </el-table-column> -->
<el-table-column
label=
"单位"
width=
"auto"
prop=
"compId"
>
</el-table-column>
<el-table-column
prop=
"fullName"
label=
"专家名称"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"gender"
label=
"性别"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"birthday"
label=
"出生日期"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"qualification"
label=
"学历"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"contact"
label=
"联系方式"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"email"
label=
"邮箱"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"fields"
label=
"专业领域"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"expertLevel"
label=
"专家级别"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"description"
label=
"成果简介"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"expertState"
label=
"专家状态"
width=
"auto"
>
</el-table-column>
</el-table>
<el-pagination
@
size-change=
"handleSizeChangeAdd"
@
current-change=
"handleCurrentChangeAdd"
:current-page=
"addcurrentPage"
:page-sizes=
"[5, 10, 20, 50]"
:page-size=
"100"
layout=
"total, sizes, prev, pager, next, jumper"
:total=
"addtotal"
class=
"elpagination"
>
</el-pagination>
<p
class=
"zjBtn"
><span
@
click=
"cancelXZ()"
>
取消
</span><span
@
click=
"saveXZ('add')"
>
保存
</span></p>
</div>
</el-dialog>
<el-dialog
title=
"新增后评估批次信息"
:visible
.
sync=
"dialogAdd"
width=
"70%"
:modal-append-to-body=
"false"
>
<div
class=
"adddialog"
>
<div
class=
"addform-horizontal"
>
<div
class=
"addform-group"
>
<label>
批次年度:
</label>
<select
class=
"form-control"
placeholder=
"请选择"
v-model=
"addbatchYear"
>
<option
v-for=
"(item, index) in addcategory"
:value=
"item.name"
:key=
"item.id"
>
{{ item.name }}年
</option>
</select>
</div>
<div
class=
"addform-group"
>
<label>
后评估批次名称:
</label>
<input
v-model=
"addbatchName"
type=
"text"
class=
"form-control"
placeholder=
"请输入内容"
/>
</div>
<div
class=
"addform-group"
>
<label>
计划评审日期:
</label>
<el-date-picker
v-model=
"addplanTime"
type=
"date"
placeholder=
"选择日期"
value-format=
"yyyy-MM-dd hh:mm:ss"
>
</el-date-picker>
</div>
</div>
<div
class=
"areaDiv"
>
<label>
工作组织情况:
</label>
<textarea
placeholder=
"请输入内容"
v-model=
"QKarea"
></textarea>
</div>
<div
class=
"areaDiv"
>
<label
>
备注:
</label>
<textarea
placeholder=
"请输入内容"
v-model=
"BZarea"
></textarea>
</div>
<p
>
后评估专家
<span
class=
"zjbtn"
@
click=
"xzExperts()"
>
选择专家
</span>
</p>
<el-table
ref=
"multipleTable"
:data=
"addtableData"
tooltip-effect=
"dark"
style=
"width: 100%"
header-cell-class-name=
"custom-th-background"
class=
"eltable"
:row-class-name=
"tableRowClassName"
>
border
>
<el-table-column
label=
"序号"
width=
"55"
type=
"index"
>
<!-- <template slot-scope="scope">{{ scope.row.id }}</template> -->
</el-table-column>
<!-- <el-table-column type="selection"> </el-table-column> -->
<el-table-column
label=
"单位"
width=
"auto"
prop=
"compId"
>
</el-table-column>
<el-table-column
prop=
"fullName"
label=
"专家名称"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"gender"
label=
"性别"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"birthday"
label=
"出生日期"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"qualification"
label=
"学历"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"contact"
label=
"联系方式"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"email"
label=
"邮箱"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"fields"
label=
"专业领域"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"expertLevel"
label=
"专家级别"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"description"
label=
"成果简介"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"expertState"
label=
"专家状态"
width=
"auto"
>
</el-table-column>
</el-table>
<el-pagination
@
size-change=
"handleSizeChangeAdd"
@
current-change=
"handleCurrentChangeAdd"
:current-page=
"addcurrentPage"
:page-sizes=
"[5, 10, 20, 50]"
:page-size=
"100"
layout=
"total, sizes, prev, pager, next, jumper"
:total=
"addtotal"
class=
"elpagination"
>
</el-pagination>
<p
class=
"zjBtn"
><span
@
click=
"cancelXZ()"
>
取消
</span><span
@
click=
"saveXZ('add')"
>
保存
</span></p>
</div>
</el-dialog>
<el-dialog
title=
"选择专家组长"
:visible
.
sync=
"dialogAddzj"
width=
"70%"
:modal-append-to-body=
"false"
>
<div
class=
"adzjdialog"
>
<div
class=
"zjform-horizontal"
>
<div
class=
"form-group"
>
<label>
专家姓名:
</label>
<input
v-model=
"zjfullName"
type=
"text"
class=
"form-control"
placeholder=
"请输入内容"
/>
</div>
<div
class=
"form-group"
>
<label>
专业领域:
</label>
<select
class=
"form-control"
placeholder=
"请选择"
v-model=
"batchYear"
>
<option
v-for=
"(item, index) in category"
:value=
"item.name"
:key=
"item.id"
>
{{ item.name }}
</option>
</select>
</div>
<div
class=
"form-group"
>
<label>
专家状态:
</label>
<select
class=
"form-control"
placeholder=
"请选择"
v-model=
"batchYear"
>
<option
v-for=
"(item, index) in category"
:value=
"item.name"
:key=
"item.id"
>
{{ item.name }}
</option>
</select>
</div>
<span
class=
"zjquery"
@
click=
"xzExperts()"
>
查询
</span>
</div>
<el-table
@
selection-change=
"handleSelectionChange"
ref=
"multipleTableZJ"
:data=
"zjtableData"
tooltip-effect=
"dark"
style=
"width: 100%"
header-cell-class-name=
"custom-th-background"
class=
"eltable"
:row-class-name=
"tableRowClassName"
>
border
>
<el-table-column
type=
"selection"
>
</el-table-column>
<el-table-column
label=
"序号"
width=
"55"
type=
"index"
>
<!-- <template slot-scope="scope">{{ scope.row.id }}</template> -->
</el-table-column>
<!-- <el-table-column type="selection"> </el-table-column> -->
<el-table-column
label=
"单位"
width=
"auto"
prop=
"compId"
>
</el-table-column>
<el-table-column
prop=
"fullName"
label=
"专家名称"
width=
"fullName"
>
</el-table-column>
<el-table-column
prop=
"gender"
label=
"性别"
width=
"gender"
>
</el-table-column>
<el-table-column
prop=
"birthday"
label=
"出生日期"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"qualification"
label=
"学历"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"contact"
label=
"联系方式"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"email"
label=
"邮箱"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"fields"
label=
"专业领域"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"expertLevel"
label=
"专家级别"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"description"
label=
"成果简介"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"expertState"
label=
"专家状态"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"expertId"
label=
"id"
width=
"auto"
v-show=
"false"
>
</el-table-column>
</el-table>
<el-pagination
@
size-change=
"handleSizeChange"
@
current-change=
"handleCurrentChange"
:current-page=
"addcurrentPage"
:page-sizes=
"[5, 10, 20, 50]"
:page-size=
"100"
layout=
"total, sizes, prev, pager, next, jumper"
:total=
"zjtotal"
class=
"elpagination"
>
</el-pagination>
<p
class=
"zjBtn"
><span
@
click=
"cancelZJ()"
>
取消
</span><span
@
click=
"saveZJ()"
>
保存
</span></p>
</div>
</el-dialog>
<el-dialog
title=
"新增后评估批次信息"
:visible
.
sync=
"dialogedit"
width=
"70%"
:modal-append-to-body=
"false"
>
<div
class=
"adddialog"
>
<div
class=
"addform-horizontal"
>
<div
class=
"addform-group"
>
<label>
批次年度:
</label>
<select
class=
"form-control"
placeholder=
"请选择"
v-model=
"BJbatchYear"
>
<option
v-for=
"(item, index) in addcategory"
:value=
"item.name"
:key=
"item.id"
>
{{ item.name }}年
</option>
</select>
</div>
<div
class=
"addform-group"
>
<label>
后评估批次名称:
</label>
<input
v-model=
"BJbatchName"
type=
"text"
class=
"form-control"
placeholder=
"请输入内容"
/>
</div>
<div
class=
"addform-group"
>
<label>
计划评审日期:
</label>
<el-date-picker
v-model=
"BJplanTime"
type=
"date"
placeholder=
"选择日期"
value-format=
"yyyy-MM-dd hh:mm:ss"
>
</el-date-picker>
</div>
</div>
<div
class=
"areaDiv"
>
<label>
工作组织情况:
</label>
<textarea
placeholder=
"请输入内容"
v-model=
"BJarea"
></textarea>
</div>
<div
class=
"areaDiv"
>
<label>
备注:
</label>
<textarea
v-model=
"BJbzarea"
placeholder=
"请输入内容"
></textarea>
</div>
<p
>
后评估专家
<span
class=
"zjbtn"
@
click=
"xzExperts()"
>
选择专家
</span>
</p>
<el-table
ref=
"multipleTable"
:data=
"addtableData"
tooltip-effect=
"dark"
style=
"width: 100%"
header-cell-class-name=
"custom-th-background"
class=
"eltable"
:row-class-name=
"tableRowClassName"
>
border
>
<el-table-column
prop=
"expertId"
label=
"id"
width=
"auto"
v-show=
"false"
>
</el-table-column>
<el-table-column
label=
"序号"
width=
"55"
type=
"index"
>
</el-table-column>
<el-table-column
label=
"单位"
width=
"auto"
prop=
"compId"
>
</el-table-column>
<el-table-column
prop=
"fullName"
label=
"专家名称"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"gender"
label=
"性别"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"birthday"
label=
"出生日期"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"qualification"
label=
"学历"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"contact"
label=
"联系方式"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"email"
label=
"邮箱"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"fields"
label=
"专业领域"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"expertLevel"
label=
"专家级别"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"description"
label=
"成果简介"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"expertState"
label=
"专家状态"
width=
"auto"
>
</el-table-column>
</el-table>
<el-pagination
@
size-change=
"handleSizeChangeAdd"
@
current-change=
"handleCurrentChangeAdd"
:current-page=
"addcurrentPage"
:page-sizes=
"[5, 10, 20, 50]"
:page-size=
"100"
layout=
"total, sizes, prev, pager, next, jumper"
:total=
"addtotal"
class=
"elpagination"
>
</el-pagination>
<p
class=
"zjBtn"
><span
@
click=
"cancelBJ()"
>
取消
</span><span
@
click=
"saveBJ()"
>
保存
</span></p>
</div>
</el-dialog>
</div>
</template>
<
script
>
import
{
expertInfo
,
expert
,
sendEvalBatchInfo
,
adEvalBatchInfo
,
updEvalBatchInfo
}
from
"@/api/index"
;
export
default
{
data
()
{
return
{
BJbatchYear
:
''
,
BJbatchName
:
''
,
BJplanTime
:
""
,
BJarea
:
""
,
BJbzarea
:
""
,
BZarea
:
""
,
QKarea
:
""
,
dialogXQ
:
false
,
addZJList
:[],
expertState
:
''
,
fields
:
""
,
zjfullName
:
''
,
zjtotal
:
0
,
zjtableData
:[],
addcurrentPage
:
1
,
addtableData
:[],
message
:
{},
category
:
[
{
name
:
"11"
,
id
:
1
},
{
name
:
"21"
,
id
:
2
},
{
name
:
"31"
,
id
:
3
},
{
name
:
"2024"
,
id
:
1
},
{
name
:
"2023"
,
id
:
2
},
{
name
:
"2022"
,
id
:
3
},
{
name
:
"2021"
,
id
:
4
},
],
modelYear
:
1
,
//批次年度
assessName
:
""
,
//后评估批次名称
addcategory
:
[
{
name
:
"2024"
,
id
:
1
},
{
name
:
"2023"
,
id
:
2
},
{
name
:
"2022"
,
id
:
3
},
{
name
:
"2021"
,
id
:
4
},
],
addbatchYear
:
"2024"
,
batchYear
:
"2024"
,
//批次年度
addbatchName
:
""
,
addplanTime
:
""
,
batchName
:
""
,
//后评估批次名称
planTime
:
""
,
//计划评审日期
modeExpert
:
1
,
//后评估专家组长
expertList
:
[
...
...
@@ -168,38 +749,74 @@ export default {
{
name
:
"31"
,
id
:
3
},
],
stateList
:
[
{
name
:
"
11"
,
id
:
1
},
{
name
:
"
21"
,
id
:
2
},
{
name
:
"
31"
,
id
:
3
},
{
name
:
"
未下发"
,
id
:
0
},
{
name
:
"
已下发"
,
id
:
1
},
{
name
:
"
已撤回"
,
id
:
2
},
],
modelState
:
1
,
//评估状态
modelState
:
0
,
//评估状态
creator
:
""
,
//创建人
reviewTime
:
""
,
//评审时间
queryShow
:[
"FZXD"
,
"QRFB"
,
"ZDHQ"
,
"FZJC"
,
"QRGG"
,
"FZCK"
,
"FZXF"
,
"FZCX"
,
"FZFK"
,
"FZQR"
,
"FZZG"
,
"FZHY"
,
"TBGD"
],
//查询
resetShow
:[
"FZXD"
,
"QRFB"
,
"ZDHQ"
,
"FZJC"
,
"QRGG"
,
"FZCK"
,
"FZXF"
,
"FZCX"
,
"FZFK"
,
"FZQR"
,
"FZZG"
,
"FZHY"
,
"TBGD"
],
//重置
detailsShow
:[
"FZXD"
,
"QRFB"
,
"ZDHQ"
,
"FZCK"
,
"FZCX"
,
"TBGD"
],
//详情
addShow
:[
"FZXD"
,],
editShow
:[
"FZXD"
,],
deletesShow
:[
"FZXD"
,],
expertShow
:[
"QRFB"
,],
submiterialsShow
:[
"ZDHQ"
,],
inspectionEvaluationShow
:[
"FZJC"
,],
submitQuestionShow
:[
"FZJC"
,],
withdrawShow
:[
"FZJC"
,
"FZXF"
],
//撤回
configQuestionShow
:[
"QRGG"
],
questionDistributeShow
:[
"FZXF"
],
questionDistributesShow
:[
"FZXF"
],
questionConfiShow
:[
"FZFK"
,],
//问题确认
appealShow
:[
"FZFK"
,],
//申诉
questionReviewShow
:[
"FZQR"
],
reviewDistributeShow
:[
"FZQR"
],
questionRectificationShow
:[
"FZZG"
],
submitRectificationShow
:[
"FZZG"
],
reviewRectificationShow
:[
"FZHY"
],
submitReviewShow
:[
"FZHY"
],
filedShow
:[
"TBGD"
]
queryShow
:
[
"FZXD"
,
"QRFB"
,
"ZDHQ"
,
"FZJC"
,
"QRGG"
,
"FZCK"
,
"FZXF"
,
"FZCX"
,
"FZFK"
,
"FZQR"
,
"FZZG"
,
"FZHY"
,
"TBGD"
,
],
//查询
resetShow
:
[
"FZXD"
,
"QRFB"
,
"ZDHQ"
,
"FZJC"
,
"QRGG"
,
"FZCK"
,
"FZXF"
,
"FZCX"
,
"FZFK"
,
"FZQR"
,
"FZZG"
,
"FZHY"
,
"TBGD"
,
],
//重置
detailsShow
:
[
"FZXD"
,
"QRFB"
,
"ZDHQ"
,
"FZCK"
,
"FZCX"
,
"TBGD"
],
//详情
addShow
:
[
"FZXD"
],
editShow
:
[
"FZXD"
],
deletesShow
:
[
"FZXD"
],
expertShow
:
[
"QRFB"
],
submiterialsShow
:
[
"ZDHQ"
],
inspectionEvaluationShow
:
[
"FZJC"
],
submitQuestionShow
:
[
"FZJC"
],
withdrawShow
:
[
"FZJC"
,
"FZXF"
],
//撤回
configQuestionShow
:
[
"QRGG"
],
questionDistributeShow
:
[
"FZXF"
],
questionDistributesShow
:
[
"FZXF"
],
questionConfiShow
:
[
"FZFK"
],
//问题确认
appealShow
:
[
"FZFK"
],
//申诉
questionReviewShow
:
[
"FZQR"
],
reviewDistributeShow
:
[
"FZQR"
],
questionRectificationShow
:
[
"FZZG"
],
submitRectificationShow
:
[
"FZZG"
],
reviewRectificationShow
:
[
"FZHY"
],
submitReviewShow
:
[
"FZHY"
],
filedShow
:
[
"TBGD"
],
dialogAdd
:
false
,
dialogAddzj
:
false
,
pageSize
:
10
,
current
:
1
,
addtotal
:
0
,
currentAdd
:
1
,
pageSizeAdd
:
10
,
xfParam
:
""
,
dialogedit
:
false
,
};
},
props
:
{
...
...
@@ -207,44 +824,204 @@ export default {
type
:
String
,
default
:
""
,
},
selection
:{
type
:
Array
,
default
:[],
}
},
mounted
()
{
console
.
log
(
this
.
searchtype
,
"类型"
);
},
mounted
(){
console
.
log
(
this
.
searchtype
,
'类型'
)
methods
:
{
//下发
async
sendMsg
(){
let
params
=
this
.
xfParams
console
.
log
(
params
,
'222'
)
let
res
=
await
sendEvalBatchInfo
(
params
)
console
.
log
(
res
)
},
methods
:{
query
(){},
reset
(){},
details
(){
cancelZJ
(){
this
.
dialogAddzj
=
false
;
},
add
(){
cancelBJ
(){
this
.
dialogedit
=
false
;
},
edit
(){
async
saveBJ
(){
let
expertIdList
=
[]
this
.
addZJList
.
forEach
(
item
=>
{
expertIdList
.
push
(
item
.
expertId
)
})
let
expertStr
=
JSON
.
stringify
(
expertIdList
).
slice
(
1
,
-
1
)
let
params
=
this
.
selection
[
0
]
params
.
batchYear
=
this
.
BJbatchYear
params
.
batchName
=
this
.
BJbatchName
params
.
createTime
=
this
.
BJplanTime
params
.
description
=
this
.
BJarea
params
.
remark
=
this
.
BJbzarea
params
.
expertStr
=
expertStr
let
res
=
await
updEvalBatchInfo
(
params
);
if
(
res
.
code
==
'200'
){
this
.
$emit
(
"listenToChildEvent"
,
"reset"
);
}
},
deletes
(){
cancelXZ
(){
this
.
dialogAdd
=
false
this
.
dialogXQ
=
false
},
expert
(){
async
saveXZ
(
type
){
console
.
log
(
this
.
addZJList
,
'this.addZJList'
)
let
expertIdList
=
[]
this
.
addZJList
.
forEach
(
item
=>
{
expertIdList
.
push
(
item
.
expertId
)
})
let
expertStr
=
JSON
.
stringify
(
expertIdList
).
slice
(
1
,
-
1
)
console
.
log
(
expertIdList
,
'expertIdList'
,
expertStr
)
this
.
dialogXQ
=
false
this
.
dialogAdd
=
false
if
(
type
==
'add'
){
let
params
=
{
batchYear
:
this
.
addbatchYear
*
1
,
batchName
:
this
.
addbatchName
,
planReviewDate
:
this
.
addplanTime
,
remark
:
this
.
BZarea
,
description
:
this
.
QKarea
,
expertStr
:
expertStr
}
this
.
xfParams
=
JSON
.
parse
(
JSON
.
stringify
(
params
))
console
.
log
(
params
,
'222'
)
let
res
=
await
adEvalBatchInfo
(
params
)
}
},
submiterials
(){
saveZJ
(){
this
.
addtableData
.
push
(...
this
.
addZJList
)
this
.
dialogAddzj
=
false
;
console
.
log
(
this
.
addtableData
,
'addtableData'
)
},
inspectionEvaluation
(){
handleSelectionChange
(){
this
.
addZJList
=
this
.
$refs
.
multipleTableZJ
.
selection
console
.
log
(
this
.
$refs
.
multipleTableZJ
.
selection
,
'2222'
);
},
handleSizeChangeAdd
(
val
){
this
.
pageSizeAdd
=
val
},
submitQuestion
(){
handleCurrentChangeAdd
(
val
){
this
.
currentAdd
=
val
},
withdraw
(){
}
async
xzExperts
(){
this
.
dialogAddzj
=
true
let
params
=
{
current
:
this
.
current
,
pageSize
:
this
.
pageSize
,
fullName
:
this
.
zjfullName
,
fields
:
this
.
fields
,
expertState
:
this
.
expertState
};
let
res
=
await
expertInfo
(
params
);
this
.
zjtableData
=
res
.
data
.
records
this
.
zjtotal
=
res
.
data
.
total
*
1
;
console
.
log
(
res
,
'xxx'
)
},
tableRowClassName
({
row
,
rowIndex
})
{
// console.log(rowIndex % 2,'333')
if
(
rowIndex
%
2
==
1
)
{
return
'warning-row'
;
}
return
''
},
handleSizeChange
(
val
)
{
console
.
log
(
`每页
${
val
}
条`
);
this
.
$emit
(
'pageSize'
,
this
.
pageSize
)
},
handleCurrentChange
(
val
)
{
console
.
log
(
`当前页:
${
val
}
`
);
this
.
currentPage
=
val
this
.
$emit
(
'currentPage'
,
this
.
currentPage
)
},
query
()
{
this
.
message
=
{
status
:
this
.
modelState
,
batchYear
:
this
.
batchYear
,
batchName
:
this
.
batchName
,
};
console
.
log
(
this
.
message
,
"this.message"
);
this
.
$emit
(
"listenToChildEvent"
,
this
.
message
);
},
reset
()
{
console
.
log
(
"重置"
);
this
.
$emit
(
"listenToChildEvent"
,
"reset"
);
},
details
()
{
this
.
dialogXQ
=
true
},
async
add
()
{
this
.
dialogAdd
=
true
;
let
params
=
{
current
:
this
.
currentAdd
,
pageSize
:
this
.
pageSizeAdd
,
// createTime:this.createTimeAdd,
// fullName:this.zjfullName,
// fields:this.fields,
// expertState:this.expertState
};
console
.
log
(
params
,
'params'
)
let
res
=
await
expert
(
params
);
this
.
addtableData
=
res
.
data
.
records
this
.
addtotal
=
res
.
data
.
total
*
1
;
},
async
edit
()
{
//设置单选 只能选择编辑未下发
this
.
dialogedit
=
true
console
.
log
(
this
.
selection
,
'555555555555555555'
)
let
params
=
{
current
:
this
.
currentAdd
,
pageSize
:
this
.
pageSizeAdd
,
batchId
:
this
.
selection
[
0
].
batchId
};
console
.
log
(
params
,
'params'
)
let
res
=
await
expert
(
params
);
this
.
BJbatchYear
=
this
.
selection
[
0
].
batchYear
this
.
BJbatchName
=
this
.
selection
[
0
].
batchName
this
.
BJplanTime
=
this
.
selection
[
0
].
createTime
this
.
BJarea
=
this
.
selection
[
0
].
description
this
.
BJbzarea
=
this
.
selection
[
0
].
remark
this
.
addtableData
=
res
.
data
.
records
this
.
addtotal
=
res
.
data
.
total
*
1
;
},
deletes
()
{
console
.
log
(
"删除"
)
this
.
$emit
(
"delateEval"
,
"delates"
);
},
expert
()
{},
submiterials
()
{},
inspectionEvaluation
()
{},
submitQuestion
()
{},
//撤回
async
withdraw
()
{
let
res
=
await
chEvalBatchInfo
},
},
};
</
script
>
...
...
@@ -277,7 +1054,7 @@ export default {
vertical-align
:
middle
;
}
.btn-primary
{
//
padding
:
0.375rem
1.5rem
;
//
padding
:
0.375rem
1.5rem
;
background-color
:
#23c6c8
;
border-color
:
#23c6c8
;
}
...
...
@@ -295,6 +1072,50 @@ export default {
padding-top
:
15px
;
margin-bottom
:
20px
;
}
.zjform-horizontal
{
display
:
flex
;
flex-wrap
:
wrap
;
border-top
:
2px
solid
#23c6c8
;
border-left
:
1px
solid
#dee5e7
;
border-right
:
1px
solid
#dee5e7
;
border-bottom
:
1px
solid
#dee5e7
;
padding-top
:
15px
;
margin-bottom
:
20px
;
padding-left
:
15px
;
}
.addform-horizontal
{
width
:
70%
;
display
:
flex
;
//
flex-wrap
:
wrap
;
//
border-top
:
2px
solid
#23c6c8
;
//
border-left
:
1px
solid
#dee5e7
;
//
border-right
:
1px
solid
#dee5e7
;
//
border-bottom
:
1px
solid
#dee5e7
;
padding-top
:
15px
;
margin-bottom
:
20px
;
flex
:
1
;
.addform-group
{
width
:
33%
;
display
:
flex
;
align-items
:
center
;
margin-right
:
40px
!important
;
}
.addform-group
>
label
{
width
:
150px
;
text-align
:
right
;
padding-right
:
10px
;
display
:
inline-block
;
max-width
:
100%
;
margin-bottom
:
5px
;
font-weight
:
700
;
}
.addform-group
>
select
{
width
:
226px
;
}
.addform-group
>
input
{
width
:
195px
;
}
}
.form-group
{
width
:
20%
;
display
:
flex
;
...
...
@@ -438,7 +1259,7 @@ input.form-control {
/
deep
/
.el-date-table
td
.today
span
{
color
:
red
!important
;
}
/
deep
/
.el-input__prefix
.el-input__icon
{
/
deep
/
.el-input__prefix
.el-input__icon
{
margin-left
:
157px
;
background-color
:
#eee
;
border
:
1px
solid
#ccc
;
...
...
@@ -446,7 +1267,62 @@ input.form-control {
color
:
#000
;
height
:
94%
;
}
/
deep
/
.el-input__suffix
{
border
:
none
/
deep
/
.el-input__suffix
{
border
:
none
;
}
.adddialog
{
text-align
:
left
;
}
.areaDiv
{
width
:
70%
;
text-align
:
right
;
margin-top
:
20px
;
textarea{
width
:
90%
;
height
:
50px
;
}
}
.zjbtn
{
display
:
inline-block
;
background-color
:
#4ca6a7
;
width
:
89px
;
height
:
30px
;
color
:
#fff
;
text-align
:
center
;
line-height
:
30px
;
}
/
deep
/
.el-table
.warning-row
{
background
:
#f0ffff
;
color
:
#2785E6
;
}
.adzjdialog
{
text-align
:
left
;
}
.zjquery
{
display
:
inline-block
;
background-color
:
#4ca6a7
;
width
:
89px
;
height
:
30px
;
color
:
#fff
;
text-align
:
center
;
line-height
:
30px
;
}
.zjBtn
{
width
:
200px
;
margin
:
0
auto
;
span{
display
:
inline-block
;
width
:
80px
;
height
:
25px
;
line-height
:
25px
;
text-align
:
center
;
}
span
:last-of-type
{
background-color
:
#4ca6a7
;
color
:
#fff
;
}
}
</
style
>
\ No newline at end of file
src/views/assessChecks/components/tableList.vue
View file @
3dd7135
<
template
>
<div
class=
"m
ia
n"
>
<div
class=
"m
ai
n"
>
<el-table
@
selection-change=
"handleSelectionChange"
ref=
"multipleTable"
:data=
"tableData"
tooltip-effect=
"dark"
style=
"width: 100%"
header-cell-class-name=
"custom-th-background"
class=
"eltable"
:row-class-name=
"tableRowClassName"
>
border
>
<el-table-column
label=
"序号"
width=
"55"
>
<template
slot-scope=
"scope"
>
{{
scope
.
row
.
id
}}
</
template
>
<el-table-column
label=
"序号"
width=
"55"
type=
"index"
>
</el-table-column>
<el-table-column
type=
"selection"
>
</el-table-column>
<el-table-column
label=
"批次年度"
width=
"auto"
>
<
template
slot-scope=
"scope"
>
{{
scope
.
row
.
date
}}
</
template
>
<el-table-column
label=
"批次年度"
width=
"auto"
prop=
"batchYear"
>
</el-table-column>
<el-table-column
prop=
"
n
ame"
label=
"后评估批次名称"
width=
"auto"
>
<el-table-column
prop=
"
batchN
ame"
label=
"后评估批次名称"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"
address
"
prop=
"
planReviewDate
"
label=
"计划评审日期"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"
name1"
label=
"后评估专家组长
"
width=
"auto"
>
<el-table-column
prop=
"
expertName"
label=
"后评估专家
"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"name2"
label=
"后评状态"
width=
"auto"
>
<el-table-column
prop=
"postEvalState"
label=
"批次下发状态"
width=
"auto"
>
<!--
<el-table-column
prop=
"expertLeader"
label=
"后评估专家组长"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"
name3"
label=
"评审专家名单
"
width=
"auto"
>
<el-table-column
prop=
"
status"
label=
"后评状态
"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"
name3"
label=
"创建人"
width=
"auto"
>
<el-table-column
prop=
"
expertName"
label=
"评审专家名单"
width=
"auto"
>
--
>
</el-table-column>
<el-table-column
prop=
"name3"
label=
"创建时间"
width=
"auto"
>
<el-table-column
prop=
"creator"
label=
"创建人"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"createTime"
label=
"创建时间"
width=
"auto"
>
</el-table-column>
</el-table>
<el-pagination
@
size-change=
"handleSizeChange"
@
current-change=
"handleCurrentChange"
:current-page=
"currentPage"
:page-sizes=
"[5, 10, 20, 50]"
:page-size=
"100"
layout=
"total, sizes, prev, pager, next, jumper"
:total=
"tableData.length"
class=
"elpagination"
>
</el-pagination>
</div>
</
template
>
<
script
>
import
{
number
}
from
'echarts'
;
export
default
{
data
()
{
return
{
tableData
:
[
{
id
:
1
,
date
:
"2016-05-03"
,
name
:
"王小虎"
,
address
:
"上海市普陀区金沙江路 1518 弄"
,
currentPage
:
1
,
pageSize
:
"5"
,
}
},
{
id
:
1
,
date
:
"2016-05-02"
,
name
:
"王小虎"
,
address
:
"上海市普陀区金沙江路 1518 弄"
,
props
:
{
tableData
:
{
type
:
Array
,
default
:[],
},
{
id
:
1
,
date
:
"2016-05-04"
,
name
:
"王小虎"
,
address
:
"上海市普陀区金沙江路 1518 弄"
,
total
:{
type
:
Number
,
default
:
""
,
},
{
date
:
"2016-05-01"
,
name
:
"王小虎
"
,
address
:
"上海市普陀区金沙江路 1518 弄"
,
tbtyps
:
{
type
:
String
,
default
:
"
"
,
}
},
{
date
:
"2016-05-08"
,
name
:
"王小虎"
,
address
:
"上海市普陀区金沙江路 1518 弄"
,
methods
:
{
handleSelectionChange
(
selection
)
{
if
(
Array
.
isArray
(
selection
)
&&
selection
.
length
>
1
)
{
this
.
$refs
.
multipleTable
.
toggleRowSelection
(
selection
[
0
],
false
);
this
.
$refs
.
multipleTable
.
toggleRowSelection
(
selection
[
1
],
true
);
}
console
.
log
(
this
.
$refs
.
multipleTable
.
selection
,
'this.$refs.multipleTable.selection'
)
this
.
$emit
(
'sendselection'
,
this
.
$refs
.
multipleTable
.
selection
)
},
{
date
:
"2016-05-06"
,
name
:
"王小虎"
,
address
:
"上海市普陀区金沙江路 1518 弄"
,
handleSizeChange
(
val
)
{
console
.
log
(
`每页
${
val
}
条`
);
this
.
$emit
(
'pageSize'
,
this
.
pageSize
)
},
{
date
:
"2016-05-07"
,
name
:
"王小虎"
,
address
:
"上海市普陀区金沙江路 1518 弄"
,
handleCurrentChange
(
val
)
{
console
.
log
(
`当前页:
${
val
}
`
);
this
.
currentPage
=
val
this
.
$emit
(
'currentPage'
,
this
.
currentPage
)
},
],
};
tableRowClassName
({
row
,
rowIndex
})
{
// console.log(rowIndex % 2,'333')
if
(
rowIndex
%
2
==
1
)
{
return
'warning-row'
;
}
return
''
}
},
};
</
script
>
...
...
@@ -89,6 +109,14 @@ export default {
.main
{
font-size
:
14px
;
width
:
100%
;
height
:
70%
;
.eltable{
height
:
94%
;
}
.elpagination
{
text-align
:
right
;
margin-right
:
100px
;
}
}
/
deep
/
.cell
{
...
...
@@ -116,4 +144,8 @@ export default {
opacity
:
0.7
;
border-color
:
#333
;
}
/
deep
/
.el-table
.warning-row
{
background
:
#f0ffff
;
color
:
#2785E6
;
}
</
style
>
\ No newline at end of file
src/views/assessChecks/confirmRelease.vue
View file @
3dd7135
<
template
>
<div
class=
"archiEvoluteLine"
>
<seachList
searchtype=
"QRFB"
></seachList>
<tableList
class=
"tableList"
tbtyps=
"QRFB"
></tableList>
<div
class=
"form-horizontal"
>
<div
class=
"form-group"
>
<label>
批次年度:
</label>
<select
class=
"form-control"
placeholder=
"请选择"
v-model=
"batchYear"
>
<option
v-for=
"(item, index) in category"
:value=
"item.name"
:key=
"item.id"
>
{{
item
.
name
}}
</option>
</select>
</div>
<div
class=
"form-group"
>
<label>
后评估批次名称:
</label>
<input
v-model=
"batchName"
type=
"text"
class=
"form-control"
placeholder=
"请输入内容"
/>
</div>
<div
class=
"form-group"
>
<label>
后评估状态:
</label>
<select
class=
"form-control"
v-model=
"modelState"
placeholder=
"请选择"
>
<option
v-for=
"(item, index) in stateList"
:value=
"item.id"
:key=
"item.id"
>
{{
item
.
name
}}
</option>
</select>
</div>
</div>
<div
style=
"width: 100%"
></div>
<div
class=
"btn_container"
>
<!-- 急啊急啊急啊就 -->
<p
class=
"btn btn-primary"
@
click=
"query()"
>
<img
class=
"buttonIcon"
src=
"../../assets/cx.png"
/>
查询
</p>
<p
class=
"btn btn-primary"
@
click=
"reset()"
>
<img
class=
"buttonIcon"
src=
"../../assets/cz.png"
/>
重置
</p>
<p
class=
"btn btn-primary"
@
click=
"details()"
>
<img
class=
"buttonIcon"
src=
"../../assets/ck.png"
/>
详情
</p>
<p
class=
"btn btn-primary"
@
click=
"configs()"
>
确认项目评估
</p>
<p
class=
"btn btn-primary"
@
click=
"withdraw()"
>
撤回
</p>
</div>
<div
class=
"main"
>
<el-table
@
selection-change=
"handleSelectionChange"
ref=
"multipleTable"
:data=
"tableData"
tooltip-effect=
"dark"
style=
"width: 100%"
header-cell-class-name=
"custom-th-background"
class=
"eltable"
:row-class-name=
"tableRowClassName"
>
border
>
<el-table-column
label=
"序号"
width=
"55"
type=
"index"
>
</el-table-column>
<el-table-column
type=
"selection"
>
</el-table-column>
<el-table-column
label=
"批次年度"
width=
"auto"
prop=
"batchYear"
>
</el-table-column>
<el-table-column
prop=
"batchName"
label=
"后评估批次名称"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"planReviewDate"
label=
"计划评审日期"
width=
"auto"
>
</el-table-column>
<!--
<el-table-column
prop=
"expertLeader"
label=
"评审专家"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"status"
label=
"后评状态"
width=
"auto"
>
</el-table-column>
-->
<el-table-column
prop=
"expertName"
label=
"评审专家"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"postEvalState"
label=
"批次确认状态"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"batchName"
label=
"评估项目"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"prjsOfExpert"
label=
"已选择数量"
width=
"auto"
>
</el-table-column>
</el-table>
<el-pagination
@
size-change=
"handleSizeChange"
@
current-change=
"handleCurrentChange"
:current-page=
"currentPage"
:page-sizes=
"[5, 10, 20, 50]"
:page-size=
"100"
layout=
"total, sizes, prev, pager, next, jumper"
:total=
"tableData.length"
class=
"elpagination"
>
</el-pagination>
</div>
</div>
</
template
>
<
script
>
import
seachList
from
'./components/seachList.vue'
import
tableList
from
'./components/tableList.vue'
import
{
projectInfo
}
from
"@/api/index"
;
export
default
{
name
:
'auxiliarySelection'
,
name
:
"auxiliarySelection"
,
components
:
{
seachList
,
tableList
},
data
()
{
return
{
title
:
'评估批次确认发布'
return
{
category
:
[
{
name
:
"2024年"
,
id
:
1
},
{
name
:
"2023年"
,
id
:
2
},
{
name
:
"2022年"
,
id
:
3
},
{
name
:
"2021年"
,
id
:
4
},
],
batchYear
:
"2024年"
,
//批次年度
batchName
:
""
,
//后评估批次名称
stateList
:
[
{
name
:
"未下发"
,
id
:
0
},
{
name
:
"已下发"
,
id
:
1
},
{
name
:
"已撤回"
,
id
:
2
},
],
modelState
:
0
,
//评估状态
current
:
1
,
ppageSize
:
"10"
,
tableData
:[]
};
},
mounted
()
{
this
.
query
();
},
methods
:
{
async
query
(
data
){
let
params
=
{
current
:
this
.
current
,
pageSize
:
this
.
pageSize
,
};
if
(
data
)
{
Object
.
assign
(
params
,
data
);
}
//重置查询参数
if
(
data
==
"reset"
)
{
params
=
{
current
:
'1'
,
pageSize
:
'10'
,
};
}
console
.
log
(
params
,
"params"
);
let
res
=
await
projectInfo
(
params
);
console
.
log
(
res
,
'222222222222222'
)
if
(
res
.
code
==
'200'
){
this
.
tableData
=
res
.
data
.
records
;
this
.
total
=
res
.
data
.
total
*
1
;
}
console
.
log
(
this
.
tableData
,
this
.
total
,
"33333"
);
},
mounted
(){
reset
(){
},
methods
:
{
details
()
{
},
configs
(){},
withdraw
(){
},
handleSelectionChange
(
selection
)
{
if
(
Array
.
isArray
(
selection
)
&&
selection
.
length
>
1
)
{
this
.
$refs
.
multipleTable
.
toggleRowSelection
(
selection
[
0
],
false
);
this
.
$refs
.
multipleTable
.
toggleRowSelection
(
selection
[
1
],
true
);
}
}
console
.
log
(
this
.
$refs
.
multipleTable
.
selection
,
'this.$refs.multipleTable.selection'
)
this
.
$emit
(
'sendselection'
,
this
.
$refs
.
multipleTable
.
selection
)
},
handleSizeChange
(
val
)
{
console
.
log
(
`每页
${
val
}
条`
);
this
.
$emit
(
'pageSize'
,
this
.
pageSize
)
},
handleCurrentChange
(
val
)
{
console
.
log
(
`当前页:
${
val
}
`
);
this
.
currentPage
=
val
this
.
$emit
(
'currentPage'
,
this
.
currentPage
)
},
tableRowClassName
({
row
,
rowIndex
})
{
// console.log(rowIndex % 2,'333')
if
(
rowIndex
%
2
==
1
)
{
return
'warning-row'
;
}
return
''
}
},
};
</
script
>
<
style
scoped
>
.archiEvoluteLine
{
.archiEvoluteLine
{
width
:
100%
;
height
:
100%
;
display
:
flex
;
flex-direction
:
column
;
justify-content
:
flex-start
;
align-items
:
flex-start
;
}
.tableList
{
align-items
:
flex-start
;
}
.tableList
{
width
:
100%
;
}
.btn_container
{
margin-left
:
20px
;
margin-top
:
20px
;
margin-bottom
:
15px
;
width
:
100%
;
text-align
:
left
;
}
.btn
{
display
:
inline-block
;
margin-right
:
5px
;
line-height
:
20px
;
height
:
20px
;
color
:
#fff
;
border-radius
:
5px
;
padding
:
7px
12px
;
}
.buttonIcon
{
width
:
14px
;
margin-bottom
:
3px
;
height
:
14px
;
vertical-align
:
middle
;
}
.btn-primary
{
padding
:
0.375rem
1.5rem
;
background-color
:
#23c6c8
;
border-color
:
#23c6c8
;
}
.btn-primary
:hover
{
background-color
:
#23c6c8
;
border-color
:
#23c6c8
;
}
.form-horizontal
{
display
:
flex
;
flex-wrap
:
wrap
;
border-top
:
2px
solid
#23c6c8
;
border-left
:
1px
solid
#dee5e7
;
border-right
:
1px
solid
#dee5e7
;
border-bottom
:
1px
solid
#dee5e7
;
padding-top
:
15px
;
margin-bottom
:
20px
;
width
:
100%
;
}
.zjform-horizontal
{
display
:
flex
;
flex-wrap
:
wrap
;
border-top
:
2px
solid
#23c6c8
;
border-left
:
1px
solid
#dee5e7
;
border-right
:
1px
solid
#dee5e7
;
border-bottom
:
1px
solid
#dee5e7
;
padding-top
:
15px
;
margin-bottom
:
20px
;
padding-left
:
15px
;
}
.form-group
{
width
:
20%
;
display
:
flex
;
align-items
:
center
;
margin-right
:
40px
!important
;
}
.form-group
>
label
{
width
:
150px
;
text-align
:
right
;
padding-right
:
10px
;
display
:
inline-block
;
max-width
:
100%
;
margin-bottom
:
5px
;
font-weight
:
700
;
}
.form-group
>
select
{
width
:
226px
;
}
.form-group
>
input
{
width
:
195px
;
}
.pageTitle
{
font-size
:
20px
;
}
.pageLine
{
margin-top
:
4px
;
border-top
:
2px
solid
#e5e5e5
;
}
.modal-header
{
background-color
:
#0d867f
;
color
:
#fff
;
}
.close
{
color
:
#fff
;
}
.form-group2
{
width
:
22%
;
display
:
flex
;
align-items
:
center
;
margin-right
:
40px
!important
;
}
.form-group2
>
label
{
width
:
150px
;
height
:
34px
;
line-height
:
34px
;
text-align
:
right
;
padding-right
:
10px
;
}
.form-group2
>
select
{
width
:
180px
;
}
.form-group2
>
input
{
width
:
180px
;
}
.fixed-table-pagination
{
margin-top
:
400px
;
display
:
flex
;
justify-content
:
flex-end
;
}
tbody
tr
:nth-of-type
(
even
)
{
background
:
#f0ffff
;
color
:
#2785e6
;
}
thead
th
{
background
:
#eeeeee
;
padding
:
6px
0
;
}
select
.form-control
{
display
:
block
;
width
:
100%
;
height
:
34px
;
padding
:
6px
12px
;
font-size
:
14px
;
line-height
:
1.42857143
;
color
:
#555
;
background-color
:
#fff
;
background-image
:
none
;
border
:
1px
solid
#ccc
;
border-radius
:
4px
;
-webkit-box-shadow
:
inset
0
1px
1px
rgba
(
0
,
0
,
0
,
0.075
);
box-shadow
:
inset
0
1px
1px
rgba
(
0
,
0
,
0
,
0.075
);
-webkit-transition
:
border-color
ease-in-out
0.15s
,
-webkit-box-shadow
ease-in-out
0.15s
;
-o-transition
:
border-color
ease-in-out
0.15s
,
box-shadow
ease-in-out
0.15s
;
transition
:
border-color
ease-in-out
0.15s
,
box-shadow
ease-in-out
0.15s
;
}
.form-control
:focus
{
border-color
:
#66afe9
;
outline
:
0
;
-webkit-box-shadow
:
inset
0
1px
1px
rgba
(
0
,
0
,
0
,
0.075
),
0
0
8px
rgba
(
102
,
175
,
233
,
0.6
);
box-shadow
:
inset
0
1px
1px
rgba
(
0
,
0
,
0
,
0.075
),
0
0
8px
rgba
(
102
,
175
,
233
,
0.6
);
}
.form-horizontal
.form-group
{
margin-right
:
-15px
;
margin-left
:
-15px
;
}
.form-group
{
margin-bottom
:
15px
;
}
input
.form-control
{
box-sizing
:
border-box
;
display
:
block
;
width
:
100%
;
height
:
34px
;
padding
:
6px
12px
;
font-size
:
14px
;
line-height
:
1.42857143
;
color
:
#555
;
background-color
:
#fff
;
background-image
:
none
;
border
:
1px
solid
#ccc
;
border-radius
:
4px
;
-webkit-box-shadow
:
inset
0
1px
1px
rgba
(
0
,
0
,
0
,
0.075
);
box-shadow
:
inset
0
1px
1px
rgba
(
0
,
0
,
0
,
0.075
);
-webkit-transition
:
border-color
ease-in-out
0.15s
,
-webkit-box-shadow
ease-in-out
0.15s
;
-o-transition
:
border-color
ease-in-out
0.15s
,
box-shadow
ease-in-out
0.15s
;
transition
:
border-color
ease-in-out
0.15s
,
box-shadow
ease-in-out
0.15s
;
}
.form-group
>
input
{
width
:
195px
;
}
.form-group
>
select
{
width
:
226px
;
}
/
deep
/
.el-input__inner
{
height
:
34px
;
line-height
:
34px
;
border
:
1px
solid
#ccc
;
}
/
deep
/
.el-input__icon
{
line-height
:
34px
;
}
/
deep
/
::placeholder
{
color
:
#999
;
}
/
deep
/
.el-date-table
td
.today
span
{
color
:
red
!important
;
}
/
deep
/
.el-input__prefix
.el-input__icon
{
margin-left
:
157px
;
background-color
:
#eee
;
border
:
1px
solid
#ccc
;
width
:
34px
;
color
:
#000
;
height
:
94%
;
}
/
deep
/
.el-input__suffix
{
border
:
none
;
}
.adddialog
{
text-align
:
left
;
}
.main
{
font-size
:
14px
;
width
:
100%
;
height
:
70%
;
.eltable{
height
:
94%
;
}
.elpagination
{
text-align
:
right
;
margin-right
:
100px
;
}
}
/
deep
/
.cell
{
text-align
:
center
;
}
/
deep
/
.el-table__header
th
{
background-color
:
#eeeeee
;
font-weight
:
bold
;
.cell
{
color
:
#333
;
}
}
/
deep
/
.el-table__body
.el-checkbox__input.is-checked
.el-checkbox__inner
{
background-color
:
#333
;
/* 你想要的任何颜色 */
opacity
:
0.7
;
border-color
:
#333
;
}
/
deep
/
.el-checkbox
.is-checked
.el-checkbox__inner
{
background-color
:
#333
;
/* 你想要的任何颜色 */
opacity
:
0.7
;
border-color
:
#333
;
}
/
deep
/
.el-checkbox__input.is-indeterminate
.el-checkbox__inner
{
background-color
:
#333
;
/* 你想要的任何颜色 */
opacity
:
0.7
;
border-color
:
#333
;
}
/
deep
/
.el-table
.warning-row
{
background
:
#f0ffff
;
color
:
#2785E6
;
}
/
deep
/
.el-table
th
.el-table__cell
>
.cell
{
color
:
#000
;
}
</
style
>
\ No newline at end of file
vue.config.js
View file @
3dd7135
...
...
@@ -12,24 +12,13 @@ module.exports = defineConfig({
devServer
:
{
hot
:
true
,
proxy
:
{
'/
eadc-shared-ability'
:
{
target
:
`http://
${
ip
}
:80/`
,
// 共享能力
'/
api'
:
{
target
:
`http://
192.168.8.248:18101`
,
// pin
changeOrigin
:
true
,
// secure: false,
// pathRewrite: { '^/api/eadc-shared-ability': '/eadc-shared-ability' },
},
'/eadc-architecture'
:
{
target
:
`http://
${
ip
}
:80/`
,
// 架构元模型
changeOrigin
:
true
,
// secure: false,
// pathRewrite: { '^/api/network': '' },
},
'/eadc-knowledge-pool'
:
{
target
:
`http://
${
ip
}
:80/`
,
// 架构知识库
changeOrigin
:
true
,
// secure: false,
// pathRewrite: { '^/api': '' },
pathRewrite
:{
"^/api"
:
""
},
}
},
},
chainWebpack
:
(
config
)
=>
{
...
...
Write
Preview
Markdown
is supported
Attach a file
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 post a comment