Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
S
smart_gov_platform
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
赵啸非
smart_gov_platform
Commits
fd646edb
Commit
fd646edb
authored
Feb 14, 2023
by
王启林
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改报表样式+新增样表记录、填单记录、评价记录报表
Signed-off-by:
王启林
<
1940603613@qq.com
>
parent
669d9365
Changes
14
Show whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
2547 additions
and
2 deletions
+2547
-2
portal-manager-ui/admin/.env.development
portal-manager-ui/admin/.env.development
+2
-2
portal-manager-ui/admin/src/assets/css/common.less
portal-manager-ui/admin/src/assets/css/common.less
+518
-0
portal-manager-ui/admin/src/views/dataAdmin/components/evaluationRecordReport/components/HandlingDetails.vue
...nts/evaluationRecordReport/components/HandlingDetails.vue
+278
-0
portal-manager-ui/admin/src/views/dataAdmin/components/evaluationRecordReport/departmentEvaluation.vue
...omponents/evaluationRecordReport/departmentEvaluation.vue
+231
-0
portal-manager-ui/admin/src/views/dataAdmin/components/evaluationRecordReport/matterEvaluation.vue
...in/components/evaluationRecordReport/matterEvaluation.vue
+247
-0
portal-manager-ui/admin/src/views/dataAdmin/components/evaluationRecordReport/mixins/modal.js
...taAdmin/components/evaluationRecordReport/mixins/modal.js
+99
-0
portal-manager-ui/admin/src/views/dataAdmin/components/evaluationRecordReport/module.vue
...ws/dataAdmin/components/evaluationRecordReport/module.vue
+106
-0
portal-manager-ui/admin/src/views/dataAdmin/components/evaluationRecordReport/windowEvaluation.vue
...in/components/evaluationRecordReport/windowEvaluation.vue
+247
-0
portal-manager-ui/admin/src/views/dataAdmin/components/fillRecordReport/fillForm.vue
.../views/dataAdmin/components/fillRecordReport/fillForm.vue
+219
-0
portal-manager-ui/admin/src/views/dataAdmin/components/fillRecordReport/mixins/modal.js
...ews/dataAdmin/components/fillRecordReport/mixins/modal.js
+99
-0
portal-manager-ui/admin/src/views/dataAdmin/components/fillRecordReport/module.vue
...rc/views/dataAdmin/components/fillRecordReport/module.vue
+106
-0
portal-manager-ui/admin/src/views/dataAdmin/components/sampleRecordReport/mixins/modal.js
...s/dataAdmin/components/sampleRecordReport/mixins/modal.js
+99
-0
portal-manager-ui/admin/src/views/dataAdmin/components/sampleRecordReport/module.vue
.../views/dataAdmin/components/sampleRecordReport/module.vue
+106
-0
portal-manager-ui/admin/src/views/dataAdmin/components/sampleRecordReport/sampleForm.vue
...ws/dataAdmin/components/sampleRecordReport/sampleForm.vue
+190
-0
No files found.
portal-manager-ui/admin/.env.development
View file @
fd646edb
# 开发环境配置
NODE_ENV = development
#
VUE_APP_API_BASE_URL=http://192.168.0.98:11078
VUE_APP_API_BASE_URL=http://192.168.0.98:11078
#宜宾
VUE_APP_API_BASE_URL=http://10.12.185.213:11072
#
VUE_APP_API_BASE_URL=http://10.12.185.213:11072
portal-manager-ui/admin/src/assets/css/common.less
0 → 100644
View file @
fd646edb
/* 颜色 */
.primary {
color: #1890ff;
}
.delete {
color: #ff4d4f;
}
.green {
color: #1bbc9b;
}
.clofff {
color: #fff;
}
.orange {
color: orange;
}
.bgdel {
background-color: #ff4d4f;
}
.bgpr {
background-color: #1890ff;
}
.bgg {
background-color: #1bbc9b;
}
/* 版心 */
.container {
width: 1200px;
}
/* 弹性布局 */
.flex {
display: flex;
}
.flex1 {
flex: 1;
}
.flexc {
flex-direction: column;
}
.flexwrap {
flex-wrap: wrap;
}
.jcc {
justify-content: center;
}
.jca {
justify-content: space-around;
}
.jcb {
justify-content: space-between;
}
.jce {
justify-content: space-evenly;
}
.aic {
align-items: center;
}
.aca {
align-content: space-around;
}
.acb {
align-content: space-between;
}
.ace {
align-content: space-evenly;
}
/* margin */
.m10 {
margin: 10px;
}
.m15 {
margin: 15px;
}
.m20 {
margin: 20px;
}
.mt10 {
margin-top: 10px;
}
.mt15 {
margin-top: 15px;
}
.mt20 {
margin-top: 20px;
}
.mt50 {
margin-top: 50px;
}
.ml10 {
margin-left: 10px;
}
.ml15 {
margin-left: 15px;
}
.ml20 {
margin-left: 20px;
}
.ml25 {
margin-left: 25px;
}
.mr10 {
margin-right: 10px;
}
.mr15 {
margin-right: 15px;
}
.mr20 {
margin-right: 20px;
}
.mr25 {
margin-right: 25px;
}
.mr50 {
margin-right: 50px;
}
.mb10 {
margin-bottom: 10px;
}
.mb15 {
margin-bottom: 15px;
}
.mb20 {
margin-bottom: 20px;
}
.mb25 {
margin-bottom: 25px;
}
/* padding */
.pd10 {
padding: 10px;
}
.pd15 {
padding: 15px;
}
.pd20 {
padding: 20px;
}
.pdt10 {
padding-top: 10px;
}
.pdt15 {
padding-top: 15px;
}
.pdt20 {
padding-top: 20px;
}
.pdt30 {
padding-top: 30px;
}
.pdl8 {
padding-left: 8px;
}
.pdl10 {
padding-left: 10px;
}
.pdl15 {
padding-left: 15px;
}
.pdl20 {
padding-left: 20px;
}
.pdr10 {
padding-right: 10px;
}
.pdr15 {
padding-right: 15px;
}
.pdr20 {
padding-right: 20px;
}
.pdb10 {
padding-bottom: 10px;
}
.pdb15 {
padding-bottom: 15px;
}
.pdb20 {
padding-bottom: 20px;
}
/* 字体大小 */
.font16 {
font-size: 16px;
}
.font18 {
font-size: 18px;
}
.font20 {
font-size: 20px;
}
.font22 {
font-size: 22px;
}
.font24 {
font-size: 24px;
}
.font26 {
font-size: 26px;
}
.font28 {
font-size: 28px;
}
.font30 {
font-size: 30px;
}
/* 字体位置 */
.tac {
text-align: center;
}
.tal {
text-align: left;
}
.tar {
text-align: right;
}
/* 加粗 */
.fontw600 {
font-weight: 600;
}
.fontw700 {
font-weight: 700;
}
.fontw800 {
font-weight: 800;
}
/* 手型鼠标 */
.pointer {
cursor: pointer;
}
.pagination {
margin-top: 10px;
text-align: right;
}
.color_title {
margin-left: 15px;
position: relative;
margin-bottom: 15px;
color: #1890ff;
}
.color_title::before {
content: "";
width: 4px;
height: 20px;
position: absolute;
top: 0px;
left: -16px;
background-color: rgba(5, 149, 253, 1);
}
::-webkit-scrollbar {
width: 6px;
height: 6px;
overflow-y: auto;
}
::-webkit-scrollbar-thumb {
border-radius: 6px;
background-color: rgba(144, 147, 153, 0.5);
}
::-webkit-scrollbar-track {
border-radius: 6px;
background: #fff;
}
.ant-modal-close {
color: #188fff !important;
}
.ant-modal-close svg {
font-size: 26px !important;
}
.ant-modal-title {
color: #1890ff !important;
font-size: 18px;
font-weight: bold;
}
.header_box {
padding-bottom: 1rem;
display: flex;
justify-content: space-between;
align-items: center;
& > div {
display: flex;
justify-content: flex-start;
align-items: center;
b {
font-style: normal;
font-weight: unset;
font-size: 16px;
margin-left: 20px;
i {
color: #0595fd;
font-style: normal;
}
}
sub {
font-size: 14px;
font-style: normal;
bottom: unset;
margin-left: 20px;
}
.export_btn {
outline: none;
cursor: pointer;
border: none;
padding: 0.8rem 1.2rem;
margin: 0;
font-family: inherit;
font-size: inherit;
position: relative;
display: inline-block;
font-size: 0.8rem;
border-radius: 6px;
overflow: hidden;
background: #42dac8;
color: ghostwhite;
& span {
position: relative;
z-index: 10;
transition: color 0.4s;
}
&:hover span {
color: rgb(254, 242, 242);
}
&::before,
&::after {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 0;
}
&::before {
content: "";
background: #08cfb8;
width: 120%;
left: -10%;
transform: skew(30deg);
transition: transform 0.4s cubic-bezier(0.3, 1, 0.8, 1);
}
&:hover::before {
transform: translate3d(100%, 0, 0);
}
}
}
& > span {
display: flex;
justify-content: space-between;
align-items: center;
/deep/.ant-input-affix-wrapper {
width: 15rem !important;
margin-right: 1rem !important;
}
/deep/.ant-input {
height: 2.3rem !important;
}
/deep/.ant-select-selection {
width: 170px !important;
height: 2.3rem !important;
margin-right: 1rem !important;
}
/deep/.ant-select-selection__rendered {
height: 100% !important;
}
/deep/.ant-select-selection-selected-value {
height: 100% !important;
line-height: 2.3rem !important;
}
.search_btn {
padding: 0.8rem 1.2rem;
border: 0;
border-radius: 5px;
background: #1890ff;
box-shadow: rgb(0 0 0 / 5%) 0 0 8px;
letter-spacing: 1.5px;
text-transform: uppercase;
font-size: 0.8rem;
color: hsl(0, 0%, 100%);
transition: all 0.5s ease;
cursor: pointer;
}
.search_btn:hover {
letter-spacing: 3px;
background-color: #7d5cf9;
color: hsl(0, 0%, 100%);
box-shadow: rgb(93 24 220) 0px 2px 10px 0px;
}
.search_btn:active {
letter-spacing: 3px;
background-color: #7d5cf9;
color: hsl(0, 0%, 100%);
box-shadow: rgb(93 24 220) 0px 0px 0px 0px;
transform: translateY(2px);
transition: 100ms;
}
}
}
.main {
.type0 {
color: #888888;
}
.type1 {
color: #f94545;
}
.type2 {
color: #04ca8f;
}
.ant-btn-link {
padding: 0 !important;
& + .ant-btn-link {
margin-left: 1rem !important;
}
}
.ant-table-pagination {
float: right !important;
}
}
.ant-btn-success {
background-color: #04ca8f;
border-color: #04ca8f;
color: #fff;
text-shadow: 0 -1px 0 rgb(0 0 0 / 12%);
-webkit-box-shadow: 0 2px 0 rgb(0 0 0 / 5%);
box-shadow: 0 2px 0 rgb(0 0 0 / 5%);
}
.ant-btn-success:hover,
.ant-btn-success:focus {
color: #fff;
background-color: #42dac8;
border-color: #42dac8;
}
.ant-select{
min-width: 120px
}
.ant-calendar-picker{
min-width: 270px;
}
\ No newline at end of file
portal-manager-ui/admin/src/views/dataAdmin/components/evaluationRecordReport/components/HandlingDetails.vue
0 → 100644
View file @
fd646edb
<
template
>
<div
class=
"handling"
ref=
"handling"
>
<a-drawer
:destroyOnClose=
"true"
:title=
"modalInfo.title"
:width=
"modalInfo.width"
:visible=
"modalInfo.visible"
@
close=
"modalClose"
@
getContainer=
"() => $refs.handling"
>
<div
class=
"headerInfo"
>
<p>
<span
v-for=
"item of 3"
>
总耗时:13分15秒
<i
class=
"fa fa-long-arrow-down"
></i
></span>
</p>
<p><span
v-for=
"item of 3"
>
平均耗时:14分0秒
</span></p>
</div>
<div
class=
"state"
>
接件结束
</div>
<a-steps
direction=
"vertical"
size=
"small"
:current=
"approveLs.length"
class=
"steps_box"
>
<a-step
v-for=
"(item, index) of approveLs"
:key=
"item.id"
:disabled=
"true"
@
click.stop=
"drawerchange(item.id)"
class=
"step_box"
>
<div
class=
"icon_box"
slot=
"icon"
></div>
<div
class=
"title_box"
slot=
"title"
>
<span
class=
"title_name"
>
{{
item
.
status
==
1
?
"
办理中
"
:
item
.
status
==
2
?
"
接件结束
"
:
"
排队中
"
}}
</span>
</div>
<div
class=
"description_box"
slot=
"description"
v-if=
"item.status == 0"
>
<div
class=
"details"
>
<span
v-for=
"item of 8"
><i
class=
"lable"
>
申报人:
</i>
张三
</span>
</div>
</div>
<div
class=
"description_box"
slot=
"description"
v-else-if=
"item.status == 1"
>
<div
class=
"details"
>
<span
v-for=
"item of 6"
><i
class=
"lable"
>
办理窗口:
</i>
s003
</span>
</div>
</div>
<div
class=
"description_box"
slot=
"description"
v-else-if=
"item.status == 2"
>
<div
class=
"details"
>
<span
v-for=
"item of 2"
><i
class=
"lable"
>
办理结束时间:
</i>
2021-01-15 12:00:00
</span
>
</div>
</div>
</a-step>
</a-steps>
</a-drawer>
</div>
</
template
>
<
script
>
import
modal
from
"
../mixins/modal
"
;
export
default
{
mixins
:
[
modal
],
name
:
"
evaluationHandlingDetails
"
,
data
()
{
return
{
approveLs
:
[
{
id
:
"
001
"
,
status
:
0
,
},
{
id
:
"
002
"
,
status
:
1
,
},
{
id
:
"
003
"
,
status
:
2
,
},
],
};
},
filters
:
{
returnScolor
(
key
)
{
switch
(
key
)
{
case
0
:
return
"
state_colo1
"
;
break
;
case
1
:
return
"
state_colo2
"
;
break
;
case
2
:
return
"
state_colo3
"
;
break
;
case
3
:
return
"
state_colo2
"
;
break
;
case
4
:
return
"
state_colo3
"
;
break
;
default
:
return
"
state_colo0
"
;
break
;
}
},
},
mounted
()
{},
methods
:
{},
};
</
script
>
<
style
lang=
"less"
scoped
>
/deep/.ant-steps-icon {
top: -4px !important;
}
/deep/.ant-drawer-content {
overflow-x: hidden !important;
}
/deep/.icon_box {
margin-top: -20px !important;
display: inline-block;
width: 12px;
height: 12px;
background: #0595fd !important;
border-radius: 50%;
-webkit-box-shadow: 0 0 2px 8px #d1dffc !important;
box-shadow: 0 0 2px 8px #d1dffc !important;
}
.title_box {
.title_name {
font-size: 16px !important;
font-weight: bold !important;
color: #1d95fd !important;
}
}
.headerInfo {
border-left: 3px solid #0595fd;
background: #e6f5ff;
padding: 5px 15px;
margin-bottom: 20px;
p {
&:first-child {
color: #0037b0;
display: flex;
align-items: center;
justify-content: space-between;
padding: 2px 0;
font-size: 16px;
span {
display: inline-block;
width: 32%;
i {
color: #63d7a5 !important;
margin-left: 5px;
}
}
}
&:last-child {
color: #0595fd;
padding: 2px 0;
display: flex;
font-size: 14px;
align-items: center;
justify-content: space-between;
span {
display: inline-block;
width: 32%;
}
}
}
}
.description_box {
.details {
display: flex;
flex-wrap: wrap;
span {
display: inline-block;
width: 49%;
padding: 4px 0;
.lable {
display: inline-block;
font-style: normal;
max-width: 100px;
text-align: left;
}
}
}
}
.state {
position: absolute;
right: 10px;
top: 150px;
width: 85px;
height: 85px;
border: 5px solid #ebebeb;
border-radius: 50%;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
display: flex;
justify-content: center;
align-items: center;
}
.state_colo0 {
color: #bbb;
}
.state_colo1 {
color: #fac;
}
.state_colo2 {
color: #05fd6c;
}
.state_colo3 {
color: #f7072f;
}
/deep/.ant-steps-item-tail {
left: 6px !important;
top: 24px !important;
border-left: 3px dashed #e6f5ff !important;
&::after {
background: none !important;
}
}
/deep/.ant-steps-item {
& + .ant-steps-item {
margin-top: 25px !important;
}
}
.handling {
.steps_box {
height: 280px !important;
overflow-y: auto;
.step_box {
cursor: pointer;
position: relative;
.ant-steps-item-title {
width: 100% !important;
padding-right: 10px !important;
padding-left: 30px;
}
.ant-steps-item-description {
padding-left: 30px;
padding-bottom: 0;
}
}
}
}
</
style
>
portal-manager-ui/admin/src/views/dataAdmin/components/evaluationRecordReport/departmentEvaluation.vue
0 → 100644
View file @
fd646edb
<
template
>
<div
class=
"callRecord-Container"
>
<div
class=
"header_box"
>
<div>
<a-button
type=
"success"
@
click=
"exportTable"
>
<span>
{{
tableSelectedRows
.
length
?
"
导出
"
:
"
导出全部
"
}}
</span>
</a-button>
<a-button
type=
"danger"
@
click=
"exportTable"
>
<span>
{{
tableSelectedRows
.
length
?
"
删除
"
:
"
删除全部
"
}}
</span>
</a-button>
<b>
评价次数:
<i>
233次
</i></b>
<sub>
统计时间段:2020.09.09~2021.09.09
</sub>
</div>
<span>
<a-select
placeholder=
"全部评价"
>
<!--
<a-select-option
v-for=
"(item, index) of selectOptions"
:key=
"index"
:value=
"item.value"
>
{{
item
.
label
}}
</a-select-option>
-->
<a-select-option
value=
"001"
>
满意
</a-select-option>
<a-select-option
value=
"002"
>
非常满意
</a-select-option>
<a-select-option
value=
"003"
>
不满意
</a-select-option>
</a-select>
<a-select
placeholder=
"全部来源"
>
<!--
<a-select-option
v-for=
"(item, index) of selectOptions"
:key=
"index"
:value=
"item.value"
>
{{
item
.
label
}}
</a-select-option>
-->
<a-select-option
value=
"001"
>
设备001
</a-select-option>
<a-select-option
value=
"002"
>
设备002
</a-select-option>
</a-select>
<a-range-picker
format=
"YYYY年MM月DD日"
class=
"range_picker_style"
@
change=
"rangePickerChange"
v-model=
"BegindAndEndTime"
>
</a-range-picker>
<a-input
v-model=
"searchName"
placeholder=
"请输入评价人姓名或窗口编号搜索"
>
<a-icon
slot=
"prefix"
type=
"search"
/>
</a-input>
<a-button
type=
"primary"
>
搜索
</a-button>
</span>
</div>
<div
class=
"main"
>
<a-table
size=
"small"
bordered
:row-key=
"(record) => record.id"
:row-selection=
"
{
selectedRowKeys: tableSelectedKeys,
onChange: onSelectChange,
}" :scroll="{ y: 590 }" :pagination="tablePagination" @change="pagTableChange" :loading="tableLoading"
:columns="tableHeaders" :dataSource="tableSourceData">
<template
slot=
"评价人照片"
slot-scope=
"text, record, index"
>
<a-avatar
shape=
"square"
:size=
"40"
icon=
"user"
/>
</
template
>
<
template
slot=
"操作"
slot-scope=
"text, record, index"
>
<a-button
type=
"link"
style=
"color:#FF7370;"
>
删除
</a-button>
<a-button
type=
"link"
@
click=
"openHandlingDetails"
>
详情
</a-button>
</
template
>
</a-table>
<HandlingDetails
ref=
"HandlingDetails"
/>
</div>
</div>
</template>
<
script
>
import
table
from
"
@/mixins/table
"
;
import
HandlingDetails
from
"
./components/HandlingDetails.vue
"
;
export
default
{
mixins
:
[
table
],
name
:
"
departmentEvaluation
"
,
data
()
{
return
{
tableHeaders
:
[
{
title
:
"
序号
"
,
dataIndex
:
"
index
"
,
width
:
"
60px
"
,
key
:
"
index
"
,
align
:
"
center
"
,
customRender
:
(
text
,
record
,
index
)
=>
`
${
index
+
1
}
`
,
},
{
title
:
"
部门名称
"
,
align
:
"
center
"
,
dataIndex
:
"
部门名称
"
,
},
{
title
:
"
评价选项
"
,
align
:
"
center
"
,
dataIndex
:
"
评价选项
"
,
},
{
title
:
"
评价人
"
,
align
:
"
center
"
,
dataIndex
:
"
评价人
"
,
},
{
title
:
"
身份证号
"
,
align
:
"
center
"
,
dataIndex
:
"
身份证号
"
,
},
{
title
:
"
手机号
"
,
align
:
"
center
"
,
dataIndex
:
"
手机号
"
,
},
{
title
:
"
评价时间
"
,
align
:
"
center
"
,
dataIndex
:
"
评价时间
"
,
},
{
title
:
"
评价来源
"
,
align
:
"
center
"
,
dataIndex
:
"
评价来源
"
,
},
{
title
:
"
评价设备
"
,
align
:
"
center
"
,
dataIndex
:
"
评价设备
"
,
},
{
title
:
"
评价人照片
"
,
align
:
"
center
"
,
dataIndex
:
"
评价人照片
"
,
scopedSlots
:
{
customRender
:
"
评价人照片
"
,
},
},
{
title
:
"
操作
"
,
align
:
"
center
"
,
dataIndex
:
"
操作
"
,
scopedSlots
:
{
customRender
:
"
操作
"
,
},
},
],
BegindAndEndTime
:
[],
searchName
:
undefined
,
};
},
components
:
{
HandlingDetails
},
mounted
()
{
this
.
setMoment
();
for
(
let
key
=
0
;
key
<
20
;
key
++
)
{
this
.
tableSourceData
.
push
({
id
:
`00
${
key
+
1
}
`
,
部门名称
:
`财政局`
,
评价选项
:
`非常满意`
,
评价人
:
`唐三`
,
身份证号
:
`510311199909099999`
,
手机号
:
`138888888888`
,
联系电话
:
`138808888
${
key
+
1
}
`
,
评价时间
:
`2021-09-09 09:09:09
${
key
+
1
}
`
,
评价来源
:
`背靠背评价器`
,
评价设备
:
`1楼背靠背评价器`
,
// 评价人照片: `111`,
});
}
},
methods
:
{
rangePickerChange
(
val
)
{
console
.
log
(
val
);
},
QueueState
(
type
)
{
switch
(
type
)
{
case
0
:
return
"
type1
"
;
case
1
:
return
"
type2
"
;
default
:
return
"
type0
"
;
}
},
//详情模块
openHandlingDetails
()
{
this
.
$refs
.
HandlingDetails
.
modalInfo
.
title
=
"
办理明细
"
;
this
.
$refs
.
HandlingDetails
.
modalInfo
.
visible
=
true
;
},
},
};
</
script
>
<
style
lang=
"less"
scoped
>
/deep/.ant-spin-container {
display: block;
}
.header_box {
padding-bottom: 1rem;
display: flex;
justify-content: space-between;
align-items: center;
&>div {
display: flex;
justify-content: flex-start;
align-items: center;
b {
font-style: normal;
font-weight: unset;
font-size: 16px;
margin-left: 20px;
i {
color: #0595fd;
font-style: normal;
}
}
sub {
font-size: 14px;
font-style: normal;
bottom: unset;
margin-left: 20px;
}
}
}
</
style
>
portal-manager-ui/admin/src/views/dataAdmin/components/evaluationRecordReport/matterEvaluation.vue
0 → 100644
View file @
fd646edb
<
template
>
<div
class=
"callRecord-Container"
>
<div
class=
"header_box"
>
<div>
<a-button
type=
"success"
@
click=
"exportTable"
>
<span>
{{
tableSelectedRows
.
length
?
"
导出
"
:
"
导出全部
"
}}
</span>
</a-button>
<a-button
type=
"danger"
@
click=
"exportTable"
>
<span>
{{
tableSelectedRows
.
length
?
"
删除
"
:
"
删除全部
"
}}
</span>
</a-button>
<b>
评价次数:
<i>
233次
</i></b>
<sub>
统计时间段:2020.09.09~2021.09.09
</sub>
</div>
<span>
<a-select
placeholder=
"全部评价"
>
<!--
<a-select-option
v-for=
"(item, index) of selectOptions"
:key=
"index"
:value=
"item.value"
>
{{
item
.
label
}}
</a-select-option>
-->
<a-select-option
value=
"001"
>
满意
</a-select-option>
<a-select-option
value=
"002"
>
非常满意
</a-select-option>
<a-select-option
value=
"003"
>
不满意
</a-select-option>
</a-select>
<a-select
placeholder=
"全部来源"
>
<!--
<a-select-option
v-for=
"(item, index) of selectOptions"
:key=
"index"
:value=
"item.value"
>
{{
item
.
label
}}
</a-select-option>
-->
<a-select-option
value=
"001"
>
设备001
</a-select-option>
<a-select-option
value=
"002"
>
设备002
</a-select-option>
</a-select>
<a-range-picker
format=
"YYYY年MM月DD日"
class=
"range_picker_style"
@
change=
"rangePickerChange"
v-model=
"BegindAndEndTime"
>
</a-range-picker>
<a-input
v-model=
"searchName"
placeholder=
"请输入评价人姓名或窗口编号搜索"
>
<a-icon
slot=
"prefix"
type=
"search"
/>
</a-input>
<a-button
type=
"primary"
>
搜索
</a-button>
</span>
</div>
<div
class=
"main"
>
<a-table
size=
"small"
bordered
:row-key=
"(record) => record.id"
:row-selection=
"
{
selectedRowKeys: tableSelectedKeys,
onChange: onSelectChange,
}" :scroll="{ y: 590 }" :pagination="tablePagination" @change="pagTableChange" :loading="tableLoading"
:columns="tableHeaders" :dataSource="tableSourceData">
<template
slot=
"评价人照片"
slot-scope=
"text, record, index"
>
<a-avatar
shape=
"square"
:size=
"40"
icon=
"user"
/>
</
template
>
<
template
slot=
"操作"
slot-scope=
"text, record, index"
>
<a-button
type=
"link"
style=
"color:#FF7370;"
@
click=
"showModal(record)"
>
删除
</a-button>
<a-button
type=
"link"
@
click=
"openHandlingDetails"
>
详情
</a-button>
</
template
>
</a-table>
<HandlingDetails
ref=
"HandlingDetails"
/>
<a-modal
v-model=
"visible"
title=
"系统提示"
@
ok=
"handleOk"
>
此操作将删除该评价信息,是否继续?
</a-modal>
</div>
</div>
</template>
<
script
>
import
table
from
"
@/mixins/table
"
;
import
HandlingDetails
from
"
./components/HandlingDetails.vue
"
;
export
default
{
mixins
:
[
table
],
name
:
"
matterEvaluation
"
,
data
()
{
return
{
tableHeaders
:
[
{
title
:
"
序号
"
,
dataIndex
:
"
index
"
,
width
:
"
60px
"
,
key
:
"
index
"
,
align
:
"
center
"
,
customRender
:
(
text
,
record
,
index
)
=>
`
${
index
+
1
}
`
,
},
{
title
:
"
排队编号
"
,
align
:
"
center
"
,
dataIndex
:
"
排队编号
"
,
},
{
title
:
"
评价选项
"
,
align
:
"
center
"
,
dataIndex
:
"
评价选项
"
,
},
{
title
:
"
评价人
"
,
align
:
"
center
"
,
dataIndex
:
"
评价人
"
,
},
{
title
:
"
身份证号
"
,
align
:
"
center
"
,
dataIndex
:
"
身份证号
"
,
},
{
title
:
"
手机号
"
,
align
:
"
center
"
,
dataIndex
:
"
手机号
"
,
},
{
title
:
"
评价时间
"
,
align
:
"
center
"
,
dataIndex
:
"
评价时间
"
,
},
{
title
:
"
评价来源
"
,
align
:
"
center
"
,
dataIndex
:
"
评价来源
"
,
},
{
title
:
"
评价设备
"
,
align
:
"
center
"
,
dataIndex
:
"
评价设备
"
,
},
{
title
:
"
评价人照片
"
,
align
:
"
center
"
,
dataIndex
:
"
评价人照片
"
,
scopedSlots
:
{
customRender
:
"
评价人照片
"
,
},
},
{
title
:
"
操作
"
,
align
:
"
center
"
,
dataIndex
:
"
操作
"
,
scopedSlots
:
{
customRender
:
"
操作
"
,
},
},
],
BegindAndEndTime
:
[],
searchName
:
undefined
,
//删除窗口判断
visible
:
false
,
};
},
components
:
{
HandlingDetails
},
mounted
()
{
this
.
setMoment
();
for
(
let
key
=
0
;
key
<
20
;
key
++
)
{
this
.
tableSourceData
.
push
({
id
:
`00
${
key
+
1
}
`
,
排队编号
:
`V00
${
key
+
1
}
`
,
评价选项
:
`非常满意`
,
评价人
:
`唐三`
,
身份证号
:
`510311199909099999`
,
手机号
:
`138888888888`
,
联系电话
:
`138808888
${
key
+
1
}
`
,
评价时间
:
`2021-09-09 09:09:09
${
key
+
1
}
`
,
评价来源
:
`自助服务终端`
,
评价设备
:
`1楼自助服务终端`
,
// 评价人照片: `111`,
});
}
},
methods
:
{
rangePickerChange
(
val
)
{
console
.
log
(
val
);
},
QueueState
(
type
)
{
switch
(
type
)
{
case
0
:
return
"
type1
"
;
case
1
:
return
"
type2
"
;
default
:
return
"
type0
"
;
}
},
//详情模块
openHandlingDetails
()
{
this
.
$refs
.
HandlingDetails
.
modalInfo
.
title
=
"
办理明细
"
;
this
.
$refs
.
HandlingDetails
.
modalInfo
.
visible
=
true
;
},
//删除模态框
showModal
(
record
)
{
console
.
log
(
record
)
this
.
visible
=
true
;
},
//
handleOk
(
e
)
{
console
.
log
(
e
);
this
.
visible
=
false
;
},
},
};
</
script
>
<
style
lang=
"less"
scoped
>
/deep/.ant-spin-container {
display: block;
}
.header_box {
padding-bottom: 1rem;
display: flex;
justify-content: space-between;
align-items: center;
&>div {
display: flex;
justify-content: flex-start;
align-items: center;
b {
font-style: normal;
font-weight: unset;
font-size: 16px;
margin-left: 20px;
i {
color: #0595fd;
font-style: normal;
}
}
sub {
font-size: 14px;
font-style: normal;
bottom: unset;
margin-left: 20px;
}
}
}
</
style
>
portal-manager-ui/admin/src/views/dataAdmin/components/evaluationRecordReport/mixins/modal.js
0 → 100644
View file @
fd646edb
import
{
deepClone
}
from
"
@/utils/js/common.js
"
;
export
default
{
data
()
{
return
{
defaultInfoForm
:
{},
modalInfo
:
{
confirmLoading
:
false
,
visible
:
false
,
title
:
'
用户信息
'
,
width
:
'
30%
'
,
},
}
},
props
:
{
sourceInfoForm
:
{
type
:
Object
,
default
:
()
=>
{
return
{
// --------------申报人信息-----------------------
name
:
"
张三
"
,
Gender
:
"
男
"
,
Age
:
"
56
"
,
Phone
:
"
13080888888
"
,
yuyuecishu
:
"
12
"
,
paiduicishu
:
"
6
"
,
guanlianyewu
:
"
12
"
,
haxizhi
:
"
3sad54a5f4sda4da4sd4adasdqa1sda1g1d1ada4d4f1fgweqqwq01f4sa4dgds1eqw5e1c2c2vx
"
,
qukuaigaodu
:
"
24292496
"
,
chuangjianshijian
:
"
2022-04-25 18:22
"
,
// --------------业务分析-----------------------
yewuming
:
'
公安户籍类
'
,
guanlianshixiang
:
[
{
shixiangmingcheng
:
'
事项名称事项名称事项名称事项名称事项名称事项名称
'
,
},
{
shixiangmingcheng
:
'
事项名称事项名称事项名称事项名称事项名称事项名称
'
,
},
{
shixiangmingcheng
:
'
事项名称事项名称事项名称事项名称事项名称事项名称
'
,
},
],
shoulicishu
:
"
12546
"
,
banjiecishu
:
"
12348
"
,
haopinglv
:
"
99.99%
"
,
// --------------工作人员-----------------------
workImgUrl
:
require
(
'
../../../../../assets/images/logo.png
'
),
workpeople
:
"
刘明洋
"
,
JobNo
:
"
01
"
,
department
:
'
税务局
'
,
PoliticalOutlook
:
'
党员
'
,
workPhone
:
'
13080888888
'
,
Starlevel
:
'
5
'
,
souliyewu
:
'
12247877
'
,
pingjiacishu
:
'
1225454
'
,
};
},
},
},
watch
:
{
sourceInfoForm
:
{
handler
(
newValue
,
oldValue
)
{
// console.log(newValue);
// console.log(oldValue);
this
.
defaultInfoForm
=
Object
.
assign
({},
deepClone
(
newValue
));
},
deep
:
true
,
},
},
computed
:
{
},
created
()
{
setTimeout
(()
=>
{
this
.
defaultInfoForm
=
Object
.
assign
({},
deepClone
(
this
.
sourceInfoForm
));
// console.log(this.defaultInfoForm);
},
0
);
},
methods
:
{
modalClose
()
{
this
.
modalInfo
.
visible
=
false
;
}
},
}
\ No newline at end of file
portal-manager-ui/admin/src/views/dataAdmin/components/evaluationRecordReport/module.vue
0 → 100644
View file @
fd646edb
<
template
>
<div
class=
"Container"
>
<div
class=
"main"
>
<a-tabs
v-model=
"tabsActive"
@
change=
"tabsChange"
:forceRender=
"false"
>
<a-tab-pane
:key=
"item.path"
v-for=
"(item, index) of tabsList['children']"
:tab=
"item['meta']['title']"
>
</a-tab-pane>
</a-tabs>
<router-view
style=
"padding: 0 1rem"
/>
</div>
</div>
</
template
>
<
script
>
import
{
getItemData
}
from
"
@/utils/js/common.js
"
;
import
common
from
"
@/mixins/common
"
;
export
default
{
name
:
"
evaluationRecordReportModule
"
,
mixins
:
[
common
],
data
()
{
return
{
tabsActive
:
undefined
,
};
},
computed
:
{
tabsList
()
{
return
getItemData
(
this
.
$router
.
options
.
routes
,
"
name
"
,
"
evaluationRecordReport
"
);
},
},
mounted
()
{
this
.
$nextTick
(()
=>
{
this
.
tabsActive
=
this
.
$route
.
path
.
substr
(
this
.
$route
.
path
.
lastIndexOf
(
"
/
"
)
+
1
);
});
},
methods
:
{
tabsChange
(
val
)
{
this
.
$router
.
push
({
path
:
`/home/dataManagement/evaluationRecordReport/
${
val
}
`
,
// query: { testoption: "test001" },
});
},
},
};
</
script
>
<
style
lang=
"less"
scoped
>
@headerH: 4.5rem;
.Container {
height: 100% !important;
// background: #fac;
background: #f5f5f5;
display: flex;
flex-direction: column;
.main {
// background: #afc;
background: #ffffff;
border-radius: 6px;
flex: 1;
overflow-y: auto;
overflow-x: hidden;
margin: 1.2rem 2rem;
}
&::before {
content: "";
display: block;
width: 100%;
height: @headerH;
background: rgb(59, 135, 255);
background: -moz-linear-gradient(
174deg,
rgba(59, 135, 255, 1) 24%,
rgba(108, 53, 247, 1) 85%
);
background: -webkit-linear-gradient(
174deg,
rgba(59, 135, 255, 1) 24%,
rgba(108, 53, 247, 1) 85%
);
background: linear-gradient(
174deg,
rgba(59, 135, 255, 1) 24%,
rgba(108, 53, 247, 1) 85%
);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#3b87ff",endColorstr="#6c35f7",GradientType=1);
}
/deep/.ant-tabs-nav {
.ant-tabs-tab {
margin: 0 !important;
}
}
/deep/.ant-tabs-tab {
font-size: 1rem !important;
& + .ant-tabs-tab {
margin: 0 !important;
margin-left: 0.7rem !important;
}
}
}
</
style
>
portal-manager-ui/admin/src/views/dataAdmin/components/evaluationRecordReport/windowEvaluation.vue
0 → 100644
View file @
fd646edb
<
template
>
<div
class=
"callRecord-Container"
>
<div
class=
"header_box"
>
<div>
<a-button
type=
"success"
@
click=
"exportTable"
>
<span>
{{
tableSelectedRows
.
length
?
"
导出
"
:
"
导出全部
"
}}
</span>
</a-button>
<a-button
type=
"danger"
@
click=
"exportTable"
>
<span>
{{
tableSelectedRows
.
length
?
"
删除
"
:
"
删除全部
"
}}
</span>
</a-button>
<b>
评价次数:
<i>
233次
</i></b>
<sub>
统计时间段:2020.09.09~2021.09.09
</sub>
</div>
<span>
<a-select
placeholder=
"全部评价"
>
<!--
<a-select-option
v-for=
"(item, index) of selectOptions"
:key=
"index"
:value=
"item.value"
>
{{
item
.
label
}}
</a-select-option>
-->
<a-select-option
value=
"001"
>
满意
</a-select-option>
<a-select-option
value=
"002"
>
非常满意
</a-select-option>
<a-select-option
value=
"003"
>
不满意
</a-select-option>
</a-select>
<a-select
placeholder=
"全部来源"
>
<!--
<a-select-option
v-for=
"(item, index) of selectOptions"
:key=
"index"
:value=
"item.value"
>
{{
item
.
label
}}
</a-select-option>
-->
<a-select-option
value=
"001"
>
设备001
</a-select-option>
<a-select-option
value=
"002"
>
设备002
</a-select-option>
</a-select>
<a-range-picker
format=
"YYYY年MM月DD日"
class=
"range_picker_style"
@
change=
"rangePickerChange"
v-model=
"BegindAndEndTime"
>
</a-range-picker>
<a-input
v-model=
"searchName"
placeholder=
"请输入评价人姓名或窗口编号搜索"
>
<a-icon
slot=
"prefix"
type=
"search"
/>
</a-input>
<a-button
type=
"primary"
>
搜索
</a-button>
</span>
</div>
<div
class=
"main"
>
<a-table
size=
"small"
bordered
:row-key=
"(record) => record.id"
:row-selection=
"
{
selectedRowKeys: tableSelectedKeys,
onChange: onSelectChange,
}" :scroll="{ y: 590 }" :pagination="tablePagination" @change="pagTableChange" :loading="tableLoading"
:columns="tableHeaders" :dataSource="tableSourceData">
<template
slot=
"评价人照片"
slot-scope=
"text, record, index"
>
<a-avatar
shape=
"square"
:size=
"40"
icon=
"user"
/>
</
template
>
<
template
slot=
"操作"
slot-scope=
"text, record, index"
>
<a-button
type=
"link"
style=
"color:#FF7370;"
@
click=
"showModal(record)"
>
删除
</a-button>
<a-button
type=
"link"
@
click=
"openHandlingDetails"
>
详情
</a-button>
</
template
>
</a-table>
<HandlingDetails
ref=
"HandlingDetails"
/>
<a-modal
v-model=
"visible"
title=
"系统提示"
@
ok=
"handleOk"
>
此操作将删除该评价信息,是否继续?
</a-modal>
</div>
</div>
</template>
<
script
>
import
table
from
"
@/mixins/table
"
;
import
HandlingDetails
from
"
./components/HandlingDetails.vue
"
;
export
default
{
mixins
:
[
table
],
name
:
"
windowsEvaluation
"
,
data
()
{
return
{
tableHeaders
:
[
{
title
:
"
序号
"
,
dataIndex
:
"
index
"
,
width
:
"
60px
"
,
key
:
"
index
"
,
align
:
"
center
"
,
customRender
:
(
text
,
record
,
index
)
=>
`
${
index
+
1
}
`
,
},
{
title
:
"
窗口编号
"
,
align
:
"
center
"
,
dataIndex
:
"
窗口编号
"
,
},
{
title
:
"
评价选项
"
,
align
:
"
center
"
,
dataIndex
:
"
评价选项
"
,
},
{
title
:
"
评价人
"
,
align
:
"
center
"
,
dataIndex
:
"
评价人
"
,
},
{
title
:
"
身份证号
"
,
align
:
"
center
"
,
dataIndex
:
"
身份证号
"
,
},
{
title
:
"
手机号
"
,
align
:
"
center
"
,
dataIndex
:
"
手机号
"
,
},
{
title
:
"
评价时间
"
,
align
:
"
center
"
,
dataIndex
:
"
评价时间
"
,
},
{
title
:
"
评价来源
"
,
align
:
"
center
"
,
dataIndex
:
"
评价来源
"
,
},
{
title
:
"
评价设备
"
,
align
:
"
center
"
,
dataIndex
:
"
评价设备
"
,
},
{
title
:
"
评价人照片
"
,
align
:
"
center
"
,
dataIndex
:
"
评价人照片
"
,
scopedSlots
:
{
customRender
:
"
评价人照片
"
,
},
},
{
title
:
"
操作
"
,
align
:
"
center
"
,
dataIndex
:
"
操作
"
,
scopedSlots
:
{
customRender
:
"
操作
"
,
},
},
],
BegindAndEndTime
:
[],
searchName
:
undefined
,
//删除窗口判断
visible
:
false
,
};
},
components
:
{
HandlingDetails
},
mounted
()
{
this
.
setMoment
();
for
(
let
key
=
0
;
key
<
20
;
key
++
)
{
this
.
tableSourceData
.
push
({
id
:
`00
${
key
+
1
}
`
,
窗口编号
:
`A000
${
key
+
1
}
`
,
评价选项
:
`非常满意`
,
评价人
:
`唐三`
,
身份证号
:
`510311199909099999`
,
手机号
:
`138888888888`
,
联系电话
:
`138808888
${
key
+
1
}
`
,
评价时间
:
`2021-09-09 09:09:09
${
key
+
1
}
`
,
评价来源
:
`窗口评价器`
,
评价设备
:
`1楼0
${
key
+
1
}
号窗口评价器`
,
// 评价人照片: `111`,
});
}
},
methods
:
{
rangePickerChange
(
val
)
{
console
.
log
(
val
);
},
QueueState
(
type
)
{
switch
(
type
)
{
case
0
:
return
"
type1
"
;
case
1
:
return
"
type2
"
;
default
:
return
"
type0
"
;
}
},
//详情模块
openHandlingDetails
()
{
this
.
$refs
.
HandlingDetails
.
modalInfo
.
title
=
"
办理明细
"
;
this
.
$refs
.
HandlingDetails
.
modalInfo
.
visible
=
true
;
},
//删除模态框
showModal
(
record
)
{
console
.
log
(
record
)
this
.
visible
=
true
;
},
//
handleOk
(
e
)
{
console
.
log
(
e
);
this
.
visible
=
false
;
},
},
};
</
script
>
<
style
lang=
"less"
scoped
>
/deep/.ant-spin-container {
display: block;
}
.header_box {
padding-bottom: 1rem;
display: flex;
justify-content: space-between;
align-items: center;
&>div {
display: flex;
justify-content: flex-start;
align-items: center;
b {
font-style: normal;
font-weight: unset;
font-size: 16px;
margin-left: 20px;
i {
color: #0595fd;
font-style: normal;
}
}
sub {
font-size: 14px;
font-style: normal;
bottom: unset;
margin-left: 20px;
}
}
}
</
style
>
portal-manager-ui/admin/src/views/dataAdmin/components/fillRecordReport/fillForm.vue
0 → 100644
View file @
fd646edb
<
template
>
<div
class=
"callRecord-Container"
>
<div
class=
"header_box"
>
<div>
<a-button
type=
"success"
@
click=
"exportTable"
>
<span>
{{
tableSelectedRows
.
length
?
"
导出
"
:
"
导出全部
"
}}
</span>
</a-button>
<b>
填单次数:
<i>
233次
</i></b>
<sub>
统计时间段:2020.09.09~2021.09.09
</sub>
</div>
<span>
<a-input-group
compact
>
<a-select
default-value=
"Zhejiang"
style=
"width:25%"
>
<a-select-option
value=
"Zhejiang"
>
按事项
</a-select-option>
<a-select-option
value=
"Jiangsu"
>
按材料
</a-select-option>
</a-select>
<a-input
style=
"width:74.3%"
v-model=
"searchName"
placeholder=
"请输入评价人姓名或窗口编号搜索"
>
<a-icon
slot=
"prefix"
type=
"search"
/>
</a-input>
</a-input-group>
<a-range-picker
format=
"YYYY年MM月DD日"
class=
"range_picker_style"
@
change=
"rangePickerChange"
v-model=
"BegindAndEndTime"
>
</a-range-picker>
<a-select
placeholder=
"全部状态"
>
<a-select-option
value=
"001"
>
打印
</a-select-option>
<a-select-option
value=
"002"
>
在线提交
</a-select-option>
</a-select>
<a-button
type=
"primary"
>
搜索
</a-button>
</span>
</div>
<div
class=
"main"
>
<a-table
size=
"small"
bordered
:row-key=
"(record) => record.id"
:row-selection=
"
{
selectedRowKeys: tableSelectedKeys,
onChange: onSelectChange,
}" :scroll="{ y: 590 }" :pagination="tablePagination" @change="pagTableChange" :loading="tableLoading"
:columns="tableHeaders" :dataSource="tableSourceData">
<template
slot=
"事项名称"
slot-scope=
"text, record, index"
>
<div>
机动车登记证、行驶证核发
</div>
<div
class=
"tabFont"
>
事项全称:机动车登记证、行驶证审查、办理、核发
</div>
</
template
>
<
template
slot=
"材料名称"
slot-scope=
"text, record, index"
>
<div>
分公司登记申请书
</div>
<div
class=
"tabFont"
>
样表全称:分公司登记、变更、注销一张表申请书
</div>
</
template
>
</a-table>
</div>
</div>
</template>
<
script
>
import
table
from
"
@/mixins/table
"
;
export
default
{
mixins
:
[
table
],
name
:
"
fillForm
"
,
data
()
{
return
{
tableHeaders
:
[
{
title
:
"
序号
"
,
dataIndex
:
"
index
"
,
width
:
"
60px
"
,
key
:
"
index
"
,
align
:
"
center
"
,
customRender
:
(
text
,
record
,
index
)
=>
`
${
index
+
1
}
`
,
},
{
title
:
"
事项名称
"
,
// align: "center",
dataIndex
:
"
事项名称
"
,
width
:
300
,
scopedSlots
:
{
customRender
:
"
事项名称
"
,
},
},
{
title
:
"
材料名称
"
,
// align: "center",
dataIndex
:
"
材料名称
"
,
width
:
300
,
scopedSlots
:
{
customRender
:
"
材料名称
"
,
},
},
{
title
:
"
用户姓名
"
,
align
:
"
center
"
,
dataIndex
:
"
用户姓名
"
,
},
{
title
:
"
身份证号
"
,
align
:
"
center
"
,
dataIndex
:
"
身份证号
"
,
},
{
title
:
"
手机号码
"
,
align
:
"
center
"
,
dataIndex
:
"
手机号码
"
,
},
{
title
:
"
设备名称
"
,
align
:
"
center
"
,
dataIndex
:
"
设备名称
"
,
},
{
title
:
"
结果类型
"
,
align
:
"
center
"
,
dataIndex
:
"
结果类型
"
,
},
{
title
:
"
操作时间
"
,
align
:
"
center
"
,
dataIndex
:
"
操作时间
"
,
},
{
title
:
"
累计耗时
"
,
align
:
"
center
"
,
dataIndex
:
"
累计耗时
"
,
},
],
BegindAndEndTime
:
[],
searchName
:
undefined
,
};
},
components
:
{
},
mounted
()
{
this
.
setMoment
();
for
(
let
key
=
0
;
key
<
20
;
key
++
)
{
this
.
tableSourceData
.
push
({
id
:
`00
${
key
+
1
}
`
,
用户姓名
:
`唐
${
key
+
1
}
`
,
身份证号
:
`510311199909093333`
,
手机号码
:
`13888888888`
,
设备名称
:
`一楼数字填单机`
,
结果类型
:
`打印`
,
操作时间
:
`2021-09-09 09:09:0
${
key
+
1
}
`
,
累计耗时
:
`10分20秒`
,
});
}
},
methods
:
{
rangePickerChange
(
val
)
{
console
.
log
(
val
);
},
QueueState
(
type
)
{
switch
(
type
)
{
case
0
:
return
"
type1
"
;
case
1
:
return
"
type2
"
;
default
:
return
"
type0
"
;
}
},
},
};
</
script
>
<
style
lang=
"less"
scoped
>
/deep/.ant-spin-container {
display: block;
}
.header_box {
padding-bottom: 1rem;
display: flex;
justify-content: space-between;
align-items: center;
&>div {
display: flex;
justify-content: flex-start;
align-items: center;
b {
font-style: normal;
font-weight: unset;
font-size: 16px;
margin-left: 20px;
i {
color: #0595fd;
font-style: normal;
}
}
sub {
font-size: 14px;
font-style: normal;
bottom: unset;
margin-left: 20px;
}
}
}
.tabFont {
font-size: 12px;
font-weight: 300;
}
</
style
>
portal-manager-ui/admin/src/views/dataAdmin/components/fillRecordReport/mixins/modal.js
0 → 100644
View file @
fd646edb
import
{
deepClone
}
from
"
@/utils/js/common.js
"
;
export
default
{
data
()
{
return
{
defaultInfoForm
:
{},
modalInfo
:
{
confirmLoading
:
false
,
visible
:
false
,
title
:
'
用户信息
'
,
width
:
'
30%
'
,
},
}
},
props
:
{
sourceInfoForm
:
{
type
:
Object
,
default
:
()
=>
{
return
{
// --------------申报人信息-----------------------
name
:
"
张三
"
,
Gender
:
"
男
"
,
Age
:
"
56
"
,
Phone
:
"
13080888888
"
,
yuyuecishu
:
"
12
"
,
paiduicishu
:
"
6
"
,
guanlianyewu
:
"
12
"
,
haxizhi
:
"
3sad54a5f4sda4da4sd4adasdqa1sda1g1d1ada4d4f1fgweqqwq01f4sa4dgds1eqw5e1c2c2vx
"
,
qukuaigaodu
:
"
24292496
"
,
chuangjianshijian
:
"
2022-04-25 18:22
"
,
// --------------业务分析-----------------------
yewuming
:
'
公安户籍类
'
,
guanlianshixiang
:
[
{
shixiangmingcheng
:
'
事项名称事项名称事项名称事项名称事项名称事项名称
'
,
},
{
shixiangmingcheng
:
'
事项名称事项名称事项名称事项名称事项名称事项名称
'
,
},
{
shixiangmingcheng
:
'
事项名称事项名称事项名称事项名称事项名称事项名称
'
,
},
],
shoulicishu
:
"
12546
"
,
banjiecishu
:
"
12348
"
,
haopinglv
:
"
99.99%
"
,
// --------------工作人员-----------------------
workImgUrl
:
require
(
'
../../../../../assets/images/logo.png
'
),
workpeople
:
"
刘明洋
"
,
JobNo
:
"
01
"
,
department
:
'
税务局
'
,
PoliticalOutlook
:
'
党员
'
,
workPhone
:
'
13080888888
'
,
Starlevel
:
'
5
'
,
souliyewu
:
'
12247877
'
,
pingjiacishu
:
'
1225454
'
,
};
},
},
},
watch
:
{
sourceInfoForm
:
{
handler
(
newValue
,
oldValue
)
{
// console.log(newValue);
// console.log(oldValue);
this
.
defaultInfoForm
=
Object
.
assign
({},
deepClone
(
newValue
));
},
deep
:
true
,
},
},
computed
:
{
},
created
()
{
setTimeout
(()
=>
{
this
.
defaultInfoForm
=
Object
.
assign
({},
deepClone
(
this
.
sourceInfoForm
));
// console.log(this.defaultInfoForm);
},
0
);
},
methods
:
{
modalClose
()
{
this
.
modalInfo
.
visible
=
false
;
}
},
}
\ No newline at end of file
portal-manager-ui/admin/src/views/dataAdmin/components/fillRecordReport/module.vue
0 → 100644
View file @
fd646edb
<
template
>
<div
class=
"Container"
>
<div
class=
"main"
>
<a-tabs
v-model=
"tabsActive"
@
change=
"tabsChange"
:forceRender=
"false"
>
<a-tab-pane
:key=
"item.path"
v-for=
"(item, index) of tabsList['children']"
:tab=
"item['meta']['title']"
>
</a-tab-pane>
</a-tabs>
<router-view
style=
"padding: 0 1rem"
/>
</div>
</div>
</
template
>
<
script
>
import
{
getItemData
}
from
"
@/utils/js/common.js
"
;
import
common
from
"
@/mixins/common
"
;
export
default
{
name
:
"
fillRecordReportModule
"
,
mixins
:
[
common
],
data
()
{
return
{
tabsActive
:
undefined
,
};
},
computed
:
{
tabsList
()
{
return
getItemData
(
this
.
$router
.
options
.
routes
,
"
name
"
,
"
fillRecordReport
"
);
},
},
mounted
()
{
this
.
$nextTick
(()
=>
{
this
.
tabsActive
=
this
.
$route
.
path
.
substr
(
this
.
$route
.
path
.
lastIndexOf
(
"
/
"
)
+
1
);
});
},
methods
:
{
tabsChange
(
val
)
{
this
.
$router
.
push
({
path
:
`/home/dataManagement/fillRecordReport/
${
val
}
`
,
// query: { testoption: "test001" },
});
},
},
};
</
script
>
<
style
lang=
"less"
scoped
>
@headerH: 4.5rem;
.Container {
height: 100% !important;
// background: #fac;
background: #f5f5f5;
display: flex;
flex-direction: column;
.main {
// background: #afc;
background: #ffffff;
border-radius: 6px;
flex: 1;
overflow-y: auto;
overflow-x: hidden;
margin: 1.2rem 2rem;
}
&::before {
content: "";
display: block;
width: 100%;
height: @headerH;
background: rgb(59, 135, 255);
background: -moz-linear-gradient(
174deg,
rgba(59, 135, 255, 1) 24%,
rgba(108, 53, 247, 1) 85%
);
background: -webkit-linear-gradient(
174deg,
rgba(59, 135, 255, 1) 24%,
rgba(108, 53, 247, 1) 85%
);
background: linear-gradient(
174deg,
rgba(59, 135, 255, 1) 24%,
rgba(108, 53, 247, 1) 85%
);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#3b87ff",endColorstr="#6c35f7",GradientType=1);
}
/deep/.ant-tabs-nav {
.ant-tabs-tab {
margin: 0 !important;
}
}
/deep/.ant-tabs-tab {
font-size: 1rem !important;
& + .ant-tabs-tab {
margin: 0 !important;
margin-left: 0.7rem !important;
}
}
}
</
style
>
portal-manager-ui/admin/src/views/dataAdmin/components/sampleRecordReport/mixins/modal.js
0 → 100644
View file @
fd646edb
import
{
deepClone
}
from
"
@/utils/js/common.js
"
;
export
default
{
data
()
{
return
{
defaultInfoForm
:
{},
modalInfo
:
{
confirmLoading
:
false
,
visible
:
false
,
title
:
'
用户信息
'
,
width
:
'
30%
'
,
},
}
},
props
:
{
sourceInfoForm
:
{
type
:
Object
,
default
:
()
=>
{
return
{
// --------------申报人信息-----------------------
name
:
"
张三
"
,
Gender
:
"
男
"
,
Age
:
"
56
"
,
Phone
:
"
13080888888
"
,
yuyuecishu
:
"
12
"
,
paiduicishu
:
"
6
"
,
guanlianyewu
:
"
12
"
,
haxizhi
:
"
3sad54a5f4sda4da4sd4adasdqa1sda1g1d1ada4d4f1fgweqqwq01f4sa4dgds1eqw5e1c2c2vx
"
,
qukuaigaodu
:
"
24292496
"
,
chuangjianshijian
:
"
2022-04-25 18:22
"
,
// --------------业务分析-----------------------
yewuming
:
'
公安户籍类
'
,
guanlianshixiang
:
[
{
shixiangmingcheng
:
'
事项名称事项名称事项名称事项名称事项名称事项名称
'
,
},
{
shixiangmingcheng
:
'
事项名称事项名称事项名称事项名称事项名称事项名称
'
,
},
{
shixiangmingcheng
:
'
事项名称事项名称事项名称事项名称事项名称事项名称
'
,
},
],
shoulicishu
:
"
12546
"
,
banjiecishu
:
"
12348
"
,
haopinglv
:
"
99.99%
"
,
// --------------工作人员-----------------------
workImgUrl
:
require
(
'
../../../../../assets/images/logo.png
'
),
workpeople
:
"
刘明洋
"
,
JobNo
:
"
01
"
,
department
:
'
税务局
'
,
PoliticalOutlook
:
'
党员
'
,
workPhone
:
'
13080888888
'
,
Starlevel
:
'
5
'
,
souliyewu
:
'
12247877
'
,
pingjiacishu
:
'
1225454
'
,
};
},
},
},
watch
:
{
sourceInfoForm
:
{
handler
(
newValue
,
oldValue
)
{
// console.log(newValue);
// console.log(oldValue);
this
.
defaultInfoForm
=
Object
.
assign
({},
deepClone
(
newValue
));
},
deep
:
true
,
},
},
computed
:
{
},
created
()
{
setTimeout
(()
=>
{
this
.
defaultInfoForm
=
Object
.
assign
({},
deepClone
(
this
.
sourceInfoForm
));
// console.log(this.defaultInfoForm);
},
0
);
},
methods
:
{
modalClose
()
{
this
.
modalInfo
.
visible
=
false
;
}
},
}
\ No newline at end of file
portal-manager-ui/admin/src/views/dataAdmin/components/sampleRecordReport/module.vue
0 → 100644
View file @
fd646edb
<
template
>
<div
class=
"Container"
>
<div
class=
"main"
>
<a-tabs
v-model=
"tabsActive"
@
change=
"tabsChange"
:forceRender=
"false"
>
<a-tab-pane
:key=
"item.path"
v-for=
"(item, index) of tabsList['children']"
:tab=
"item['meta']['title']"
>
</a-tab-pane>
</a-tabs>
<router-view
style=
"padding: 0 1rem"
/>
</div>
</div>
</
template
>
<
script
>
import
{
getItemData
}
from
"
@/utils/js/common.js
"
;
import
common
from
"
@/mixins/common
"
;
export
default
{
name
:
"
sampleRecordReportModule
"
,
mixins
:
[
common
],
data
()
{
return
{
tabsActive
:
undefined
,
};
},
computed
:
{
tabsList
()
{
return
getItemData
(
this
.
$router
.
options
.
routes
,
"
name
"
,
"
sampleRecordReport
"
);
},
},
mounted
()
{
this
.
$nextTick
(()
=>
{
this
.
tabsActive
=
this
.
$route
.
path
.
substr
(
this
.
$route
.
path
.
lastIndexOf
(
"
/
"
)
+
1
);
});
},
methods
:
{
tabsChange
(
val
)
{
this
.
$router
.
push
({
path
:
`/home/dataManagement/sampleRecordReport/
${
val
}
`
,
// query: { testoption: "test001" },
});
},
},
};
</
script
>
<
style
lang=
"less"
scoped
>
@headerH: 4.5rem;
.Container {
height: 100% !important;
// background: #fac;
background: #f5f5f5;
display: flex;
flex-direction: column;
.main {
// background: #afc;
background: #ffffff;
border-radius: 6px;
flex: 1;
overflow-y: auto;
overflow-x: hidden;
margin: 1.2rem 2rem;
}
&::before {
content: "";
display: block;
width: 100%;
height: @headerH;
background: rgb(59, 135, 255);
background: -moz-linear-gradient(
174deg,
rgba(59, 135, 255, 1) 24%,
rgba(108, 53, 247, 1) 85%
);
background: -webkit-linear-gradient(
174deg,
rgba(59, 135, 255, 1) 24%,
rgba(108, 53, 247, 1) 85%
);
background: linear-gradient(
174deg,
rgba(59, 135, 255, 1) 24%,
rgba(108, 53, 247, 1) 85%
);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#3b87ff",endColorstr="#6c35f7",GradientType=1);
}
/deep/.ant-tabs-nav {
.ant-tabs-tab {
margin: 0 !important;
}
}
/deep/.ant-tabs-tab {
font-size: 1rem !important;
& + .ant-tabs-tab {
margin: 0 !important;
margin-left: 0.7rem !important;
}
}
}
</
style
>
portal-manager-ui/admin/src/views/dataAdmin/components/sampleRecordReport/sampleForm.vue
0 → 100644
View file @
fd646edb
<
template
>
<div
class=
"callRecord-Container"
>
<div
class=
"header_box"
>
<div>
<a-button
type=
"success"
@
click=
"exportTable"
>
<span>
{{
tableSelectedRows
.
length
?
"
导出
"
:
"
导出全部
"
}}
</span>
</a-button>
<b>
查看样表次数:
<i>
233次
</i></b>
<sub>
统计时间段:2020.09.09~2021.09.09
</sub>
</div>
<span>
<a-input-group
compact
>
<a-select
default-value=
"Zhejiang"
style=
"width:25%"
>
<a-select-option
value=
"Zhejiang"
>
按事项
</a-select-option>
<a-select-option
value=
"Jiangsu"
>
按材料
</a-select-option>
</a-select>
<a-input
style=
"width:74.2%"
v-model=
"searchName"
placeholder=
"请输入评价人姓名或窗口编号搜索"
>
<a-icon
slot=
"prefix"
type=
"search"
/>
</a-input>
</a-input-group>
<a-range-picker
format=
"YYYY年MM月DD日"
class=
"range_picker_style"
@
change=
"rangePickerChange"
v-model=
"BegindAndEndTime"
>
</a-range-picker>
<a-button
type=
"primary"
>
搜索
</a-button>
</span>
</div>
<div
class=
"main"
>
<a-table
size=
"small"
bordered
:row-key=
"(record) => record.id"
:row-selection=
"
{
selectedRowKeys: tableSelectedKeys,
onChange: onSelectChange,
}" :scroll="{ y: 590 }" :pagination="tablePagination" @change="pagTableChange" :loading="tableLoading"
:columns="tableHeaders" :dataSource="tableSourceData">
<template
slot=
"事项名称"
slot-scope=
"text, record, index"
>
<div>
机动车登记证、行驶证核发
</div>
<div
class=
"tabFont"
>
事项全称:机动车登记证、行驶证审查、办理、核发
</div>
</
template
>
<
template
slot=
"材料名称"
slot-scope=
"text, record, index"
>
<div>
分公司登记申请书
</div>
<div
class=
"tabFont"
>
样表全称:分公司登记、变更、注销一张表申请书
</div>
</
template
>
</a-table>
</div>
</div>
</template>
<
script
>
import
table
from
"
@/mixins/table
"
;
export
default
{
mixins
:
[
table
],
name
:
"
sampleForm
"
,
data
()
{
return
{
tableHeaders
:
[
{
title
:
"
序号
"
,
dataIndex
:
"
index
"
,
width
:
"
60px
"
,
key
:
"
index
"
,
align
:
"
center
"
,
customRender
:
(
text
,
record
,
index
)
=>
`
${
index
+
1
}
`
,
},
{
title
:
"
事项名称
"
,
// align: "center",
dataIndex
:
"
事项名称
"
,
scopedSlots
:
{
customRender
:
"
事项名称
"
,
},
},
{
title
:
"
材料名称
"
,
// align: "center",
dataIndex
:
"
材料名称
"
,
scopedSlots
:
{
customRender
:
"
材料名称
"
,
},
},
{
title
:
"
设备名称
"
,
align
:
"
center
"
,
dataIndex
:
"
设备名称
"
,
},
{
title
:
"
操作时间
"
,
align
:
"
center
"
,
dataIndex
:
"
操作时间
"
,
},
{
title
:
"
查看时间
"
,
align
:
"
center
"
,
dataIndex
:
"
查看时间
"
,
},
],
BegindAndEndTime
:
[],
searchName
:
undefined
,
};
},
components
:
{
},
mounted
()
{
this
.
setMoment
();
for
(
let
key
=
0
;
key
<
20
;
key
++
)
{
this
.
tableSourceData
.
push
({
id
:
`00
${
key
+
1
}
`
,
设备名称
:
`一楼样表填单机`
,
操作时间
:
`2021-09-09 09:09:09
${
key
+
1
}
`
,
查看时间
:
`10分20秒`
,
});
}
},
methods
:
{
rangePickerChange
(
val
)
{
console
.
log
(
val
);
},
QueueState
(
type
)
{
switch
(
type
)
{
case
0
:
return
"
type1
"
;
case
1
:
return
"
type2
"
;
default
:
return
"
type0
"
;
}
},
},
};
</
script
>
<
style
lang=
"less"
scoped
>
/deep/.ant-spin-container {
display: block;
}
.header_box {
padding-bottom: 1rem;
display: flex;
justify-content: space-between;
align-items: center;
&>div {
display: flex;
justify-content: flex-start;
align-items: center;
b {
font-style: normal;
font-weight: unset;
font-size: 16px;
margin-left: 20px;
i {
color: #0595fd;
font-style: normal;
}
}
sub {
font-size: 14px;
font-style: normal;
bottom: unset;
margin-left: 20px;
}
}
}
.tabFont {
font-size: 12px;
font-weight: 300;
}
</
style
>
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment