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 db3c9e65
authored
May 24, 2024
by
liangzhen
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
暂存一下
1 parent
923b989f
Hide whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
320 additions
and
1590 deletions
.env.production
src/api/index.js
src/utils/leftBarRules.js
src/views/assessChecks/checkCompliance.vue
src/views/assessChecks/checkComplianceXF.vue
src/views/assessChecks/components/kkkkk.pdf
src/views/assessChecks/components/seachList.vue
src/views/assessChecks/components/tableList.vue
src/views/assessChecks/qrCompliance.vue
src/views/layout/analysisCore.vue
.env.production
View file @
db3c9e6
NODE_ENV = 'production'
# VUE_APP_BASE_URL = "http://192.168.0.102:80"
VUE_APP_BASE_URL = "http://1
92.168.50.1:18000
"
VUE_APP_BASE_URL = "http://1
27.0.0.1:80/arch-tools
"
src/api/index.js
View file @
db3c9e6
...
...
@@ -372,4 +372,12 @@ export function selWtqdFZ(params){
//iframe展示文件
export
function
selFile
(
params
){
return
post
(
`
${
ARCH_EVALUATION
}
/evalQuesInfo/selFile`
,
params
)
}
//明显查询
export
function
selWtmx
(
params
){
return
post
(
`
${
ARCH_EVALUATION
}
/evalQuesInfo/selWtmx`
,
params
)
}
//保存
export
function
bcevalQuesInfo
(
params
){
return
post
(
`
${
ARCH_EVALUATION
}
/evalQuesInfo/bc`
,
params
)
}
\ No newline at end of file
src/utils/leftBarRules.js
View file @
db3c9e6
...
...
@@ -216,68 +216,58 @@ export function trendsRules(type) {
// url: "",
// children: [
// {
// name: "
评估
项目辅助选定",
// name: "
自查
项目辅助选定",
// url: "/mainLayout/auxiliarySelection",
// children: [],
// },
// {
// name: "
评估
批次确认发布",
// name: "
自查
批次确认发布",
// url: "/mainLayout/confirmRelease",
// children: [],
// },
// {
// name: "
评估
材料自动获取",
// name: "
自查
材料自动获取",
// url: "/mainLayout/materialAcquisition",
// children: [],
// },
// // { name: "评估材料自动解析", url: "/mainLayout/materialAnalysis", children: [] },
// {
// name: "项目辅助检查",
// name: "
自查
项目辅助检查",
// url: "/mainLayout/auxiliaryInspection",
// children: [],
// },
// {
// name: "
项目评估
结果确认更改",
// name: "
自查
结果确认更改",
// url: "/mainLayout/confirmChanges",
// children: [],
// },
// {
// name: "评估结果辅助查看",
// url: "/mainLayout/assistedViewing",
// children: [],
// },
// {
// name: "问题辅助下发",
// name: "
自查
问题辅助下发",
// url: "/mainLayout/assitedDistribution",
// children: [],
// },
// {
// name: "问题辅助查询",
// url: "/mainLayout/auxiliaryQuery",
// children: [],
// },
// {
// name: "问题辅助反馈",
// name: "自查问题辅助反馈",
// url: "/mainLayout/assistedFeedback",
// children: [],
// },
// {
// name: "申诉辅助确认",
// name: "
自查
申诉辅助确认",
// url: "/mainLayout/assistedConfirm",
// children: [],
// },
// {
// name: "问题辅助整改",
// name: "
自查
问题辅助整改",
// url: "/mainLayout/assistedRect",
// children: [],
// },
// {
// name: "整改辅助核验",
// name: "
自查
整改辅助核验",
// url: "/mainLayout/correctiveAssistanceVerification",
// children: [],
// },
// {
// name: "材料同步归档",
// name: "
自查
材料同步归档",
// url: "/mainLayout/attachSynchronousArchiving",
// children: [],
// },
...
...
src/views/assessChecks/checkCompliance.vue
View file @
db3c9e6
...
...
@@ -23,8 +23,8 @@
:label=
"item.typeText"
:name=
"item.typeCode"
>
<!--
<p
style=
"height:600px"
>
{{
item
.
typeText
}}
</p>
-->
<iframe
<!--
<p
style=
"height:600px"
>
{{
item
.
typeText
}}
</p>
-->
<iframe
:src=
"iframeUrl"
frameborder=
"0"
style=
"width: 80%; height: 60vh; margin: auto; display: block"
...
...
@@ -34,102 +34,269 @@
</div>
<div
class=
"right"
>
<p
class=
"tableTitle"
>
检查项
</p>
<div
class=
"rightContent"
v-for=
"item in questionList"
:key=
"item.questionId"
>
<h3>
{{
item
.
questionId
}}
.
{{
item
.
quesCheckItem
}}
</h3>
<p
class=
"msg"
>
{{
item
.
checkDesc
}}
</p>
<div
class=
"question"
>
<p
class=
"tips"
>
问题描述1:
</p>
<el-input
type=
"textarea"
:autosize=
"
{ minRows:1, maxRows: 4}"
placeholder="手动录入问题"
v-model="item.evalQues">
</el-input>
<el-button
type=
"primary"
>
删除
</el-button><el-button
type=
"primary"
>
上传截图证明
</el-button>
<el-button
icon=
"el-icon-circle-plus"
circle
></el-button>
<div
class=
"rightscoll"
>
<div
class=
"rightContent"
v-for=
"item in questionList"
:key=
"item.questionId"
>
<h3>
{{
item
.
questionId
}}
.
{{
item
.
quesCheckItem
}}
</h3>
<p
class=
"msg"
>
{{
item
.
checkDesc
}}
</p>
<div
class=
"question"
>
<p
class=
"tips"
>
问题描述1:
</p>
<div
v-for=
"(items, index) in item.evalList"
:key=
"items.id"
class=
"inputDiv"
>
<el-input
type=
"textarea"
:autosize=
"
{ minRows: 1, maxRows: 4 }"
placeholder="手动录入问题"
v-model="items.evalQues"
>
</el-input
><el-button
@
click=
"delInput(item, index)"
type=
"primary"
>
删除
</el-button
>
<el-upload
class=
"upload-demo"
action=
"null"
:limit=
"1"
:http-request=
"res=>
{
return fileupdate(res,items)
}"
:on-exceed="handleExceed"
:on-success="successHandler"
:on-error="errUpload"
ref="upload"
>
<img
v-if=
"items.url"
:src=
"items.url"
/>
<!-- :http-request="fileupdate" -->
<!--
<div
class=
"demo-image__preview"
>
<el-image
style=
"width: 100px; height: 100px"
:src=
"items.url"
:preview-src-list=
"items.url"
>
</el-image>
</div>
-->
<el-button
size=
"small"
type=
"primary"
@
click=
"handleFileUpload()"
>
上传截图证明
</el-button
>
</el-upload>
</div>
<p
class=
"addBtn"
>
<el-checkbox
v-model=
"item.checked"
@
change=
"changeChecked(item)"
>
未发现问题
</el-checkbox
><i
class=
"el-icon-circle-plus"
@
click=
"addInput(item)"
></i>
</p>
</div>
</div>
</div>
</div>
</div>
</div>
<p
class=
"Btn"
>
<span
@
click=
"cancel()"
>
取消
</span><span
@
click=
"save()"
>
保存
</span>
</p>
</div>
</
template
>
<
script
>
// import{kkk}from "@/static/web/viewer.mjs"
import
{
selWtqdFZ
,
selFile
,
downloadObject
}
from
"@/api/index"
;
import
{
MaterialsListKY
,}
from
'@/utils/cache'
import
{
selWtqdFZ
,
selFile
,
downloadObject
,
selWtmx
,
bcevalQuesInfo
,
ossupload
,
}
from
"@/api/index"
;
import
{
MaterialsListKY
}
from
"@/utils/cache"
;
export
default
{
data
()
{
return
{
evalList
:
[
{
id
:
""
,
evalQues
:
""
,
},
],
tabList
:
[
{
label
:
"可研"
,
id
:
0
},
{
label
:
"计划"
,
id
:
1
},
{
label
:
"可研"
,
id
:
0
},
{
label
:
"计划"
,
id
:
1
},
{
label
:
"采购"
,
id
:
2
},
{
label
:
"合同"
,
id
:
3
},
{
label
:
"执行"
,
id
:
4
},
{
label
:
"执行"
,
id
:
4
},
{
label
:
"结决算及转资"
,
id
:
5
},
],
tabListKY
:
MaterialsListKY
(
1
),
active
:
0
,
activeName
:
'0'
,
clqparams
:{},
iframeUrl
:
''
,
urlList
:[],
questionList
:[],
tabListKY
:
MaterialsListKY
(
1
),
active
:
0
,
activeName
:
"0"
,
clqparams
:
{},
iframeUrl
:
""
,
urlList
:
[],
questionList
:
[],
file
:
""
,
};
},
mounted
(){
console
.
log
(
MaterialsListKY
(
1
),
'wwwww'
)
this
.
clqparams
=
JSON
.
parse
(
this
.
$route
.
query
.
clqparams
)
mounted
()
{
console
.
log
(
MaterialsListKY
(
1
),
"wwwww"
);
this
.
clqparams
=
JSON
.
parse
(
this
.
$route
.
query
.
clqparams
);
this
.
init
(
this
.
clqparams
);
},
methods
:
{
handleExceed
()
{
this
.
$message
.
warning
(
`只能选择一张图片`
);
},
async
init
(
type
)
{
let
params
=
{
projectStage
:
this
.
active
*
1
+
1
,
...
type
}
let
params
=
{
projectStage
:
this
.
active
*
1
+
1
,
...
type
,
};
Promise
.
all
([
selFile
(
params
),
selWtqdFZ
(
params
)]).
then
((
res
)
=>
{
console
.
log
(
res
[
0
],
res
[
1
],
'777777'
)
this
.
urlList
=
res
[
0
].
data
this
.
questionList
=
res
[
1
].
data
.
records
console
.
log
(
this
.
questionList
,
'this.questionList '
)
console
.
log
(
res
[
0
],
res
[
1
],
"777777"
);
this
.
urlList
=
res
[
0
].
data
;
if
(
res
[
1
].
data
)
{
this
.
questionList
=
res
[
1
].
data
.
records
;
this
.
questionList
.
forEach
(
async
(
item
)
=>
{
let
respon
=
await
selWtmx
({
qid
:
item
.
qid
});
if
(
respon
.
data
.
records
&&
respon
.
data
.
records
.
length
>
0
)
{
this
.
$set
(
item
,
"evalList"
,
[...
respon
.
data
.
records
]);
this
.
iframeUrl
=
this
.
urlList
[
0
].
url
// this.iframeUrl=this.iframeUrl.replace('http://127.0.0.1:19090','http://192.168.50.1:19090')
// let prefixUrl = 'pdf/web/viewer.html?file=';
// this.iframeUrl= prefixUrl+this.iframeUrl
});
console
.
log
(
"yyyyy有"
);
}
else
{
console
.
log
(
"没有"
);
this
.
$set
(
item
,
"evalList"
,
[
{
id
:
""
,
evalQues
:
""
,
},
]);
}
this
.
$set
(
item
,
"Id"
,
0
);
});
}
console
.
log
(
this
.
questionList
,
"this.questionList "
);
this
.
iframeUrl
=
this
.
urlList
[
0
].
url
;
// this.iframeUrl=this.iframeUrl.replace('http://127.0.0.1:19090','http://192.168.50.1:19090')
// let prefixUrl = 'pdf/web/viewer.html?file=';
// this.iframeUrl= prefixUrl+this.iframeUrl
});
},
async
handleClick
(
tab
){
console
.
log
(
'切换'
,
tab
.
name
,
this
.
urlList
)
this
.
urlList
.
forEach
(
async
item
=>
{
if
(
item
.
typeCode
==
tab
.
name
)
{
console
.
log
(
'来几次'
,
item
.
typeCode
)
this
.
iframeUrl
=
item
.
url
}
})
async
handleClick
(
tab
)
{
console
.
log
(
"切换"
,
tab
.
name
,
this
.
urlList
);
this
.
urlList
.
forEach
(
async
(
item
)
=>
{
if
(
item
.
typeCode
==
tab
.
name
)
{
console
.
log
(
"来几次"
,
item
.
typeCode
);
this
.
iframeUrl
=
item
.
url
;
}
})
;
// this.iframeUrl=this.iframeUrl.replace('http://127.0.0.1:19090','http://192.168.50.1:19090')
// let prefixUrl = 'pdf/web/viewer.html?file=';
// this.iframeUrl= prefixUrl+this.iframeUrl
// window.open(this.iframeUrl)
console
.
log
(
this
.
iframeUrl
,
'this.iframeUrl'
)
console
.
log
(
this
.
iframeUrl
,
"this.iframeUrl"
);
},
change
(
id
)
{
console
.
log
(
"切换"
);
this
.
active
=
id
*
1
;
this
.
tabListKY
=
MaterialsListKY
(
id
*
1
+
1
)
this
.
init
(
this
.
clqparams
)
this
.
tabListKY
=
MaterialsListKY
(
id
*
1
+
1
);
this
.
init
(
this
.
clqparams
);
},
delInput
(
item
,
index
)
{
if
(
item
.
evalList
.
length
<=
1
)
{
return
false
;
}
item
.
evalList
.
splice
(
index
,
1
);
},
addInput
(
item
)
{
console
.
log
(
item
.
Id
,
"22"
);
item
.
evalList
.
push
({
id
:
"id"
+
item
.
Id
++
,
data
:
""
,
});
console
.
log
(
item
.
evalList
,
"item.evalList"
);
},
changeChecked
(
item
)
{
console
.
log
(
item
,
"2222"
);
if
(
item
.
checked
)
{
this
.
$set
(
item
,
"evalList"
,
[
{
id
:
""
,
evalQues
:
""
,
},
]);
this
.
$set
(
item
,
"Id"
,
0
);
}
},
cancel
()
{
console
.
log
(
"电击取消"
);
this
.
$router
.
go
(
-
1
);
},
async
save
()
{
let
params
=
{
list
:
this
.
questionList
,
...
this
.
clqparams
,
};
let
res
=
await
bcevalQuesInfo
(
params
);
},
fileupdate
(
res
,
items
)
{
console
.
log
(
res
,
items
,
'222222'
);
this
.
file
=
res
.
file
;
if
(
this
.
file
.
size
/
1024
>
500
)
{
this
.
$message
(
"请上传小于500k的图片"
);
return
;
}
this
.
submitFile
(
res
,
items
);
},
submitFile
(
item
,
list
)
{
console
.
log
(
list
,
'list'
)
console
.
log
(
this
.
file
,
"多少k"
);
if
(
this
.
file
)
{
const
formData
=
new
FormData
();
formData
.
append
(
"file"
,
this
.
file
);
ossupload
(
formData
)
.
then
((
response
)
=>
{
console
.
log
(
response
,
"上传图片"
);
if
(
response
.
code
==
"200"
)
{
// this.successurl=response.url
this
.
$message
(
"上传成功"
);
}
else
{
this
.
$message
(
"上传失败"
);
}
})
.
catch
((
error
)
=>
{
console
.
error
(
error
);
this
.
$message
(
"上传失败"
);
});
}
},
successHandler
(
items
){
console
.
log
(
"来了么22"
,
items
);
this
.
$set
(
items
,
'url'
,
this
.
successurl
)
this
.
$refs
.
upload
.
clearFiles
()
},
errUpload
(
items
){
console
.
log
(
"来了么23332"
,
items
);
this
.
$refs
.
upload
.
clearFiles
()
},
handleFileUpload
()
{
console
.
log
(
"来了么"
);
},
},
};
</
script
>
...
...
@@ -180,13 +347,19 @@ export default {
.left
{
width
:
49%
;
min-height
:
100px
;
background
:
#fff
;
//
color
:
#fff
;
}
.right
{
width
:
50%
;
margin-left
:
10px
;
height
:
680px
;
background
:
#fff
;
}
.rightscoll
{
height
:
610px
;
overflow-y
:
auto
;
padding
:
10px
;
}
}
/
deep
/
.el-step__icon
{
...
...
@@ -225,6 +398,9 @@ export default {
/
deep
/
.is-wait
.el-step__icon-inner
{
display
:
none
;
}
/
deep
/
.upload-demo
{
display
:
inline-block
;
}
.tableTitle
{
background
:
#0d867f
;
color
:
#f5f5f6
;
...
...
@@ -236,31 +412,77 @@ export default {
font-size
:
15px
;
}
.rightContent
{
.rightContent
{
width
:
100%
;
overflow-y
:
auto
;
text-align
:
left
;
h3{
h3
{
margin
:
0
;
}
p
{
p
{
margin
:
5px
0
;
}
.question
{
.question
{
border
:
1px
solid
gainsboro
;
padding
:
5px
;
.tips{
color
:
gray
;
font-size
:
12px
;
.tips
{
color
:
gray
;
font-size
:
12px
;
}
.el-textarea
{
width
:
65%
;
vertical-align
:
top
;
}
}
.el-textarea
{
width
:
70%
;
}
.el-button--primary
{
color
:
#ffffff
;
background-color
:
#0d867f
;
border-color
:
#0d867f
;
height
:
35px
;
line-height
:
0.6
;
margin-left
:
10px
;
vertical-align
:
top
;
}
.el-icon-circle-plus
{
font-size
:
45px
;
vertical-align
:
middle
;
color
:
#0d867f
;
}
.inputDiv
{
margin-top
:
5px
;
}
.addBtn
{
display
:
flex
;
justify-content
:
space-between
;
}
.Btn
{
width
:
calc
(
100%
-
270px
);
position
:
fixed
;
height
:
80px
;
bottom
:
-15px
;
right
:
0
;
z-index
:
100
;
background-color
:
#f5f5f6
;
line-height
:
80px
;
span
{
display
:
inline-block
;
width
:
89px
;
height
:
30px
;
line-height
:
30px
;
text-align
:
center
;
border-radius
:
5px
;
margin-right
:
32px
;
background-color
:
#0d867f
;
border
:
1px
solid
#0d867f
;
color
:
#fff
;
}
span
:first-of-type
{
border
:
1px
solid
grey
;
color
:
#000
;
background-color
:
#fff
;
}
}
</
style
>
\ No newline at end of file
src/views/assessChecks/checkComplianceXF.vue
View file @
db3c9e6
...
...
@@ -239,7 +239,7 @@ export default {
box-sizing
:
border-box
;
overflow-x
:
hidden
;
.bottom
{
width
:
calc
(
100%
-
2
46
px
);
width
:
calc
(
100%
-
2
70
px
);
position
:
fixed
;
bottom
:
-15px
;
right
:
0
;
...
...
src/views/assessChecks/components/kkkkk.pdf
deleted
100644 → 0
View file @
923b989
No preview for this file type
src/views/assessChecks/components/seachList.vue
deleted
100644 → 0
View file @
923b989
<
template
>
<div
class=
"main"
>
<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>
<el-date-picker
v-model=
"planTime"
type=
"date"
placeholder=
"选择日期"
>
</el-date-picker>
</div>
<div
class=
"form-group"
>
<label>
后评估专家组长:
</label>
<select
class=
"form-control"
v-model=
"modeExpert"
placeholder=
"请选择"
>
<option
v-for=
"(item, index) in expertList"
:value=
"item.id"
:key=
"item.id"
>
{{
item
.
name
}}
</option>
</select>
</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
class=
"form-group"
>
<label>
创建人:
</label>
<input
type=
"text"
class=
"form-control"
placeholder=
"请输入内容"
v-model=
"creator"
/>
</div>
<div
class=
"form-group"
>
<label>
创建时间:
</label>
<el-date-picker
v-model=
"reviewTime"
type=
"date"
placeholder=
"选择日期"
>
</el-date-picker>
</div>
-->
<div
style=
"width: 100%"
></div>
<div
class=
"btn_container"
>
<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)"
>
<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=
"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)"
>
<img
class=
"buttonIcon"
src=
"../../../assets/bj.png"
/>
编辑
</p>
<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>
<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>
<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>
<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>
<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>
<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>
<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>
<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>
<p
class=
"btn btn-primary"
@
click=
"appeal()"
v-if=
"appealShow.includes(searchtype)"
>
申诉
</p>
<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>
-->
</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"
@
close=
"closeDialog"
>
<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
{
expertIdList
:[],
BJbatchYear
:
''
,
BJbatchName
:
''
,
BJplanTime
:
""
,
BJarea
:
""
,
BJbzarea
:
""
,
BZarea
:
""
,
QKarea
:
""
,
dialogXQ
:
false
,
addZJList
:[],
expertState
:
''
,
fields
:
""
,
zjfullName
:
''
,
zjtotal
:
0
,
zjtableData
:[],
addcurrentPage
:
1
,
addtableData
:[],
message
:
{},
category
:
[
{
name
:
"2024"
,
id
:
1
},
{
name
:
"2023"
,
id
:
2
},
{
name
:
"2022"
,
id
:
3
},
{
name
:
"2021"
,
id
:
4
},
],
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
:
[
{
name
:
"11"
,
id
:
1
},
{
name
:
"21"
,
id
:
2
},
{
name
:
"31"
,
id
:
3
},
],
stateList
:
[
{
name
:
"未下发"
,
id
:
0
},
{
name
:
"已下发"
,
id
:
1
},
{
name
:
"已撤回"
,
id
:
2
},
],
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"
],
dialogAdd
:
false
,
dialogAddzj
:
false
,
pageSize
:
10
,
current
:
1
,
addtotal
:
0
,
currentAdd
:
1
,
pageSizeAdd
:
10
,
xfParam
:
""
,
dialogedit
:
false
,
};
},
props
:
{
searchtype
:
{
type
:
String
,
default
:
""
,
},
selection
:{
type
:
Array
,
default
:[],
}
},
mounted
()
{
console
.
log
(
this
.
searchtype
,
"类型"
);
},
methods
:
{
//下发
async
sendMsg
(){
let
params
=
this
.
xfParams
console
.
log
(
params
,
'222'
)
let
res
=
await
sendEvalBatchInfo
(
params
)
console
.
log
(
res
)
},
cancelZJ
(){
this
.
dialogAddzj
=
false
;
},
cancelBJ
(){
this
.
dialogedit
=
false
;
},
async
saveBJ
(){
// let expertIdList=[]
// this.addZJList.forEach(item=>{
// expertIdList.push(item.expertId)
// })
let
expertStr
=
JSON
.
stringify
(
this
.
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"
);
}
this
.
dialogedit
=
false
;
},
cancelXZ
(){
this
.
dialogAdd
=
false
this
.
dialogXQ
=
false
},
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
)
this
.
$emit
(
"listenToChildEvent"
,
"reset"
);
this
.
expertIdList
=
expertIdList
}
},
saveZJ
(){
this
.
addtableData
.
push
(...
this
.
addZJList
)
this
.
dialogAddzj
=
false
;
console
.
log
(
this
.
addtableData
,
'addtableData'
)
},
handleSelectionChange
(){
this
.
addZJList
=
this
.
$refs
.
multipleTableZJ
.
selection
console
.
log
(
this
.
$refs
.
multipleTableZJ
.
selection
,
'2222'
);
},
handleSizeChangeAdd
(
val
){
this
.
pageSizeAdd
=
val
},
handleCurrentChangeAdd
(
val
){
this
.
currentAdd
=
val
},
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
;
this
.
$emit
(
"listenToChildEvent"
,
"reset"
);
},
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
;
this
.
addtableData
.
forEach
(
item
=>
{
this
.
expertIdList
.
push
(
item
.
expertId
)
})
},
deletes
()
{
console
.
log
(
"删除"
)
this
.
$emit
(
"delateEval"
,
"delates"
);
},
expert
()
{},
submiterials
()
{},
inspectionEvaluation
()
{},
submitQuestion
()
{},
//撤回
async
withdraw
()
{
//只能撤回已下发的 单个撤回传batchId: 0,
let
res
=
await
chEvalBatchInfo
},
},
};
</
script
>
<
style
lang=
"scss"
scoped
>
.main
{
font-size
:
14px
;
}
.estimateBatchConfirmRelease
{
height
:
100%
;
}
.btn_container
{
margin-left
:
20px
;
margin-top
:
20px
;
margin-bottom
:
15px
;
}
.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
;
}
.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
;
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
;
}
.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
deleted
100644 → 0
View file @
923b989
<
template
>
<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=
"expertName"
label=
"后评估专家"
width=
"auto"
>
</el-table-column>
<el-table-column
prop=
"postEvalState"
label=
"批次下发状态"
width=
"auto"
>
<!--
<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=
"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
{
currentPage
:
1
,
pageSize
:
"5"
,
}
},
props
:
{
tableData
:
{
type
:
Array
,
default
:[],
},
total
:{
type
:
Number
,
default
:
""
,
},
tbtyps
:{
type
:
String
,
default
:
""
,
}
},
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
)
},
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
lang=
"scss"
scoped
>
.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
;
}
</
style
>
\ No newline at end of file
src/views/assessChecks/qrCompliance.vue
View file @
db3c9e6
...
...
@@ -150,6 +150,7 @@ export default {
}
},
cancel
()
{
console
.
log
(
'电击取消'
)
this
.
$router
.
go
(
-
1
);
},
//确认更改
...
...
src/views/layout/analysisCore.vue
View file @
db3c9e6
<
template
>
<div>
<div
id=
"parentElement"
v-show=
"false"
>
{{
id
}}
</div>
<iframe
src=
"http:/
/192.168.50.1:1800
0/static/"
frameborder=
"0"
style=
"width:100vw;height:100vh;"
id=
"iframe"
></iframe>
<iframe
src=
"http:/
127.0.0.1:8
0/static/"
frameborder=
"0"
style=
"width:100vw;height:100vh;"
id=
"iframe"
></iframe>
</div>
</
template
>
...
...
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