"@element-plus/icons-vue": "^1.1.4", | "@element-plus/icons-vue": "^1.1.4", | ||||
"axios": "^0.27.2", | "axios": "^0.27.2", | ||||
"element-plus": "^2.1.7", | "element-plus": "^2.1.7", | ||||
"file-saver": "^2.0.5", | |||||
"fuse.js": "^6.5.3", | "fuse.js": "^6.5.3", | ||||
"js-cookie": "^3.0.1", | "js-cookie": "^3.0.1", | ||||
"jsencrypt": "^3.2.1", | "jsencrypt": "^3.2.1", | ||||
"vue": "^3.2.2", | "vue": "^3.2.2", | ||||
"vue-fragment": "^1.5.2", | "vue-fragment": "^1.5.2", | ||||
"vue-router": "4", | "vue-router": "4", | ||||
"vuex": "^4.0.2" | |||||
"vuex": "^4.0.2", | |||||
"xlsx": "^0.18.5" | |||||
}, | }, | ||||
"devDependencies": { | "devDependencies": { | ||||
"@babel/types": "^7.16.0", | "@babel/types": "^7.16.0", | ||||
"postcss": "^8.4.4", | "postcss": "^8.4.4", | ||||
"prettier": "^2.4.1", | "prettier": "^2.4.1", | ||||
"sass": "^1.44.0", | "sass": "^1.44.0", | ||||
"script-loader": "^0.7.2", | |||||
"typescript": "^4.5.2", | "typescript": "^4.5.2", | ||||
"vite": "^2.4.2", | "vite": "^2.4.2", | ||||
"vite-plugin-compression": "^0.3.6", | "vite-plugin-compression": "^0.3.6", |
<div style="max-height: 200px;margin-bottom: 10px;"> | <div style="max-height: 200px;margin-bottom: 10px;"> | ||||
<!-- 图片 --> | <!-- 图片 --> | ||||
<img :src="SlideImgThreePng" class="as-radius-5px" style="height: 200px;width: 300px;"> | <img :src="SlideImgThreePng" class="as-radius-5px" style="height: 200px;width: 300px;"> | ||||
<!-- 裁剪部分 --> | |||||
<canvas class="as-radius-5px" id="canvas-cut" :width="canWidth * 2" :height="canHeight * 2" style="position: relative; | |||||
background-color: #3FC0FC;z-index: 10;top: 0px;box-shadow: 1px 1px 2.5px #333;" | |||||
<!-- 裁剪部分 background-color: #3FC0FC; --> | |||||
<canvas class="as-radius-5px" id="canvas-cut" :width="canWidth * 2" :height="canHeight * 2" | |||||
style="position: relative;z-index: 10;top: 0px;box-shadow: 1px 1px 2.5px #333;" | |||||
:style="`left:${canLeft}px;top:${initTop}px;width: ${canWidth}px;height: ${canHeight}px;`"> | :style="`left:${canLeft}px;top:${initTop}px;width: ${canWidth}px;height: ${canHeight}px;`"> | ||||
</canvas> | </canvas> | ||||
<!-- 阴影部分 --> | <!-- 阴影部分 --> |
<el-dialog v-model="dialogFormVisible" :title="`${title}`"> | <el-dialog v-model="dialogFormVisible" :title="`${title}`"> | ||||
<!-- 是否自定义Dialog --> | <!-- 是否自定义Dialog --> | ||||
<div v-if="tableFrom.customDialog"> | <div v-if="tableFrom.customDialog"> | ||||
<slot name="search" :searchCondition="searchCondition" /> | |||||
</div> | |||||
<div v-else> | |||||
<!-- 系统内容 --> | |||||
<el-form ref="ruleFormRef" :rules="rules" :model="form"> | |||||
<el-form-item v-for="(item,index) in tableFrom.field" :label="item.label" :prop="item.prop" | |||||
:label-width="formLabelWidth" > | |||||
<!-- 输入框 --> | |||||
<div style="width: 100%;" v-if="item.form.type === 'input'"> | |||||
<el-input v-model="form[item.prop]" :type="item.itemType" | |||||
:placeholder="item.form.placeholder" /> | |||||
</div> | |||||
<!-- 选择框 --> | |||||
<div style="width: 100%;" v-else-if="item.form.type === 'select'"> | |||||
<el-select style="width: 100%;" v-model="form[item.prop]" | |||||
:placeholder="item.form.placeholder"> | |||||
<el-option v-for="(itemData,index) in item.form.listData" :label="itemData.label" | |||||
:value="itemData.value" /> | |||||
</el-select> | |||||
</div> | |||||
<!-- 日期框 --> | |||||
<div style="width: 100%;" v-else-if="item.form.type === 'date'"> | |||||
<el-date-picker style="width: 100%;" v-model="form[item.prop]" | |||||
:value-format="item.form.valueFormat" :type="item.form.itemType" | |||||
:placeholder="item.form.placeholder" /> | |||||
</div> | |||||
</el-form-item> | |||||
</el-form> | |||||
</div> | </div> | ||||
<!-- 系统内容 --> | |||||
<el-form ref="ruleFormRef" :rules="rules" :model="form"> | |||||
<el-form-item v-for="(item,index) in tableFrom.field" :label="item.label" :prop="item.prop" | |||||
:label-width="formLabelWidth"> | |||||
<!-- 输入框 --> | |||||
<div style="width: 100%;" v-if="item.form.type === 'input'"> | |||||
<el-input v-model="form[item.prop]" :type="item.itemType" | |||||
:placeholder="item.form.placeholder" /> | |||||
</div> | |||||
<!-- 选择框 --> | |||||
<div style="width: 100%;" v-else-if="item.form.type === 'select'"> | |||||
<el-select style="width: 100%;" v-model="form[item.prop]" :placeholder="item.form.placeholder"> | |||||
<el-option v-for="(itemData,index) in item.form.listData" :label="itemData.label" | |||||
:value="itemData.value" /> | |||||
</el-select> | |||||
</div> | |||||
<!-- 日期框 --> | |||||
<div style="width: 100%;" v-else-if="item.form.type === 'date'"> | |||||
<el-date-picker style="width: 100%;" v-model="form[item.prop]" | |||||
:value-format="item.form.valueFormat" :type="item.form.itemType" | |||||
:placeholder="item.form.placeholder" /> | |||||
</div> | |||||
</el-form-item> | |||||
</el-form> | |||||
<template #footer> | |||||
<template v-if="!tableFrom.customDialog" #footer> | |||||
<span class="dialog-footer"> | <span class="dialog-footer"> | ||||
<el-button @click="cancel">取消</el-button> | <el-button @click="cancel">取消</el-button> | ||||
<el-button type="primary" @click="affirm(ruleFormRef)">提交</el-button> | <el-button type="primary" @click="affirm(ruleFormRef)">提交</el-button> | ||||
// 声明事件 | // 声明事件 | ||||
const emit = defineEmits(['add', 'remove', 'refresh', 'edit', 'search', 'submit', 'handleEdit', 'handleDelete']) | const emit = defineEmits(['add', 'remove', 'refresh', 'edit', 'search', 'submit', 'handleEdit', 'handleDelete']) | ||||
// 声明props | // 声明props | ||||
const props = defineProps({ | const props = defineProps({ | ||||
homeData: { //表单配置 | homeData: { //表单配置 | ||||
type: Array, | type: Array, | ||||
default: function () { | default: function () { | ||||
return [{ | return [{ | ||||
name: '测试数据' | |||||
}, { | |||||
name: '测试数据' | |||||
one: '范晓东', | |||||
two: '贵ZEY123', | |||||
three: '蓝色', | |||||
four: '52011328220201499572', | |||||
five: '正常', | |||||
six: '储值卡', | |||||
seven:'52011328220201499572', | |||||
eight:'正常', | |||||
data:'2020-12-24' | |||||
}, { | }, { | ||||
name: '测试数据' | |||||
one: '李丽霞', | |||||
two: '贵ANS989', | |||||
three: '蓝色', | |||||
four: '52011328220201499572', | |||||
five: '正常', | |||||
six: '储值卡', | |||||
seven:'52011328220200034040', | |||||
eight:'正常', | |||||
data:'2021-08-24' | |||||
},{ | |||||
one: '沈波', | |||||
two: '贵ABB123', | |||||
three: '蓝色', | |||||
four: '52011328220201499572', | |||||
five: '正常', | |||||
six: '储值卡', | |||||
seven:'52011328220201499572', | |||||
eight:'正常', | |||||
data:'2022-01-22' | |||||
}] | }] | ||||
} | } | ||||
} | } | ||||
const testData = ref(props.tableData) //表单数据 | const testData = ref(props.tableData) //表单数据 | ||||
const visible = ref(false) //删除提示框是否显示 | const visible = ref(false) //删除提示框是否显示 | ||||
const dialogFormVisible = ref(false) //表单弹框是否显示 | const dialogFormVisible = ref(false) //表单弹框是否显示 | ||||
const formLabelWidth = '80px' //默认表单宽度 | |||||
const formLabelWidth = '100px' //默认表单宽度 | |||||
const title = ref('添加') //表单标题 | const title = ref('添加') //表单标题 | ||||
const DStart = ref(true) //删除按钮状态 | const DStart = ref(true) //删除按钮状态 | ||||
const EStart = ref(true) //编辑按钮状态 | const EStart = ref(true) //编辑按钮状态 |
}, | }, | ||||
table: { | table: { | ||||
style: '', | style: '', | ||||
customDialog: false, | |||||
customDialog: false, //自定义Dialog (默认false) | |||||
titleDialog: '补卡信息', //自定义Dialog标题 | |||||
extend: [{ | extend: [{ | ||||
type: 'index', | type: 'index', | ||||
label: '序号', | label: '序号', | ||||
}], | }], | ||||
field: [ //表格 | field: [ //表格 | ||||
{ | { | ||||
prop: 'name', | |||||
prop: 'one', | |||||
label: '客户名称', | label: '客户名称', | ||||
width: '120', | width: '120', | ||||
overflow: true, | overflow: true, | ||||
placeholder: '请输入客户名称' | placeholder: '请输入客户名称' | ||||
} | } | ||||
}, { | }, { | ||||
prop: 'name', | |||||
prop: 'two', | |||||
label: '车牌号码', | label: '车牌号码', | ||||
width: '120', | width: '120', | ||||
form: { | form: { | ||||
placeholder: '请输入车牌号码' | placeholder: '请输入车牌号码' | ||||
} | } | ||||
}, { | }, { | ||||
prop: 'name', | |||||
prop: 'three', | |||||
label: '车牌颜色', | label: '车牌颜色', | ||||
width: '120', | width: '120', | ||||
form: { | form: { | ||||
placeholder: '请输入车牌颜色' | placeholder: '请输入车牌颜色' | ||||
} | } | ||||
}, { | }, { | ||||
prop: 'name', | |||||
prop: 'four', | |||||
label: '卡号', | label: '卡号', | ||||
width: '180', | width: '180', | ||||
form: { | form: { | ||||
placeholder: '卡号' | placeholder: '卡号' | ||||
} | } | ||||
}, { | }, { | ||||
prop: 'name', | |||||
prop: 'five', | |||||
label: '卡片状态', | label: '卡片状态', | ||||
width: '120', | width: '120', | ||||
form: { | form: { | ||||
placeholder: '请输入卡片状态' | placeholder: '请输入卡片状态' | ||||
} | } | ||||
}, { | }, { | ||||
prop: 'name', | |||||
prop: 'six', | |||||
label: '卡片类型', | label: '卡片类型', | ||||
width: '120', | width: '120', | ||||
form: { | form: { | ||||
} | } | ||||
}, | }, | ||||
{ | { | ||||
prop: 'name', | |||||
prop: 'seven', | |||||
label: 'OBU编号', | label: 'OBU编号', | ||||
width: '180', | width: '180', | ||||
form: { | form: { | ||||
placeholder: 'OBU编号' | placeholder: 'OBU编号' | ||||
} | } | ||||
}, { | }, { | ||||
prop: 'name', | |||||
prop: 'eight', | |||||
label: 'OBU状态', | label: 'OBU状态', | ||||
width: '120', | |||||
width: '', | |||||
form: { | form: { | ||||
required: true, | required: true, | ||||
type: 'input', | type: 'input', |
}], | }], | ||||
field: [ //表格 | field: [ //表格 | ||||
{ | { | ||||
prop: 'name', | |||||
prop: 'one', | |||||
label: '客户名称', | label: '客户名称', | ||||
width: '120', | width: '120', | ||||
overflow: true, | overflow: true, | ||||
placeholder: '请输入客户名称' | placeholder: '请输入客户名称' | ||||
} | } | ||||
}, { | }, { | ||||
prop: 'name', | |||||
prop: 'two', | |||||
label: '证件类型', | label: '证件类型', | ||||
width: '180', | width: '180', | ||||
form: { | form: { | ||||
placeholder: '请输入证件类型' | placeholder: '请输入证件类型' | ||||
} | } | ||||
}, { | }, { | ||||
prop: 'name', | |||||
prop: 'three', | |||||
label: '证件号码', | label: '证件号码', | ||||
width: '180', | width: '180', | ||||
form: { | form: { | ||||
placeholder: '请输入证件号码' | placeholder: '请输入证件号码' | ||||
} | } | ||||
}, { | }, { | ||||
prop: 'name', | |||||
prop: 'four', | |||||
label: '车牌号码', | label: '车牌号码', | ||||
width: '120', | width: '120', | ||||
form: { | form: { | ||||
placeholder: '请输入车牌号码' | placeholder: '请输入车牌号码' | ||||
} | } | ||||
}, { | }, { | ||||
prop: 'name', | |||||
prop: 'five', | |||||
label: '卡号', | label: '卡号', | ||||
width: '180', | width: '180', | ||||
form: { | form: { | ||||
placeholder: '请输入卡号' | placeholder: '请输入卡号' | ||||
} | } | ||||
}, { | }, { | ||||
prop: 'name', | |||||
prop: 'data', | |||||
label: '卡片状态', | label: '卡片状态', | ||||
width: '120', | width: '120', | ||||
form: { | form: { | ||||
} | } | ||||
}, | }, | ||||
{ | { | ||||
prop: 'name', | |||||
prop: 'seven', | |||||
label: '到期时间', | label: '到期时间', | ||||
width: '180', | width: '180', | ||||
form: { | form: { |
}], | }], | ||||
field: [ //表格 | field: [ //表格 | ||||
{ | { | ||||
prop: 'name', | |||||
prop: 'one', | |||||
label: '客户名称', | label: '客户名称', | ||||
width: '120', | width: '120', | ||||
overflow: true, | overflow: true, | ||||
placeholder: '请输入客户名称' | placeholder: '请输入客户名称' | ||||
} | } | ||||
}, { | }, { | ||||
prop: 'name', | |||||
prop: 'two', | |||||
label: '车牌号码', | label: '车牌号码', | ||||
width: '120', | width: '120', | ||||
form: { | form: { | ||||
placeholder: '请输入车牌号码' | placeholder: '请输入车牌号码' | ||||
} | } | ||||
}, { | }, { | ||||
prop: 'name', | |||||
prop: 'three', | |||||
label: '车牌颜色', | label: '车牌颜色', | ||||
width: '120', | width: '120', | ||||
form: { | form: { | ||||
placeholder: '请输入车牌颜色' | placeholder: '请输入车牌颜色' | ||||
} | } | ||||
}, { | }, { | ||||
prop: 'name', | |||||
prop: 'four', | |||||
label: '卡号', | label: '卡号', | ||||
width: '180', | width: '180', | ||||
form: { | form: { | ||||
placeholder: '卡号' | placeholder: '卡号' | ||||
} | } | ||||
}, { | }, { | ||||
prop: 'name', | |||||
prop: 'five', | |||||
label: '卡片状态', | label: '卡片状态', | ||||
width: '120', | width: '120', | ||||
form: { | form: { | ||||
placeholder: '请输入卡片状态' | placeholder: '请输入卡片状态' | ||||
} | } | ||||
}, { | }, { | ||||
prop: 'name', | |||||
prop: 'six', | |||||
label: '卡片类型', | label: '卡片类型', | ||||
width: '120', | width: '120', | ||||
form: { | form: { | ||||
} | } | ||||
}, | }, | ||||
{ | { | ||||
prop: 'name', | |||||
prop: 'seven', | |||||
label: 'OBU编号', | label: 'OBU编号', | ||||
width: '180', | width: '180', | ||||
form: { | form: { | ||||
placeholder: 'OBU编号' | placeholder: 'OBU编号' | ||||
} | } | ||||
}, { | }, { | ||||
prop: 'name', | |||||
prop: 'eight', | |||||
label: 'OBU状态', | label: 'OBU状态', | ||||
width: '120', | width: '120', | ||||
form: { | form: { |
table: { //table 样式配置 | table: { //table 样式配置 | ||||
style: '', //默认表格样式 | style: '', //默认表格样式 | ||||
border: false, //是否添加边框(默认false) | border: false, //是否添加边框(默认false) | ||||
customDialog: false, //自定义Dialog (默认false) | |||||
titleDialog: '', //自定义Dialog标题 | |||||
extend: [{ //表头拓展 | extend: [{ //表头拓展 | ||||
type: '', //类型:selection,index,expand | type: '', //类型:selection,index,expand | ||||
width: '', //表头宽度 | width: '', //表头宽度 |
} | } | ||||
//提示点击 | //提示点击 | ||||
function hint(msg) { | function hint(msg) { | ||||
if (msg === '退出登录') { | if (msg === '退出登录') { | ||||
Cookies.remove('token') | Cookies.remove('token') | ||||
Cookies.remove('rememberPSWD') | Cookies.remove('rememberPSWD') |
<template> | <template> | ||||
<div style="font-size: 13px; color: rgb(209, 65, 65)"> | |||||
<div style="font-size: 13px; color: rgb(209, 65, 65);margin-left: 16px;"> | |||||
注:目前仅支持中国工商银行贵州省分行、中国工商银行股份有限公司贵州省分行、农业银行、部互联网发行、 | 注:目前仅支持中国工商银行贵州省分行、中国工商银行股份有限公司贵州省分行、农业银行、部互联网发行、 | ||||
世纪恒通、工行微ETC、工总行直连模式三、贵州农信联社、贵州工行微ETC、世纪恒通GH查询下黑原因! | 世纪恒通、工行微ETC、工总行直连模式三、贵州农信联社、贵州工行微ETC、世纪恒通GH查询下黑原因! | ||||
</div> | </div> | ||||
<el-button v-model="input4" type="success" :icon="Search" @click="search">搜索</el-button> | <el-button v-model="input4" type="success" :icon="Search" @click="search">搜索</el-button> | ||||
<el-button type="warning" :icon="Refresh" @click="reset">重置</el-button> | <el-button type="warning" :icon="Refresh" @click="reset">重置</el-button> | ||||
<el-button type="primary" :icon="Plus" @click="dialogFormVisible = true">添加</el-button> | <el-button type="primary" :icon="Plus" @click="dialogFormVisible = true">添加</el-button> | ||||
<el-dialog v-model="dialogFormVisible" title="卡黑名单-操作(下黑反白)"> | |||||
<el-dialog v-model="dialogFormVisible" title="卡黑名单-操作(下黑反白)" class="as-gravity-center"> | |||||
<el-form :model="form"> | <el-form :model="form"> | ||||
<el-form-item label="卡号:" :label-width="150"> | |||||
<el-form-item label="卡号:" :label-width="100"> | |||||
<el-input v-model="form.name" style="width: 215px" /> | <el-input v-model="form.name" style="width: 215px" /> | ||||
</el-form-item> | </el-form-item> | ||||
<el-form-item label="黑名单类型:" :label-width="150"> | |||||
<el-select v-model="form" placeholder="请选择黑名单类型"> | |||||
<el-form-item label="黑名单类型:" :label-width="100"> | |||||
<el-select v-model="form.region" placeholder="请选择黑名单类型"> | |||||
<el-option label="卡挂失" value="shanghai" /> | <el-option label="卡挂失" value="shanghai" /> | ||||
<el-option label="无卡挂起" value="beijing" /> | <el-option label="无卡挂起" value="beijing" /> | ||||
<el-option label="无卡销售" value="shanghai" /> | <el-option label="无卡销售" value="shanghai" /> | ||||
<el-option label="储值卡余额不足" value="shanghai" /> | <el-option label="储值卡余额不足" value="shanghai" /> | ||||
</el-select> | </el-select> | ||||
</el-form-item> | </el-form-item> | ||||
<el-form-item label="状态类型:" :label-width="150"> | |||||
<el-form-item label="状态类型:" :label-width="100"> | |||||
<el-select v-model="form.region" placeholder="请选择状态类型"> | <el-select v-model="form.region" placeholder="请选择状态类型"> | ||||
<el-option label="下黑" value="shanghai" /> | <el-option label="下黑" value="shanghai" /> | ||||
<el-option label="反白" value="beijing" /> | <el-option label="反白" value="beijing" /> | ||||
</el-select> | </el-select> | ||||
</el-form-item> | </el-form-item> | ||||
<el-form-item label="原因:" :label-width="150"> | |||||
<el-form-item label="原因:" :label-width="100"> | |||||
<el-input v-model="form.desc" type="textarea" /> | <el-input v-model="form.desc" type="textarea" /> | ||||
</el-form-item> | </el-form-item> | ||||
</el-form> | </el-form> | ||||
<el-button @click="dialogFormVisible1 = true" style="border-style: none">详情</el-button> | <el-button @click="dialogFormVisible1 = true" style="border-style: none">详情</el-button> | ||||
</el-table-column> | </el-table-column> | ||||
</el-table> | </el-table> | ||||
<el-dialog v-model="dialogFormVisible1"> | |||||
<el-dialog v-model="dialogFormVisible1" class="as-gravity-center"> | |||||
<span class="as-gravity-center" style="font-size: 22px">基本信息</span> | <span class="as-gravity-center" style="font-size: 22px">基本信息</span> | ||||
<el-form :model="form1" style="padding-top: 12px"> | <el-form :model="form1" style="padding-top: 12px"> | ||||
<el-form-item label="卡号:" :label-width="150"> | |||||
<el-form-item label="卡号:" :label-width="100"> | |||||
<el-input v-model="form1.data" style="width: 215px" disabled /> | <el-input v-model="form1.data" style="width: 215px" disabled /> | ||||
</el-form-item> | </el-form-item> | ||||
</el-form> | </el-form> | ||||
<el-form :model="form1"> | <el-form :model="form1"> | ||||
<el-form-item label="车辆号:" :label-width="150"> | |||||
<el-form-item label="车辆号:" :label-width="100"> | |||||
<el-input v-model="form1.data1" style="width: 215px" disabled /> | <el-input v-model="form1.data1" style="width: 215px" disabled /> | ||||
</el-form-item> | </el-form-item> | ||||
</el-form> | </el-form> | ||||
<el-form :model="form1"> | <el-form :model="form1"> | ||||
<el-form-item label="机构名称:" :label-width="150"> | |||||
<el-form-item label="机构名称:" :label-width="100"> | |||||
<el-input v-model="form1.data2" style="width: 215px" disabled /> | <el-input v-model="form1.data2" style="width: 215px" disabled /> | ||||
</el-form-item> | </el-form-item> | ||||
</el-form> | </el-form> | ||||
<el-form :model="form1"> | <el-form :model="form1"> | ||||
<el-form-item label="黑名单类型:" :label-width="150"> | |||||
<el-form-item label="黑名单类型:" :label-width="100"> | |||||
<el-input v-model="form1.data3" style="width: 215px" disabled /> | <el-input v-model="form1.data3" style="width: 215px" disabled /> | ||||
</el-form-item> | </el-form-item> | ||||
</el-form> | </el-form> | ||||
<span class="as-gravity-center" style="font-size: 22px">黑名单上传日志</span> | <span class="as-gravity-center" style="font-size: 22px">黑名单上传日志</span> | ||||
<el-form :model="form1" style="padding-top: 12px"> | <el-form :model="form1" style="padding-top: 12px"> | ||||
<el-form-item label="上传日志:" :label-width="150" style="color: rgb(209, 65, 65)"> | |||||
<el-form-item label="上传日志:" :label-width="100" style="color: rgb(209, 65, 65)"> | |||||
<el-input v-model="form1.data4" type="textarea" disabled /> | <el-input v-model="form1.data4" type="textarea" disabled /> | ||||
</el-form-item> | </el-form-item> | ||||
</el-form> | </el-form> | ||||
<span class="as-gravity-center" style="font-size: 22px">渠道下黑原因</span> | <span class="as-gravity-center" style="font-size: 22px">渠道下黑原因</span> | ||||
<el-form :model="form1" style="padding-top: 12px"> | <el-form :model="form1" style="padding-top: 12px"> | ||||
<el-form-item label="查询结果:" :label-width="150" style="color: rgb(209, 65, 65)"> | |||||
<el-form-item label="查询结果:" :label-width="100" style="color: rgb(209, 65, 65)"> | |||||
<el-input v-model="form1.data5" style="width: 215px" disabled /> | <el-input v-model="form1.data5" style="width: 215px" disabled /> | ||||
</el-form-item> | </el-form-item> | ||||
</el-form> | </el-form> | ||||
<el-form :model="form1"> | <el-form :model="form1"> | ||||
<el-form-item label="下黑原因:" :label-width="150" style="color: rgb(209, 65, 65)"> | |||||
<el-form-item label="下黑原因:" :label-width="100" style="color: rgb(209, 65, 65)"> | |||||
<el-input v-model="form1.data6" type="textarea" disabled /> | <el-input v-model="form1.data6" type="textarea" disabled /> | ||||
</el-form-item> | </el-form-item> | ||||
</el-form> | </el-form> |
<el-date-picker | <el-date-picker | ||||
v-model="value1" | v-model="value1" | ||||
type="datetime" | type="datetime" | ||||
placeholder="开始日志日期" | |||||
placeholder="开始日期" | |||||
format="YYYY/MM/DD hh:mm:ss" | format="YYYY/MM/DD hh:mm:ss" | ||||
/> | /> | ||||
v-model="value1" | v-model="value1" | ||||
type="datetime" | type="datetime" | ||||
placeholder="结束日志日期" | |||||
placeholder="结束日期" | |||||
format="YYYY/MM/DD hh:mm:ss" | format="YYYY/MM/DD hh:mm:ss" | ||||
style="margin-left: 5px;" | style="margin-left: 5px;" | ||||
/> | /> | ||||
<div class="topstyle"> | <div class="topstyle"> | ||||
<el-button v-model="input4" type="success" :icon="Search" @click="search">搜索</el-button> | <el-button v-model="input4" type="success" :icon="Search" @click="search">搜索</el-button> | ||||
<el-button type="warning" :icon="Refresh" @click="reset">重置</el-button> | <el-button type="warning" :icon="Refresh" @click="reset">重置</el-button> | ||||
<el-button type="primary" plain @click="exportCurrentPage">导出当前页</el-button> | |||||
<el-button type="primary" plain @click="exportAll">导出所有</el-button> | |||||
<el-button type="primary" plain @click="excelExport()">导出当前页</el-button> | |||||
<el-button type="primary" plain @click="excelExport()">导出所有</el-button> | |||||
</div> | </div> | ||||
</div> | </div> | ||||
<div style="padding-top: 12px"> | <div style="padding-top: 12px"> | ||||
<el-table :data="tableData" border style="width: 100%"> | <el-table :data="tableData" border style="width: 100%"> | ||||
<el-table-column property="date1" label="序号" width="60" /> | <el-table-column property="date1" label="序号" width="60" /> | ||||
<el-table-column property="date2" label="ETC卡号" width="140" /> | |||||
<el-table-column property="date2" label="ETC卡号" width="190" /> | |||||
<el-table-column property="date3" label="车牌号" width="100" /> | <el-table-column property="date3" label="车牌号" width="100" /> | ||||
<el-table-column property="date4" label="消费类型" width="90" /> | <el-table-column property="date4" label="消费类型" width="90" /> | ||||
<el-table-column property="date5" label="入口时间" width="110" /> | <el-table-column property="date5" label="入口时间" width="110" /> | ||||
const handleCurrentChange = (val: User | undefined) => { | const handleCurrentChange = (val: User | undefined) => { | ||||
currentRow.value = val | currentRow.value = val | ||||
} | } | ||||
// const objectService = { | |||||
// url: 'http://localhost:8888/list2', | |||||
// } | |||||
// const { data } = useRequest(objectService) | |||||
// console.log(data.value); | |||||
// const tableData = data | |||||
//点击导出 | |||||
function excelExport(){ | |||||
import('@/vendor/Export2Excel').then(excel => { | |||||
const tHeader = ['用户名称', '账号', '手机号', '所属公司','用户角色','创建者','部门名称','创建时间','最近登录时间'] | |||||
const filterVal = ['userName', 'email', 'phonenumber', 'orgName','roleName','createBy','deptName','createTime','loginTime'] | |||||
const list = this.list | |||||
const data = this.formatJson(filterVal, list) | |||||
excel.export_json_to_excel({ | |||||
header: tHeader, | |||||
data, | |||||
filename: "账号列表", | |||||
// filename: this.filename, | |||||
autoWidth: this.autoWidth, | |||||
bookType: this.bookType | |||||
}) | |||||
this.downloadLoading = false | |||||
}) | |||||
} | |||||
function formatJson(filterVal, jsonData) { | |||||
return this.dataList.map(v => filterVal.map(j => { | |||||
if (j === 'timestamp') { | |||||
return parseTime(v[j]) | |||||
} else { | |||||
return v[j] | |||||
} | |||||
})) | |||||
} | |||||
const tableData: User[] = [ | const tableData: User[] = [ | ||||
{ | { | ||||
date1: '1', | date1: '1', |