This commit is contained in:
cun-nan 2024-09-14 11:46:31 +08:00
parent d30610dff5
commit e55d2df123
6 changed files with 558 additions and 418 deletions

View File

@ -2,38 +2,39 @@
<div class="navbar"> <div class="navbar">
<div class="title-logo"> <div class="title-logo">
<hamburger id="hamburger-container" :is-active="sidebar.opened" class="hamburger-container" @toggleClick="toggleSideBar" /> <hamburger id="hamburger-container" :is-active="sidebar.opened" class="hamburger-container"
<!-- <breadcrumb id="breadcrumb-container" class="breadcrumb-container" v-if="!topNav"/>--> @toggleClick="toggleSideBar"/>
<!-- <breadcrumb id="breadcrumb-container" class="breadcrumb-container" v-if="!topNav"/>-->
<top-nav id="topmenu-container" class="topmenu-container" v-if="topNav"/> <top-nav id="topmenu-container" class="topmenu-container" v-if="topNav"/>
<div> <div>
{{storeName || "百业兴智慧油站"}}欢迎您 {{ storeName || "百业兴智慧油站" }}欢迎您
</div> </div>
</div> </div>
<div class="right-box"> <div class="right-box">
<div class="d-s"> <div class="d-s">
<!-- <div class="icon-img">--> <!-- <div class="icon-img">-->
<!-- <img src="../../../src/assets/new/t-sousuo.png" alt="">--> <!-- <img src="../../../src/assets/new/t-sousuo.png" alt="">-->
<!-- </div>--> <!-- </div>-->
<!-- 搜索--> <!-- 搜索-->
<!-- </div>--> <!-- </div>-->
<search id="header-search" class="right-menu-item" /> <search id="header-search" class="right-menu-item"/>
<span style="margin-right: 10px; ">搜索</span> <span style="margin-right: 10px; ">搜索</span>
<div class="d-s" @click="click" > <div class="d-s" @click="click">
<div class="icon-img"> <div class="icon-img">
<img src="../../../src/assets/new/t-fangda.png" alt=""> <img src="../../../src/assets/new/t-fangda.png" alt="">
</div> </div>
放大 放大
</div> </div>
<div class="d-s" @click="goToWebsite()" > <div class="d-s" @click="goToWebsite()">
<div class="icon-img"> <div class="icon-img">
<img src="../../../src/assets/new/t-sjdp.png" alt=""> <img src="../../../src/assets/new/t-sjdp.png" alt="">
</div> </div>
收银台 收银台
</div> </div>
<div class="d-s" @click="prompt()" > <div class="d-s" @click="prompt()">
<div class="icon-img"> <div class="icon-img">
<img src="../../../src/assets/new/t-syt.png" alt=""> <img src="../../../src/assets/new/t-syt.png" alt="">
</div> </div>
@ -50,8 +51,8 @@
<i class="el-icon-caret-bottom"/> <i class="el-icon-caret-bottom"/>
</div> </div>
<el-dropdown-menu slot="dropdown"> <el-dropdown-menu slot="dropdown">
<el-dropdown-item @click.native="setting = true"> <el-dropdown-item @click.native="prsswrod">
<span>布局设置</span> <span>修改密码</span>
</el-dropdown-item> </el-dropdown-item>
<el-dropdown-item divided @click.native="logout"> <el-dropdown-item divided @click.native="logout">
<span>退出登录</span> <span>退出登录</span>
@ -61,40 +62,59 @@
</div> </div>
</div> </div>
<!-- <div class="right-menu">--> <!-- 修改密码弹窗-->
<!-- <template v-if="device!=='mobile'">--> <el-dialog
<!-- <span v-if="day>=0 && day<11" class="right-menu-item hover-effect" style="color: #ff1f1f; margin-right: 10px">油站有效期还剩{{day}}</span>--> title="修改密码"
<!-- <search id="header-search" class="right-menu-item" />--> :visible.sync="dialogVisible"
<!-- <ScreenData class="right-menu-item hover-effect" style="font-size: 24px"></ScreenData>--> width="30%" :before-close="handleClose">
<!-- <screenfull id="screenfull" class="right-menu-item hover-effect" />--> <el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="80px" class="demo-ruleForm">
<el-form-item label="新密码" prop="password">
<el-input v-model="ruleForm.password" show-password></el-input>
</el-form-item>
<el-form-item label="重复密码" prop="passwords">
<el-input show-password v-model="ruleForm.passwords"></el-input>
</el-form-item>
<el-form-item >
<el-button @click="resetForm('ruleForm')">取消</el-button>
<el-button type="primary" @click="submitForm('ruleForm')">保存</el-button>
</el-form-item>
</el-form>
</el-dialog>
<!-- <div title="收银台" class="right-menu-item hover-effect " style="font-size: 24px">--> <!-- <div class="right-menu">-->
<!-- <i class="el-icon-s-shop" @click="goToCashier()"></i>--> <!-- <template v-if="device!=='mobile'">-->
<!-- </div>--> <!-- <span v-if="day>=0 && day<11" class="right-menu-item hover-effect" style="color: #ff1f1f; margin-right: 10px">油站有效期还剩{{day}}</span>-->
<!-- <FuintDoc id="fuint-doc" class="right-menu-item hover-effect" />--> <!-- <search id="header-search" class="right-menu-item" />-->
<!--&lt;!&ndash; <i class="right-menu-item hover-effect el-icon-s-shop" @click="goToCashier()"></i>&ndash;&gt;--> <!-- <ScreenData class="right-menu-item hover-effect" style="font-size: 24px"></ScreenData>-->
<!-- </template>--> <!-- <screenfull id="screenfull" class="right-menu-item hover-effect" />-->
<!-- <el-dropdown class="avatar-container right-menu-item hover-effect" trigger="click">-->
<!-- <div class="avatar-wrapper">--> <!-- <div title="收银台" class="right-menu-item hover-effect " style="font-size: 24px">-->
<!-- <img :src="avatar" class="user-avatar">--> <!-- <i class="el-icon-s-shop" @click="goToCashier()"></i>-->
<!-- <span class="user-name">{{ name }}</span>--> <!-- </div>-->
<!-- <i class="el-icon-caret-bottom"/>--> <!-- <FuintDoc id="fuint-doc" class="right-menu-item hover-effect" />-->
<!-- </div>--> <!--&lt;!&ndash; <i class="right-menu-item hover-effect el-icon-s-shop" @click="goToCashier()"></i>&ndash;&gt;-->
<!-- <el-dropdown-menu slot="dropdown">--> <!-- </template>-->
<!-- <el-dropdown-item @click.native="setting = true">--> <!-- <el-dropdown class="avatar-container right-menu-item hover-effect" trigger="click">-->
<!-- <span>布局设置</span>--> <!-- <div class="avatar-wrapper">-->
<!-- </el-dropdown-item>--> <!-- <img :src="avatar" class="user-avatar">-->
<!-- <el-dropdown-item divided @click.native="logout">--> <!-- <span class="user-name">{{ name }}</span>-->
<!-- <span>退出登录</span>--> <!-- <i class="el-icon-caret-bottom"/>-->
<!-- </el-dropdown-item>--> <!-- </div>-->
<!-- </el-dropdown-menu>--> <!-- <el-dropdown-menu slot="dropdown">-->
<!-- </el-dropdown>--> <!-- <el-dropdown-item @click.native="setting = true">-->
<!-- </div>--> <!-- <span>布局设置</span>-->
<!-- </el-dropdown-item>-->
<!-- <el-dropdown-item divided @click.native="logout">-->
<!-- <span>退出登录</span>-->
<!-- </el-dropdown-item>-->
<!-- </el-dropdown-menu>-->
<!-- </el-dropdown>-->
<!-- </div>-->
</div> </div>
</template> </template>
<script> <script>
import { mapGetters } from 'vuex' import {mapGetters} from 'vuex'
import Breadcrumb from '@/components/Breadcrumb' import Breadcrumb from '@/components/Breadcrumb'
import TopNav from '@/components/TopNav' import TopNav from '@/components/TopNav'
import Hamburger from '@/components/Hamburger' import Hamburger from '@/components/Hamburger'
@ -107,14 +127,49 @@ import {getCountdownApi} from "@/api/store";
import {ljStoreInfo} from "@/api/staff/store"; import {ljStoreInfo} from "@/api/staff/store";
import screenfull from "screenfull"; import screenfull from "screenfull";
import {getToken} from "@/utils/auth"; import {getToken} from "@/utils/auth";
import {getAccountInfo, resetPwd} from "@/api/indexBanner";
export default { export default {
data() { data() {
var validatePass = (rule, value, callback) => {
if (value === '') {
callback(new Error('请输入密码'));
} else {
if (this.ruleForm.passwords !== '') {
this.$refs.ruleForm.validateField('passwords');
}
callback();
}
};
var validatePass2 = (rule, value, callback) => {
if (value === '') {
callback(new Error('请再次输入密码'));
} else if (value !== this.ruleForm.password) {
callback(new Error('两次输入密码不一致!'));
} else {
callback();
}
};
return { return {
// //
day: -1, day: -1,
storeName:"", storeName: "",
isFullscreen: false isFullscreen: false,
dialogVisible:false,
accountId:"",
ruleForm:{},
rules: {
password: [
{ required: true, message: '请输入新密码', trigger: 'blur' },
{ min: 3, max: 15, message: '长度在 3 到 15 个字符', trigger: 'blur' },
{ validator: validatePass, trigger: 'blur' }
],
passwords: [
{ required: true, message: '请输入密码', trigger: 'blur' },
{ min: 3, max: 15, message: '长度在 3 到 15 个字符', trigger: 'blur' },
{ validator: validatePass2, trigger: 'blur' }
],
}
} }
}, },
components: { components: {
@ -156,12 +211,56 @@ export default {
this.getStore() this.getStore()
}, },
methods: { methods: {
prompt(){ handleClose(done) {
this.$message({ message: '此功能暂未开放,敬请期待', type: 'warning' }) this.$confirm('确认关闭?')
.then(_ => {
done();
})
.catch(_ => {});
},
prsswrod(){
this.dialogVisible =! this.dialogVisible
getAccountInfo().then(res=>{
this.accountId = res.data.accountId
})
},
submitForm(formName) {
if (this.ruleForm.password !== this.ruleForm.passwords) {
this.$message({
type: 'info',
message: '两次密码不一致'
});
return
}
this.$refs[formName].validate((valid) => {
if (valid) {
let data = {
acctId : this.accountId,
password: this.ruleForm.password,
}
resetPwd(data).then(res=>{
console.log(res)
if(res.code == 200){
this.dialogVisible = false
this.$store.dispatch('LogOut').then(() => {
location.href = '/';
})
}
})
}
});
},
resetForm(formName) {
this.dialogVisible = false
this.$refs[formName].resetFields();
},
prompt() {
this.$message({message: '此功能暂未开放,敬请期待', type: 'warning'})
}, },
goToWebsite() { goToWebsite() {
// window.open('https://cashier.youkerr.com/') // window.open('https://cashier.youkerr.com/')
window.open(this.cashierUrl+"?token="+getToken()) window.open(this.cashierUrl + "?token=" + getToken())
this.toggleFullscreen() this.toggleFullscreen()
}, },
toggleFullscreen() { toggleFullscreen() {
@ -189,19 +288,20 @@ export default {
this.$store.dispatch('LogOut').then(() => { this.$store.dispatch('LogOut').then(() => {
location.href = '/'; location.href = '/';
}) })
}).catch(() => {}); }).catch(() => {
});
}, },
goToCashier() { goToCashier() {
window.open(this.cashierUrl+'#/homeindex?id=0') window.open(this.cashierUrl + '#/homeindex?id=0')
}, },
getStore(){ getStore() {
ljStoreInfo().then(res => { ljStoreInfo().then(res => {
this.storeName = res.data.name this.storeName = res.data.name
}) })
}, },
// //
getCountdown() { getCountdown() {
getCountdownApi().then(res=> { getCountdownApi().then(res => {
if (res.code === 200) { if (res.code === 200) {
this.day = res.data this.day = res.data
} }
@ -209,7 +309,7 @@ export default {
}, },
click() { click() {
if (!screenfull.isEnabled) { if (!screenfull.isEnabled) {
this.$message({ message: '你的浏览器不支持全屏', type: 'warning' }) this.$message({message: '你的浏览器不支持全屏', type: 'warning'})
return false return false
} }
screenfull.toggle() screenfull.toggle()
@ -232,38 +332,44 @@ export default {
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.right-box{ .right-box {
display: flex; display: flex;
align-items: center; align-items: center;
} }
.d-s{
.d-s {
display: flex; display: flex;
align-items: center; align-items: center;
margin-right: 10px; margin-right: 10px;
cursor: pointer; cursor: pointer;
} }
.icon-img{
.icon-img {
width: 28px; width: 28px;
height: 28px; height: 28px;
margin-right: 5px; margin-right: 5px;
img{
img {
width: 100%; width: 100%;
height: 100%; height: 100%;
} }
} }
.avatar-wrapper{
img{ .avatar-wrapper {
img {
width: 28px; width: 28px;
height: 28px; height: 28px;
margin-right: 10px; margin-right: 10px;
} }
display: flex; display: flex;
align-items: center; align-items: center;
} }
.j-kuang{
.j-kuang {
box-sizing: border-box; box-sizing: border-box;
padding: 2px 2px; padding: 2px 2px;
font-weight: 400; font-weight: 400;
@ -273,6 +379,7 @@ export default {
border-radius: 2px 2px 2px 2px; border-radius: 2px 2px 2px 2px;
margin-right: 10px; margin-right: 10px;
} }
.navbar { .navbar {
height: 60px; height: 60px;
overflow: hidden; overflow: hidden;
@ -289,19 +396,21 @@ export default {
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
position: relative; position: relative;
.hamburger-container { .hamburger-container {
line-height: 46px; line-height: 46px;
height: 100%; height: 100%;
float: left; float: left;
cursor: pointer; cursor: pointer;
transition: background .3s; transition: background .3s;
-webkit-tap-highlight-color:transparent; -webkit-tap-highlight-color: transparent;
&:hover { &:hover {
background: rgba(0, 0, 0, .025) background: rgba(0, 0, 0, .025)
} }
} }
.title-logo{
.title-logo {
//position: absolute; //position: absolute;
//top: 50%; /* 50% */ //top: 50%; /* 50% */
//left: 50%; /* 50% */ //left: 50%; /* 50% */

View File

@ -67,7 +67,7 @@
</div> </div>
</div> </div>
<div class="nr-bottom"> <div class="nr-bottom">
<div class="left-bt">进行中1个</div> <div class="left-bt" @click="indexType('7')">进行中1个</div>
| |
<div class="right-bt" @click="routerPush(4,'add')">创建活动</div> <div class="right-bt" @click="routerPush(4,'add')">创建活动</div>
</div> </div>
@ -245,6 +245,7 @@
active-color="#13ce66" active-color="#13ce66"
inactive-color="#ff4949" inactive-color="#ff4949"
active-value="1" active-value="1"
disabled
inactive-value="2"> inactive-value="2">
</el-switch> </el-switch>
</template> </template>
@ -338,6 +339,7 @@
active-color="#13ce66" active-color="#13ce66"
inactive-color="#ff4949" inactive-color="#ff4949"
active-value="1" active-value="1"
disabled
inactive-value="2"> inactive-value="2">
</el-switch> </el-switch>
</template> </template>
@ -581,7 +583,8 @@ export default {
path: '/EventMarketing/openCardGift/index', path: '/EventMarketing/openCardGift/index',
query: { query: {
id: id, id: id,
activeId:activeId activeId:activeId,
type:type
} }
}); });
}, },
@ -745,7 +748,8 @@ export default {
border: 1px solid #EEEEEE; border: 1px solid #EEEEEE;
margin-top: 15px; margin-top: 15px;
margin-right: 15px; margin-right: 15px;
width: 315px; width: 19%;
margin-right: 1%;
} }
.nr-top { .nr-top {
@ -792,7 +796,7 @@ export default {
width: 50%; width: 50%;
box-sizing: border-box; box-sizing: border-box;
padding: 5px; padding: 5px;
cursor: pointer;
} }
.right-bt { .right-bt {

View File

@ -6,18 +6,15 @@
<div class="top-hang"> <div class="top-hang">
<div class="d-s"> <div class="d-s">
<!-- <el-select v-model="queryParams.cardAmount" clearable style="margin-right: 10px" placeholder="请选择面值">--> <el-input v-model="queryParams.name" clearable style=" width: 250px; margin-right: 10px"
<!-- <el-option v-for="item in jglist" :key="item.cardAmount" :label="item.cardAmount" :value="item.cardAmount">-->
<!-- </el-option>-->
<!-- </el-select>-->
<el-input v-model="queryParams.cardAmount" clearable style=" width: 250px; margin-right: 10px"
placeholder="请输入优惠券名称"></el-input> placeholder="请输入优惠券名称"></el-input>
<el-select v-model="queryParams.activateStatus" clearable style=" width: 250px; margin-right: 10px" <el-select v-model="queryParams.type" clearable style=" width: 250px; margin-right: 10px"
placeholder="请选择优惠类型"> placeholder="请选择优惠类型">
<el-option v-for="item in option" :key="item.value" :label="item.label" :value="item.value"> <el-option v-for="dict in dict.type.CardCoupon_type" :key="dict.value" :label="dict.label"
</el-option> :value="dict.value"/>
</el-select> </el-select>
<el-select v-model="queryParams.sailStatus" clearable style=" width: 250px; margin-right: 10px" placeholder="请选择状态"> <el-select v-model="queryParams.status" clearable style=" width: 250px; margin-right: 10px"
placeholder="请选择状态">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"> <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
</el-option> </el-option>
</el-select> </el-select>
@ -25,22 +22,10 @@
<div class="d-s"> <div class="d-s">
<el-button type="primary" icon="el-icon-search" @click="getlist">查询</el-button> <el-button type="primary" icon="el-icon-search" @click="getlist">查询</el-button>
<el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button> <el-button icon="el-icon-refresh" @click="resetQuery">重置</el-button>
<!-- <el-button type="primary" icon="el-icon-search">下载模板</el-button>-->
<el-button type="primary" @click="addCertificate">新增优惠券</el-button> <el-button type="primary" @click="addCertificate">新增优惠券</el-button>
<!-- <el-upload-->
<!-- class=""-->
<!-- v-loading="uploading"-->
<!-- action="/fuint-application/business/marketingActivity/cardGift/exchangeImport"-->
<!-- :headers="headers"-->
<!-- :limit="1"-->
<!-- :on-change="handleChange"-->
<!-- style="margin-left: 15px"-->
<!-- :file-list="fileList">-->
<!-- <el-button type="primary" icon="el-icon-upload">点击上传</el-button>-->
<!-- </el-upload>-->
</div> </div>
</div> </div>
<div style="height: 69vh;overflow: auto">
<el-table border :data="tableData" style="width: 100%"> <el-table border :data="tableData" style="width: 100%">
<el-table-column label="序号" type="index"></el-table-column> <el-table-column label="序号" type="index"></el-table-column>
<el-table-column prop="number" label="优惠券编号"></el-table-column> <el-table-column prop="number" label="优惠券编号"></el-table-column>
@ -89,12 +74,8 @@
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
<!-- <el-table-column
prop="remark"
label="备注信息"
width="280">
</el-table-column>-->
</el-table> </el-table>
</div>
<pagination v-show="total > 0" :total="total" :page.sync="pageNo" :limit.sync="pageSize" @pagination="getlist"/> <pagination v-show="total > 0" :total="total" :page.sync="pageNo" :limit.sync="pageSize" @pagination="getlist"/>
</div> </div>
<el-drawer title="订单记录" :visible.sync="orderShow" size="55%" :before-close="handleClose" center> <el-drawer title="订单记录" :visible.sync="orderShow" size="55%" :before-close="handleClose" center>
@ -132,22 +113,22 @@
class="demo-ruleForm"> class="demo-ruleForm">
<div class="d-s" style="justify-content: space-between"> <div class="d-s" style="justify-content: space-between">
<el-form-item label="优惠券编号" prop="number" style="width: 45%;"> <el-form-item label="优惠券编号" prop="number" style="width: 45%;">
<el-input v-model="ruleForm.number" placeholder="请输入优惠券编号" style="width: 300px"></el-input> <el-input v-model="ruleForm.number" placeholder="请输入优惠券编号"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="优惠券名称" prop="name" style="width: 45%;"> <el-form-item label="优惠券名称" prop="name" style="width: 50%;">
<el-input v-model="ruleForm.name" placeholder="请输入优惠券名称" style="width: 300px"></el-input> <el-input v-model="ruleForm.name" placeholder="请输入优惠券名称"></el-input>
</el-form-item> </el-form-item>
</div> </div>
<div class="d-s" style="justify-content: space-between"> <div class="d-s" style="justify-content: space-between">
<el-form-item label="投放类型" prop="putType" style="width: 45%;"> <el-form-item label="投放类型" prop="putType" style="width: 45%;">
<el-select v-model="ruleForm.putType" placeholder="请选择投放类型" style="width: 300px"> <el-select v-model="ruleForm.putType" placeholder="请选择投放类型" style="width: 100%">
<el-option v-for="dict in dict.type.putType_type" :key="dict.value" :label="dict.label" <el-option v-for="dict in dict.type.putType_type" :key="dict.value" :label="dict.label"
:value="dict.value"/> :value="dict.value"/>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="优惠券类型" prop="type" style="width: 45%;"> <el-form-item label="优惠券类型" prop="type" style="width: 50%;">
<el-select v-model="ruleForm.type" placeholder="请选择优惠券类型" style="width: 300px"> <el-select v-model="ruleForm.type" placeholder="请选择优惠券类型" style="width: 100%">
<el-option v-for="dict in dict.type.CardCoupon_type" :key="dict.value" :label="dict.label" <el-option v-for="dict in dict.type.CardCoupon_type" :key="dict.value" :label="dict.label"
:value="dict.value"/> :value="dict.value"/>
</el-select> </el-select>
@ -156,7 +137,8 @@
<div class="d-s" style="justify-content: space-between"> <div class="d-s" style="justify-content: space-between">
<el-form-item label="消费条件" prop="useType" style="width: 45%;"> <el-form-item label="消费条件" prop="useType" style="width: 45%;"
v-if="ruleForm.type=='1' || ruleForm.type=='5'">
<div class="d-s"> <div class="d-s">
<el-select v-model="ruleForm.useType" placeholder="请选择金额"> <el-select v-model="ruleForm.useType" placeholder="请选择金额">
<el-option label="订单金额" value="1"/> <el-option label="订单金额" value="1"/>
@ -177,25 +159,86 @@
</div> </div>
</el-form-item> </el-form-item>
<!-- 适用油品油号 oilNumber --> <el-form-item label="兑换内容" prop="useType" style="width: 45%;" v-if="ruleForm.type=='2'">
<el-form-item label="适用油品油号" prop="oilLimit" style="width: 45%;"> <el-input placeholder="" v-model="ruleForm.exchangeContent"></el-input>
</el-form-item>
<el-form-item label="优惠条件" prop="useType" style="width: 45%;" v-if="ruleForm.type=='3'">
<div class="d-s"> <div class="d-s">
<el-radio-group v-model="ruleForm.oilLimit.toString()"> <el-select v-model="ruleForm.useType" placeholder="请选择金额" style="width: 100px">
<el-option label="订单金额" value="1"/>
<el-option label="实收金额" value="2"/>
<el-option label="兑换券" value="3"/>
<el-option label="折扣券" value="4"/>
<el-option label="油品立减券" value="5"/>
<el-option label="单品代金券" value="6"/>
</el-select>
<div style="margin: 0px 5px;">范围</div>
<el-input placeholder="" v-model="ruleForm.zkStartAmount" style="width: 60px">
<template slot="append"></template>
</el-input>
<div style="margin: 0px 5px;">~</div>
<el-input placeholder="" v-model="ruleForm.zkEndAmount" style="width: 60px">
<template slot="append"></template>
</el-input>
<div style="width: 60px;text-align: center">优惠</div>
<el-input placeholder="" v-model="ruleForm.zkData" style="width: 140px">
<template slot="append"></template>
</el-input>
</div>
</el-form-item>
<el-form-item label="消费条件" prop="useType" style="width: 45%;" v-if="ruleForm.type=='4'">
<div class="d-s">
<el-select v-model="ruleForm.useType" placeholder="请选择金额">
<el-option label="订单金额" value="1"/>
<el-option label="实收金额" value="2"/>
<el-option label="兑换券" value="3"/>
<el-option label="折扣券" value="4"/>
<el-option label="油品立减券" value="5"/>
<el-option label="单品代金券" value="6"/>
</el-select>
<div style="margin: 0px 5px;"></div>
<el-input placeholder="" v-model="ruleForm.reachAmount" style="width: 140px">
<template slot="append"></template>
</el-input>
<div style="width: 60px;text-align: center"></div>
<el-input placeholder="" v-model="ruleForm.ljOilNum" style="width: 140px">
<template slot="append">L</template>
</el-input>
<div style="width: 60px;text-align: center"></div>
<el-input placeholder="" v-model="ruleForm.ljOilAmount" style="width: 140px">
<template slot="append"></template>
</el-input>
</div>
</el-form-item>
<!-- 适用油品油号 oilNumber -->
<el-form-item label="适用油品油号" prop="oilLimit" style="width: 50%;">
<div class="d-s">
<el-radio-group v-model="ruleForm.oilLimit">
<el-radio :label="'1'">不限</el-radio> <el-radio :label="'1'">不限</el-radio>
<el-radio :label="'2'">自定义</el-radio> <el-radio :label="'2'">自定义</el-radio>
</el-radio-group> </el-radio-group>
<el-select v-model="ruleForm.oilNumber" multiple placeholder="请选择" style="margin-left: 5px"> <el-select v-model="ruleForm.oilNumber" multiple placeholder="请选择" style="margin-left: 5px">
<!-- <el-option v-for="dict in dict.type.oilNumber_type" :key="dict.value" :label="dict.label"-->
<!-- :value="dict.value"/>-->
<el-option v-for="(item,index) in oilNumberList" :key="index" <el-option v-for="(item,index) in oilNumberList" :key="index"
:label="getOilNamess(oilNameList,item.oilName)" :value="item.oilName"></el-option> :label="getOilNamess(oilNameList,item.oilName)" :value="item.oilName"></el-option>
</el-select> </el-select>
</div> </div>
</el-form-item> </el-form-item>
</div> </div>
<div class="d-s" style="justify-content: space-between" v-if="ruleForm.type=='3'">
<el-form-item label="最大优惠金额" prop="membershipLevel" style="width: 45%;">
<el-input placeholder="" v-model="ruleForm.zkMaxAmount">
<template slot="append"></template>
</el-input>
</el-form-item>
</div>
<div class="d-s" style="justify-content: space-between"> <div class="d-s" style="justify-content: space-between">
<el-form-item label="适用会员等级" prop="membershipLevel" style="width: 30%;"> <el-form-item label="适用会员等级" prop="membershipLevel" style="width: 45%;">
<el-select v-model="ruleForm.membershipLevel" multiple placeholder="请选择"> <el-select v-model="ruleForm.membershipLevel" multiple placeholder="请选择" style="width: 100%">
<el-option <el-option
v-for="(item,index) in membership" v-for="(item,index) in membership"
@ -204,9 +247,9 @@
:key="index"></el-option> :key="index"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="是否允许收银台送券" label-width="160px" prop="sySend" style="width: 45%;"> <el-form-item label="是否允许收银台送券" label-width="160px" prop="sySend" style="width: 50%;">
<el-radio-group v-model="ruleForm.sySend.toString()"> <el-radio-group v-model="ruleForm.sySend">
<el-radio :label="'0'"></el-radio> <el-radio :label="'0'"></el-radio>
<el-radio :label="'1'"></el-radio> <el-radio :label="'1'"></el-radio>
@ -219,7 +262,7 @@
<!-- 生效日期设置 timeType 字段 --> <!-- 生效日期设置 timeType 字段 -->
<el-form-item label="生效日期设置" prop="timeType" style="width: 45%;"> <el-form-item label="生效日期设置" prop="timeType" style="width: 45%;">
<div class="d-s"> <div class="d-s">
<el-radio-group v-model="ruleForm.timeType.toString()"> <el-radio-group v-model="ruleForm.timeType">
<el-radio :label="'1'">领取 <el-radio :label="'1'">领取
<el-input v-model="ruleForm.validityDay" placeholder="" <el-input v-model="ruleForm.validityDay" placeholder=""
style="width: 80px;margin: 0px 10px"></el-input> style="width: 80px;margin: 0px 10px"></el-input>
@ -231,7 +274,7 @@
</div> </div>
</el-form-item> </el-form-item>
<!-- 生效日期 effectiveDateStart 字段 --> <!-- 生效日期 effectiveDateStart 字段 -->
<el-form-item label="生效日期" prop="effectiveDateStart" style="width: 45%;"> <el-form-item label="生效日期" prop="effectiveDateStart" style="width: 50%;" v-if="ruleForm.timeType=='2'">
<el-date-picker <el-date-picker
v-model="ruleForm.effectiveDateStart" v-model="ruleForm.effectiveDateStart"
style="width: 160px" style="width: 160px"
@ -253,14 +296,14 @@
<div class="d-s" style="justify-content: space-between"> <div class="d-s" style="justify-content: space-between">
<el-form-item label="是否与其他优惠同时使用" label-width="180px" prop="useWithOther" style="width: 45%;"> <el-form-item label="是否与其他优惠同时使用" label-width="180px" prop="useWithOther" style="width: 45%;">
<el-radio-group v-model="ruleForm.useWithOther.toString()"> <el-radio-group v-model="ruleForm.useWithOther">
<el-radio :label="'0'">不可以</el-radio> <el-radio :label="'0'">不可以</el-radio>
<el-radio :label="'1'">可以</el-radio> <el-radio :label="'1'">可以</el-radio>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
<el-form-item label="使用次数限制" prop="limitTotalDay" style="width: 45%;"> <el-form-item label="使用次数限制" prop="limitTotalDay" style="width: 50%;">
<div class="d-s"> <div class="d-s">
<div style="margin: 0px 5px;"></div> <div style="margin: 0px 5px;"></div>
<el-input placeholder="" v-model="ruleForm.limitTotalDay" style="width: 140px"> <el-input placeholder="" v-model="ruleForm.limitTotalDay" style="width: 140px">
@ -277,7 +320,7 @@
</div> </div>
<div class="d-s" style="justify-content: space-between"> <div class="d-s" style="justify-content: space-between">
<el-form-item label="适用时间段" style="width: 45%;"> <el-form-item label="适用时间段" style="width: 45%;">
<el-radio-group v-model="ruleForm.availableType.toString()"> <el-radio-group v-model="ruleForm.availableType">
<el-radio :label="'1'" style="margin-bottom: 15px">每周 <el-radio :label="'1'" style="margin-bottom: 15px">每周
<el-select v-model="ruleForm.availableWeek" multiple placeholder="请选择周日期"> <el-select v-model="ruleForm.availableWeek" multiple placeholder="请选择周日期">
<el-option v-for="item in weekList" :key="item.value" :label="item.label" :value="item.value"> <el-option v-for="item in weekList" :key="item.value" :label="item.label" :value="item.value">
@ -318,21 +361,24 @@
</div> </div>
</el-form-item> </el-form-item>
<el-form-item label="不适用时间段" style="width: 45%;"> <el-form-item label="不适用时间段" style="width: 50%;">
<el-radio-group v-model="ruleForm.unAvailableType.toString()"> <el-radio-group v-model="ruleForm.unAvailableType">
<div>
<el-radio :label="'1'" style="margin-bottom: 15px">每周 <el-radio :label="'1'" style="margin-bottom: 15px">每周
<el-select v-model="ruleForm.unAvailableWeek" multiple placeholder="请选择周日期"> <el-select v-model="ruleForm.unAvailableWeek" multiple placeholder="请选择周日期">
<el-option v-for="item in weekList" :key="item.value" :label="item.label" :value="item.value"> <el-option v-for="item in weekList" :key="item.value" :label="item.label" :value="item.value">
</el-option> </el-option>
</el-select> </el-select>
</el-radio> </el-radio>
</div>
<div>
<el-radio :label="'2'" style="margin-bottom: 15px">每月 <el-radio :label="'2'" style="margin-bottom: 15px">每月
<el-select v-model="ruleForm.unAvailableDay" multiple placeholder="请选择每月固定日期"> <el-select v-model="ruleForm.unAvailableDay" multiple placeholder="请选择每月固定日期">
<el-option v-for="item in monthList" :key="item.value" :label="item.label" :value="item.value"> <el-option v-for="item in monthList" :key="item.value" :label="item.label" :value="item.value">
</el-option> </el-option>
</el-select> </el-select>
</el-radio> </el-radio>
</div>
</el-radio-group> </el-radio-group>
<div class="d-s"> <div class="d-s">
@ -365,7 +411,7 @@
<el-form-item label="每人领券限制" prop="getNumLimit" style="width: 45%;"> <el-form-item label="每人领券限制" prop="getNumLimit" style="width: 45%;">
<el-input v-model="ruleForm.getNumLimit" placeholder="请输入内容"></el-input> <el-input v-model="ruleForm.getNumLimit" placeholder="请输入内容"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="每日领券限制" prop="dayGetLimit" style="width: 45%;"> <el-form-item label="每日领券限制" prop="dayGetLimit" style="width: 50%;">
<el-input v-model="ruleForm.dayGetLimit" placeholder="请输入内容"></el-input> <el-input v-model="ruleForm.dayGetLimit" placeholder="请输入内容"></el-input>
</el-form-item> </el-form-item>
</div> </div>
@ -377,7 +423,7 @@
<el-form-item label="投放总数" prop="name" style="width: 45%;"> <el-form-item label="投放总数" prop="name" style="width: 45%;">
<el-input v-model="ruleForm.tfTotal" placeholder="请输入内容"></el-input> <el-input v-model="ruleForm.tfTotal" placeholder="请输入内容"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="使用条件" style="width: 45%;"> <el-form-item label="使用条件" style="width: 50%;">
<el-input type="textarea" v-model="ruleForm.useCondition"></el-input> <el-input type="textarea" v-model="ruleForm.useCondition"></el-input>
</el-form-item> </el-form-item>
</div> </div>
@ -388,7 +434,7 @@
<el-form-item label="背景图" prop="name" style="width: 45%;"> <el-form-item label="背景图" prop="name" style="width: 45%;">
<imgUpload :limit="1" v-model="ruleForm.backgroundImage"></imgUpload> <imgUpload :limit="1" v-model="ruleForm.backgroundImage"></imgUpload>
</el-form-item> </el-form-item>
<el-form-item label="备注" prop="name" style="width: 45%;"> <el-form-item label="备注" prop="name" style="width: 50%;">
<el-input type="textarea" :rows="2" placeholder="请输入内容" v-model="ruleForm.remark"> <el-input type="textarea" :rows="2" placeholder="请输入内容" v-model="ruleForm.remark">
</el-input> </el-input>
</el-form-item> </el-form-item>
@ -632,10 +678,10 @@ export default {
options: [ options: [
{ {
value: '1', value: '1',
label: '已售' label: '上架'
}, { }, {
value: '0', value: '0',
label: '未售' label: '下架'
},], },],
value: '', value: '',
tjdata: {}, tjdata: {},
@ -657,15 +703,15 @@ export default {
name: '王小虎', name: '王小虎',
address: '上海市普陀区金沙江路 1516 弄' address: '上海市普陀区金沙江路 1516 弄'
}], }],
oilNumberList:[], oilNumberList: [],
oilNameList:[], oilNameList: [],
ruleForm: { ruleForm: {
oilLimit:'1', oilLimit: '',
sySend:'0', sySend: '',
timeType:'1', timeType: '',
useWithOther:'0', useWithOther: '',
availableType:'1', availableType: '',
unAvailableType:'1', unAvailableType: '',
name: '', name: '',
number: '', number: '',
status: '', status: '',
@ -687,9 +733,7 @@ export default {
validityDay: 30 validityDay: 30
}, },
membership: [ membership: [],
],
rules: { rules: {
name: [ name: [
{required: true, message: '此为必填项', trigger: 'blur'}, {required: true, message: '此为必填项', trigger: 'blur'},
@ -712,15 +756,15 @@ export default {
imgUpload, imgUpload,
}, },
methods: { methods: {
sxCoupon(id){ sxCoupon(id) {
getCoupon(id).then(res=>{ getCoupon(id).then(res => {
if(res.code==200){ if (res.code == 200) {
this.$message({ this.$message({
message: '操作成功', message: '操作成功',
type: 'success' type: 'success'
}); });
this.getlist() this.getlist()
}else{ } else {
this.$message({ this.$message({
message: res.msg, message: res.msg,
type: 'error' type: 'error'
@ -729,13 +773,13 @@ export default {
}) })
}, },
listUserGrade() { listUserGrade() {
listUserGrade({page:1,pageSize:1000}).then(res => { listUserGrade({page: 1, pageSize: 1000}).then(res => {
if (res.code == 200) { if (res.code == 200) {
this.membership = res.data.records this.membership = res.data.records
} }
}) })
}, },
getOilList(){ getOilList() {
getOilNameList().then(response => { getOilNameList().then(response => {
this.oilNameList = response.data; this.oilNameList = response.data;
}) })
@ -772,38 +816,39 @@ export default {
}, },
updetenCardCoupon(id) { updetenCardCoupon(id) {
this.listUserGrade()
this.centerDialogVisible = !this.centerDialogVisible this.centerDialogVisible = !this.centerDialogVisible
getCardCoupon(id).then(res => { getCardCoupon(id).then(res => {
this.ruleForm = res.data this.ruleForm = res.data
if( res.data.unAvailableWeek){ if (res.data.unAvailableWeek) {
this.ruleForm.unAvailableWeek = res.data.unAvailableWeek.split(",") this.ruleForm.unAvailableWeek = res.data.unAvailableWeek.split(",")
} }
if(res.data.unAvailableDay){ if (res.data.unAvailableDay) {
this.ruleForm.unAvailableDay = res.data.unAvailableDay.split(",") this.ruleForm.unAvailableDay = res.data.unAvailableDay.split(",")
} }
if( res.data.availableWeek){ if (res.data.availableWeek) {
this.ruleForm.availableWeek = res.data.availableWeek.split(",") this.ruleForm.availableWeek = res.data.availableWeek.split(",")
} }
if(res.data.availableDay){ if (res.data.availableDay) {
this.ruleForm.availableDay = res.data.availableDay.split(",") this.ruleForm.availableDay = res.data.availableDay.split(",")
} }
if(res.data.membershipLevel){ if (res.data.membershipLevel) {
this.ruleForm.membershipLevel = res.data.membershipLevel.split(",") this.ruleForm.membershipLevel = res.data.membershipLevel.split(",")
} }
if(res.data.oilNumber){ if (res.data.oilNumber) {
this.ruleForm.oilNumber = res.data.oilNumber.split(",") this.ruleForm.oilNumber = res.data.oilNumber.split(",")
} }
}) })
}, },
addCertificate() { addCertificate() {
this.ruleForm = { this.ruleForm = {
oilLimit:1, oilLimit: 1,
sySend:0, sySend: 0,
timeType:1, timeType: 1,
useWithOther:0, useWithOther: 0,
availableType:1, availableType: 1,
unAvailableType:1, unAvailableType: 1,
name: '', name: '',
number: '', number: '',
quantity: '', quantity: '',
@ -821,7 +866,7 @@ export default {
useCondition: "", useCondition: "",
validityDay: 30 validityDay: 30
}, }
this.centerDialogVisible = !this.centerDialogVisible this.centerDialogVisible = !this.centerDialogVisible
// //
this.listUserGrade() this.listUserGrade()
@ -913,15 +958,15 @@ export default {
// }) // })
}, },
// //
deletId(id){ deletId(id) {
this.$confirm('此操作将永久删除该文件, 是否继续?', '提示', { this.$confirm('此操作将永久删除该文件, 是否继续?', '提示', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning'
}).then(() => { }).then(() => {
CardCouponDelete(id).then(res=>{ CardCouponDelete(id).then(res => {
if(res.code == 200){ if (res.code == 200) {
this.$message({ this.$message({
type: 'success', type: 'success',
message: '删除成功!' message: '删除成功!'
@ -937,8 +982,6 @@ export default {
}); });
}, },
updateTableData(deletedRow) { updateTableData(deletedRow) {
@ -1004,29 +1047,27 @@ export default {
}, },
addBlock() { addBlock() {
if( this.ruleForm.unAvailableWeek){ if (this.ruleForm.unAvailableWeek) {
this.ruleForm.unAvailableWeek = this.ruleForm.unAvailableWeek.toString() this.ruleForm.unAvailableWeek = this.ruleForm.unAvailableWeek.toString()
} }
if(this.ruleForm.unAvailableDay){ if (this.ruleForm.unAvailableDay) {
this.ruleForm.unAvailableDay = this.ruleForm.unAvailableDay.toString() this.ruleForm.unAvailableDay = this.ruleForm.unAvailableDay.toString()
} }
if( this.ruleForm.availableWeek){ if (this.ruleForm.availableWeek) {
this.ruleForm.availableWeek = this.ruleForm.availableWeek.toString() this.ruleForm.availableWeek = this.ruleForm.availableWeek.toString()
} }
if(this.ruleForm.availableDay){ if (this.ruleForm.availableDay) {
this.ruleForm.availableDay = this.ruleForm.availableDay.toString() this.ruleForm.availableDay = this.ruleForm.availableDay.toString()
} }
if(this.ruleForm.membershipLevel){ if (this.ruleForm.membershipLevel) {
this.ruleForm.membershipLevel = this.ruleForm.membershipLevel.toString() this.ruleForm.membershipLevel = this.ruleForm.membershipLevel.toString()
} }
if(this.ruleForm.oilNumber){ if (this.ruleForm.oilNumber) {
this.ruleForm.oilNumber = this.ruleForm.oilNumber.toString() this.ruleForm.oilNumber = this.ruleForm.oilNumber.toString()
} }
if (!this.ruleForm.id) {
if(!this.ruleForm.id ){
addCardCoupon(this.ruleForm).then(res => { addCardCoupon(this.ruleForm).then(res => {
if (res.code == 200) { if (res.code == 200) {
@ -1039,7 +1080,7 @@ export default {
}).catch().catch(error => { }).catch().catch(error => {
this.$message.error('操作失败请稍后再试'); this.$message.error('操作失败请稍后再试');
}); });
}else { } else {
editCardCoupon(this.ruleForm).then(res => { editCardCoupon(this.ruleForm).then(res => {
if (res.code == 200) { if (res.code == 200) {
this.$message.success('修改成功'); this.$message.success('修改成功');

View File

@ -1,6 +1,6 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<div class="card-change"> <div class="card-change" style="height: 85vh">
<div style="margin-bottom: 20px"> <div style="margin-bottom: 20px">
<div style="margin-bottom: 20px"> <div style="margin-bottom: 20px">
加油数量保留两位小数后面余数部分规则 加油数量保留两位小数后面余数部分规则

View File

@ -1,6 +1,6 @@
<template> <template>
<div class="app-container"> <div class="app-container">
<el-card > <div class="card-change">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px"> <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" label-width="68px">
<el-form-item label="" prop="name"> <el-form-item label="" prop="name">
<el-input <el-input
@ -20,6 +20,7 @@
</el-form-item> </el-form-item>
</el-form> </el-form>
<div style="height: 69vh;overflow:auto;">
<el-table :data="tableData" style="width: 100%" border> <el-table :data="tableData" style="width: 100%" border>
<el-table-column align="center" type="index" label="序号"></el-table-column> <el-table-column align="center" type="index" label="序号"></el-table-column>
<el-table-column align="center" prop="deviceName" label="设备名称"></el-table-column> <el-table-column align="center" prop="deviceName" label="设备名称"></el-table-column>
@ -28,28 +29,11 @@
<el-table-column align="center" prop="deptName" label="所属机构"></el-table-column> <el-table-column align="center" prop="deptName" label="所属机构"></el-table-column>
<el-table-column align="center" prop="staffIds" label="关联员工"> <el-table-column align="center" prop="staffIds" label="关联员工">
<template slot-scope="scope"> <template slot-scope="scope">
{{jsonChange(scope.row.staffIds)}} {{ jsonChange(scope.row.staffIds) }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" prop="machineCode" label="设备终端号"></el-table-column> <el-table-column align="center" prop="machineCode" label="设备终端号"></el-table-column>
<el-table-column align="center" prop="msign" label="设备密钥"></el-table-column> <el-table-column align="center" prop="msign" label="设备密钥"></el-table-column>
<!-- <el-table-column align="center" prop="userId" label="用户id"></el-table-column>-->
<!-- <el-table-column prop="appKey" label="应用id(APP_KEY)"></el-table-column>-->
<!-- <el-table-column prop="appSecret" label="应用密钥(APP_SECRET)"></el-table-column>-->
<!-- <el-table-column prop="appPublicKey" label="应用公钥(key)"></el-table-column>-->
<!-- <el-table-column prop="platformPublicKey" label="平台公钥(publicKey)"></el-table-column>-->
<!-- <el-table-column prop="accessToken" label="token"></el-table-column>-->
<!-- <el-table-column prop="isAcquiesce" label="isAcquiesce">-->
<!-- <template slot-scope="scope">-->
<!-- <el-switch-->
<!-- v-model="scope.row.isAcquiesce"-->
<!-- @change="submitDeviceInfo(scope.row)"-->
<!-- active-color="#13ce66"-->
<!-- inactive-color="#ff4949">-->
<!-- </el-switch>-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column label="操作" align="center" width="200" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" width="200" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
@ -57,16 +41,19 @@
type="text" type="text"
icon="el-icon-view" icon="el-icon-view"
@click="edit(scope.row)" @click="edit(scope.row)"
>编辑</el-button> >编辑
</el-button>
<el-button <el-button
size="mini" size="mini"
type="text" type="text"
icon="el-icon-edit" icon="el-icon-edit"
@click="del(scope.row)" @click="del(scope.row)"
>删除</el-button> >删除
</el-button>
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
</div>
<pagination <pagination
v-show="total>0" v-show="total>0"
:total="total" :total="total"
@ -75,30 +62,30 @@
@pagination="getList" @pagination="getList"
/> />
</el-card> </div>
<el-dialog :title="title" :close-on-click-modal="false" :visible.sync="open" width="30%" append-to-body> <el-dialog :title="title" :close-on-click-modal="false" :visible.sync="open" width="30%" append-to-body>
<el-form ref="form" :model="deviceInfo" label-width="80px"> <el-form ref="form" :model="deviceInfo" label-width="80px">
<el-form :model="deviceInfo" :rules="rules" ref="deviceForm" label-width="120px"> <el-form :model="deviceInfo" :rules="rules" ref="deviceForm" label-width="120px">
<el-form-item label="设备名称" prop="deviceName" > <el-form-item label="设备名称" prop="deviceName">
<el-input v-model="deviceInfo.deviceName" style="width: 300px"></el-input> <el-input v-model="deviceInfo.deviceName" style="width: 300px"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="设备品牌" prop="deviceSi" > <el-form-item label="设备品牌" prop="deviceSi">
<el-input v-model="deviceInfo.deviceSi" style="width: 300px"></el-input> <el-input v-model="deviceInfo.deviceSi" style="width: 300px"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="设备功能" prop="deviceAb" > <el-form-item label="设备功能" prop="deviceAb">
<el-radio-group v-model="deviceInfo.deviceAb"> <el-radio-group v-model="deviceInfo.deviceAb">
<el-radio label="打印小票"></el-radio> <el-radio label="打印小票"></el-radio>
<el-radio label="语音播报"></el-radio> <el-radio label="语音播报"></el-radio>
</el-radio-group> </el-radio-group>
</el-form-item> </el-form-item>
<el-form-item label="设备终端号" prop="machineCode" > <el-form-item label="设备终端号" prop="machineCode">
<el-input v-model="deviceInfo.machineCode" style="width: 300px"></el-input> <el-input v-model="deviceInfo.machineCode" style="width: 300px"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="设备密钥" prop="msign" > <el-form-item label="设备密钥" prop="msign">
<el-input v-model="deviceInfo.msign" style="width: 300px"></el-input> <el-input v-model="deviceInfo.msign" style="width: 300px"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="选择员工" prop="staffId" > <el-form-item label="选择员工" prop="staffId">
<el-select <el-select
v-model="staffIds" v-model="staffIds"
clearable clearable
@ -113,25 +100,25 @@
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<!-- <el-form-item label="用户id" prop="userId">--> <!-- <el-form-item label="用户id" prop="userId">-->
<!-- <el-input v-model="deviceInfo.userId"></el-input>--> <!-- <el-input v-model="deviceInfo.userId"></el-input>-->
<!-- </el-form-item>--> <!-- </el-form-item>-->
<!-- <el-form-item label="应用id" prop="appKey">--> <!-- <el-form-item label="应用id" prop="appKey">-->
<!-- <el-input v-model="deviceInfo.appKey"></el-input>--> <!-- <el-input v-model="deviceInfo.appKey"></el-input>-->
<!-- </el-form-item>--> <!-- </el-form-item>-->
<!-- <el-form-item label="应用密钥" prop="appSecret">--> <!-- <el-form-item label="应用密钥" prop="appSecret">-->
<!-- <el-input v-model="deviceInfo.appSecret"></el-input>--> <!-- <el-input v-model="deviceInfo.appSecret"></el-input>-->
<!-- </el-form-item>--> <!-- </el-form-item>-->
<!-- <el-form-item label="应用公钥" prop="appPublicKey">--> <!-- <el-form-item label="应用公钥" prop="appPublicKey">-->
<!-- <el-input v-model="deviceInfo.appPublicKey"></el-input>--> <!-- <el-input v-model="deviceInfo.appPublicKey"></el-input>-->
<!-- </el-form-item>--> <!-- </el-form-item>-->
<!-- <el-form-item label="平台公钥" prop="platformPublicKey">--> <!-- <el-form-item label="平台公钥" prop="platformPublicKey">-->
<!-- <el-input v-model="deviceInfo.platformPublicKey"></el-input>--> <!-- <el-input v-model="deviceInfo.platformPublicKey"></el-input>-->
<!-- </el-form-item>--> <!-- </el-form-item>-->
<!-- <el-form-item label="token" prop="accessToken">--> <!-- <el-form-item label="token" prop="accessToken">-->
<!-- <el-input v-model="deviceInfo.accessToken"></el-input>--> <!-- <el-input v-model="deviceInfo.accessToken"></el-input>-->
<!-- </el-form-item>--> <!-- </el-form-item>-->
<el-form-item label="启用状态" prop="isAcquiesce" > <el-form-item label="启用状态" prop="isAcquiesce">
<el-switch <el-switch
v-model="deviceInfo.acquiesce" v-model="deviceInfo.acquiesce"
active-color="#13ce66" active-color="#13ce66"
@ -165,7 +152,7 @@ export default {
return { return {
tableData: [], tableData: [],
staffIds: '', staffIds: '',
staffList:[], staffList: [],
deviceInfo: { deviceInfo: {
id: null, // id id: null, // id
@ -186,33 +173,33 @@ export default {
}, },
rules: { rules: {
deviceName: [ deviceName: [
{ required: true, message: '设备名称不能为空', trigger: 'blur' } {required: true, message: '设备名称不能为空', trigger: 'blur'}
], ],
deviceSi: [ deviceSi: [
{ required: true, message: '设备品牌不能为空', trigger: 'blur' } {required: true, message: '设备品牌不能为空', trigger: 'blur'}
], ],
deviceAb: [ deviceAb: [
{ required: true, message: '设备功能不能为空', trigger: 'change' } {required: true, message: '设备功能不能为空', trigger: 'change'}
], ],
machineCode: [ machineCode: [
{ required: true, message: '设备终端号不能为空', trigger: 'blur' } {required: true, message: '设备终端号不能为空', trigger: 'blur'}
], ],
msign: [ msign: [
{ required: true, message: '设备密钥不能为空', trigger: 'blur' } {required: true, message: '设备密钥不能为空', trigger: 'blur'}
], ],
staffId: [ staffId: [
{ required: false, message: '请选择员工', trigger: 'change' } {required: false, message: '请选择员工', trigger: 'change'}
] ]
}, },
// //
open: false, open: false,
title:"", title: "",
total:0, total: 0,
// //
queryParams: { queryParams: {
page: 1, page: 1,
pageSize: 10, pageSize: 10,
deviceName:'', deviceName: '',
}, },
}; };
}, },
@ -221,16 +208,16 @@ export default {
this.getStaffList() this.getStaffList()
}, },
methods: { methods: {
getList(){ getList() {
getListByPageApi(this.queryParams).then(res=>{ getListByPageApi(this.queryParams).then(res => {
this.tableData = res.data.records; this.tableData = res.data.records;
this.total = res.data.total this.total = res.data.total
}) })
}, },
// //
getStaffList(){ getStaffList() {
queryStaffs().then( response => { queryStaffs().then(response => {
this.staffList = response.data; this.staffList = response.data;
}) })
}, },
@ -262,16 +249,16 @@ export default {
// //
console.log('提交设备信息数据:', this.deviceInfo); console.log('提交设备信息数据:', this.deviceInfo);
if (this.deviceInfo.id) { if (this.deviceInfo.id) {
editPrintDeviceApi(this.deviceInfo).then(res=>{ editPrintDeviceApi(this.deviceInfo).then(res => {
if(res.code === 200) { if (res.code === 200) {
this.getList() this.getList()
this.open = false this.open = false
} }
}) })
}else { } else {
console.log("staffIds",this.staffIds) console.log("staffIds", this.staffIds)
addPrintDeviceApi(this.deviceInfo).then(res=>{ addPrintDeviceApi(this.deviceInfo).then(res => {
if(res.code === 200) { if (res.code === 200) {
this.getList() this.getList()
this.open = false this.open = false
} }
@ -284,20 +271,20 @@ export default {
let a = JSON.parse(data); let a = JSON.parse(data);
let b = a.map(res => res.realName).join(','); let b = a.map(res => res.realName).join(',');
return b return b
}else { } else {
return '--' return '--'
} }
}, },
handleQuery(){ handleQuery() {
this.getList() this.getList()
}, },
resetQuery(){ resetQuery() {
this.queryParams = { this.queryParams = {
page: 1, page: 1,
pageSize: 10, pageSize: 10,
deviceName:'', deviceName: '',
}, },
this.getList() this.getList()
}, },
@ -310,7 +297,7 @@ export default {
this.clean() this.clean()
this.open = true; this.open = true;
this.title = "编辑设备" this.title = "编辑设备"
console.log("eeeeeeee",e) console.log("eeeeeeee", e)
if (e.staffIds) { if (e.staffIds) {
let a = JSON.parse(e.staffIds) let a = JSON.parse(e.staffIds)
this.staffIds = a.map(res => res.id) this.staffIds = a.map(res => res.id)
@ -326,7 +313,7 @@ export default {
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning'
}).then(() => { }).then(() => {
delPrintDeviceApi({id:e.id}).then(res=>{ delPrintDeviceApi({id: e.id}).then(res => {
if (res.code == 200) { if (res.code == 200) {
this.$message({ this.$message({
type: 'success', type: 'success',
@ -344,11 +331,10 @@ export default {
}); });
}, },
clean() { clean() {
this.staffIds = [] this.staffIds = []
this.deviceInfo= { this.deviceInfo = {
id: null, // id id: null, // id
machineCode: '', // machineCode: '', //
msign: '', // msign: '', //
@ -358,7 +344,7 @@ export default {
appSecret: '', // (APP_SECRET) appSecret: '', // (APP_SECRET)
appPublicKey: '', // (key) appPublicKey: '', // (key)
platformPublicKey: '', // (publicKey) platformPublicKey: '', // (publicKey)
accessToken: '' , // token accessToken: '', // token
acquiesce: false // token acquiesce: false // token
} }
}, },
@ -366,7 +352,7 @@ export default {
}; };
</script> </script>
<style lang="scss" scoped> <style lang="scss" scoped>
.common-dialog >>> .el-upload--picture-card { .common-dialog > > > .el-upload--picture-card {
width: 60px; width: 60px;
height: 50px; height: 50px;
line-height: 60px; line-height: 60px;

View File

@ -228,7 +228,7 @@ export default {
} }
this.$store.dispatch("codeLogin", data).then(() => { this.$store.dispatch("codeLogin", data).then(() => {
// this.$router.push({ path: this.redirect || "/" }).catch(()=>{}); // this.$router.push({ path: this.redirect || "/" }).catch(()=>{});
this.$router.push({ path:"/homeindex" || "/" }).catch(()=>{}); this.$router.push({ path:"/newHome" || "/" }).catch(()=>{});
}).catch(() => { }).catch(() => {
this.loading = false; this.loading = false;
@ -284,11 +284,11 @@ export default {
Cookies.remove("password"); Cookies.remove("password");
Cookies.remove('rememberMe'); Cookies.remove('rememberMe');
} }
console.log('/homeindex') console.log('/newHome')
app.$store.dispatch("Login", this.loginForm).then(() => { app.$store.dispatch("Login", this.loginForm).then(() => {
// app.$router.push({ path: "/homeindex" }).catch(()=>{}); // app.$router.push({ path: "/newHome" }).catch(()=>{});
this.$router.push({ this.$router.push({
path:"/homeindex", path:"/newHome",
query:{ query:{
id:0 id:0
} }