Commit fd646edb authored by 王启林's avatar 王启林

修改报表样式+新增样表记录、填单记录、评价记录报表

Signed-off-by: 王启林's avatar王启林 <1940603613@qq.com>
parent 669d9365
# 开发环境配置 # 开发环境配置
NODE_ENV = development 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
/* 颜色 */
.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
<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>
<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>
<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>
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
<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>
<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>
<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>
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
<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>
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
<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>
<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>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment