登录页样式修改
@@ -1,4 +1,20 @@
|
||||
/** iconfont */
|
||||
@font-face {
|
||||
font-family: "YouSheBiaoTiHei";
|
||||
src: url('@/static/font/YouSheBiaoTiHei.ttf') format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: "SourceHanSansCN-Bold";
|
||||
src: url('@/static/font/SourceHanSansCN-Bold.otf') format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: "SourceHanSansCN-Regular";
|
||||
src: url('@/static/font/SourceHanSansCN-Regular.otf') format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: "SourceHanSansCN-Medium";
|
||||
src: url('@/static/font/SourceHanSansCN-Medium.otf') format('truetype');
|
||||
}
|
||||
@font-face {
|
||||
font-family: 'iconfont';
|
||||
src: url('@/static/iconfont/iconfont.woff2') format('woff2'),
|
||||
|
||||
@@ -137,4 +137,10 @@ input[type="button"], input[type="submit"], input[type="search"], input[type="re
|
||||
}
|
||||
.mgr5 {
|
||||
margin-right: 5px;
|
||||
}
|
||||
.mgt40 {
|
||||
margin-top: 40rpx
|
||||
}
|
||||
.mgb40 {
|
||||
margin-bottom: 40rpx
|
||||
}
|
||||
@@ -1,6 +1,10 @@
|
||||
<template>
|
||||
<view class="content">
|
||||
<view class="header">首页</view>
|
||||
<view class="home_content">
|
||||
<view class="zd-row header">
|
||||
<view class="zd-col-8 home_title"></view>
|
||||
<view class="zd-col-8 home_title">首页</view>
|
||||
<view class="zd-col-8 home_title">首页</view>
|
||||
</view>
|
||||
<view class="userInfo-wrap">
|
||||
<view class="userInfo">
|
||||
<text class="p1">{{userName}}</text>
|
||||
@@ -35,7 +39,7 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {authority} from '@/utils/getData2.js'
|
||||
import {authority, getBillsCount} from '@/utils/getData2.js'
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
@@ -47,12 +51,18 @@
|
||||
},
|
||||
created () {
|
||||
this._authority()
|
||||
this._getBillsCount()
|
||||
},
|
||||
methods: {
|
||||
async _authority () {
|
||||
let res = await authority()
|
||||
this.menuList = [...res.sonTree]
|
||||
|
||||
},
|
||||
async _getBillsCount () {
|
||||
let res = await getBillsCount()
|
||||
console.log(res)
|
||||
|
||||
},
|
||||
toPage1 (e) {
|
||||
if (e.sonTree.length > 0) {
|
||||
@@ -83,11 +93,19 @@
|
||||
|
||||
<style lang="stylus">
|
||||
@import '../../common/style/mixin.styl';
|
||||
.home_content
|
||||
position relative
|
||||
_wh(100%, 100%)
|
||||
_bis(,'../../static/images/home_bg.jpg', 100%, 100%,bottom)
|
||||
.zd_content
|
||||
padding-top 0
|
||||
.header
|
||||
height 42px
|
||||
_font(16px,42px,#333,,center)
|
||||
height 120rpx
|
||||
padding 0 30rpx 50rpx 30rpx
|
||||
_bis(,'../../static/images/header_bg.png', 100%, 100%,bottom)
|
||||
.home_title
|
||||
_font(50rpx,60rpx,#fff,,center)
|
||||
font-family: YouSheBiaoTiHei;
|
||||
.userInfo-wrap
|
||||
_fj()
|
||||
_wh(calc(100% - 30px),80px)
|
||||
|
||||
@@ -1,48 +1,62 @@
|
||||
<template>
|
||||
<view class="login_bg">
|
||||
<view class="login-bg relative">
|
||||
<view class="logo-wraper">
|
||||
<img src="../../static/images/logo.png" alt="">
|
||||
</view>
|
||||
<view class="login_wrap">
|
||||
<view class="login_tab">
|
||||
<view class="login_tab_line drift" :style="{'left': drift+'%'}"></view>
|
||||
<view class="login_tab_item" @tap="_tabChange(0)">登录</view>
|
||||
<view class="login_tab_item" @tap="_tabChange(50)">配置</view>
|
||||
</view>
|
||||
<view class="login_cnt drift" :style="{'left': '-'+drift*2+'%'}">
|
||||
<view class="login_card">
|
||||
<view class="card_wrap">
|
||||
<view class="inputOuter">
|
||||
<input type="text" placeholder="用户名" v-model="loginname" class="inputStyle">
|
||||
<text v-show="showBtn3" class="iconfont login_icon delete_icon" @tap="clearData(3)"></text>
|
||||
</view>
|
||||
<view class="inputOuter">
|
||||
<input :type="inputType" placeholder="密码" v-model="password" class="inputStyle">
|
||||
<text class="iconfont login_icon" :class="eyeOpen ? 'eye_colse_icon' : 'eye_open_icon'" @click="passwordShow"></text>
|
||||
</view>
|
||||
</view>
|
||||
<view class="submit">
|
||||
<button class="primary-button" :disabled="disabled" @click="toLogin">登 录</button>
|
||||
</view>
|
||||
<view class="scanBox">
|
||||
<!-- <view class="iconfont scan_icon"></view> -->
|
||||
<!-- <text class="san_text">扫码登录</text> -->
|
||||
<text class="san_text" @tap="isUpdate">升级版本</text>
|
||||
</view>
|
||||
<view class="login_w">
|
||||
<view class="zd-row jcflexstart login_tab">
|
||||
<view class="login_tab_item" :class="{'login_tab_active': drift === 0}" @tap="_tabChange(0)">登录</view>
|
||||
<view class="login_tab_item" :class="{'login_tab_active': drift === 50}" @tap="_tabChange(50)">配置</view>
|
||||
</view>
|
||||
<view class="login_card">
|
||||
<view class="card_wrap">
|
||||
<view class="inputOuter">
|
||||
<input type="text" placeholder="域名地址" v-model="baseUrl" class="inputStyle">
|
||||
<text v-show="showBtn1" class="iconfont login_icon delete_icon" @tap="clearData(1)"></text>
|
||||
<view class="login_cnt drift" :style="{'left': '-'+drift*2+'%'}">
|
||||
<view class="login_card">
|
||||
<view class="card_wrap">
|
||||
<view class="zd-row mgb40">
|
||||
<view class="zd-col-4 login_label">账号</view>
|
||||
<view class="zd-col-20">
|
||||
<input type="text" placeholder="用户名" v-model="loginname" class="inputStyle">
|
||||
</view>
|
||||
</view>
|
||||
<view class="zd-row mgb40">
|
||||
<view class="zd-col-4 login_label">密码</view>
|
||||
<view class="zd-col-20 relative">
|
||||
<input :type="inputType" placeholder="密码" v-model="password" class="inputStyle">
|
||||
<text class="iconfont login_icon" :class="eyeOpen ? 'eye_colse_icon' : 'eye_open_icon'" @click="passwordShow"></text>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="zd-row mgt40 mgb40">
|
||||
<button class="primary-button" :disabled="disabled" @click="toLogin">登 录</button>
|
||||
</view>
|
||||
<view class="zd-row">
|
||||
<!-- <view class="iconfont scan_icon"></view> -->
|
||||
<!-- <text class="san_text">扫码登录</text> -->
|
||||
<text class="zd-col-24 san_text" @tap="isUpdate">升级版本</text>
|
||||
</view>
|
||||
<!-- <view class="inputOuter">
|
||||
<input type="text" placeholder="图片域名地址" v-model="imgBaseUrl" class="inputStyle">
|
||||
<text v-show="showBtn2" class="iconfont login_icon delete_icon" @tap="clearData(2)"></text>
|
||||
</view> -->
|
||||
</view>
|
||||
<view class="submit">
|
||||
<button class="primary-button" :disabled="disabled" @tap="toConfig">配 置</button>
|
||||
<view class="login_card">
|
||||
<view class="card_wrap">
|
||||
<view class="zd-row mgb40">
|
||||
<view class="zd-col-4 login_label">域名</view>
|
||||
<view class="zd-col-20">
|
||||
<input type="text" placeholder="域名地址" v-model="baseUrl" class="inputStyle">
|
||||
</view>
|
||||
</view>
|
||||
<view class="zd-row mgb40">
|
||||
<view class="zd-col-6 login_label">刷新时间</view>
|
||||
<view class="zd-col-18">
|
||||
<input type="number" placeholder="刷新时间" v-model="setTime" class="inputStyle">
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="zd-row mgt40 mgb40">
|
||||
<button class="primary-button" :disabled="disabled" @tap="toConfig">配 置</button>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
<view class="daoying_bg"></view>
|
||||
</view>
|
||||
<view v-if="version !== ''" class="version-name">v{{version}}</view>
|
||||
<Up-grade v-if="grade === true" @closeUpdate="closeUpdate" :androidUrl="androidUrl"></up-grade>
|
||||
@@ -63,7 +77,7 @@
|
||||
loginname: '',
|
||||
password: '',
|
||||
baseUrl: this.$store.getters.baseUrl,
|
||||
imgBaseUrl: this.$store.getters.imgBaseUrl,
|
||||
setTime: this.$store.getters.setTime / 1000,
|
||||
inputType: 'password',
|
||||
eyeOpen: true,
|
||||
drift: 0,
|
||||
@@ -77,34 +91,10 @@
|
||||
androidUrl: ''
|
||||
};
|
||||
},
|
||||
computed: {
|
||||
showBtn1 () {
|
||||
return this.baseUrl !== ''
|
||||
},
|
||||
showBtn2 () {
|
||||
return this.imgBaseUrl !== ''
|
||||
},
|
||||
showBtn3 () {
|
||||
return this.loginname !== ''
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
_tabChange (num) {
|
||||
this.drift = num
|
||||
},
|
||||
clearData (t) {
|
||||
switch (t) {
|
||||
case 1:
|
||||
this.baseUrl = ''
|
||||
break
|
||||
case 2:
|
||||
this.imgBaseUrl = ''
|
||||
break
|
||||
case 3:
|
||||
this.loginname = ''
|
||||
break
|
||||
}
|
||||
},
|
||||
passwordShow () {
|
||||
this.eyeOpen = !this.eyeOpen
|
||||
if (this.eyeOpen) {
|
||||
@@ -116,12 +106,15 @@
|
||||
toConfig () {
|
||||
let obj = {
|
||||
baseUrl: this.baseUrl,
|
||||
imgBaseUrl: this.imgBaseUrl
|
||||
setTime: this.setTime * 1000
|
||||
}
|
||||
this.$store.dispatch('setConfig', obj)
|
||||
this._tabChange(0)
|
||||
},
|
||||
async toLogin() {
|
||||
uni.redirectTo({
|
||||
url: '/pages/home/home'
|
||||
})
|
||||
this.disabled = true
|
||||
if (this.loginname === '') {
|
||||
uni.showToast({
|
||||
@@ -175,34 +168,39 @@
|
||||
|
||||
<style lang="stylus" scoped>
|
||||
@import '../../common/style/mixin.styl';
|
||||
.login_bg
|
||||
.login-bg
|
||||
_wh(100%, 100%)
|
||||
_bis(#fff,'../../static/images/bg_01.png', 100%,,bottom)
|
||||
_bis(#fff,'../../static/images/login_bg.jpg', 100%, 100%,bottom)
|
||||
.logo-wraper
|
||||
_wh(90%, auto)
|
||||
margin 0 auto
|
||||
text-align center
|
||||
_bis(,'../../static/images/login_bg.png', 100%, 100%,bottom)
|
||||
img
|
||||
_wh(30%, auto)
|
||||
.login_wrap
|
||||
position fixed
|
||||
left 50%
|
||||
top 50%
|
||||
width 44%
|
||||
width 50%
|
||||
padding 5% 6%
|
||||
transform translate3d(-50%, -50%, 0)
|
||||
border-radius 5px
|
||||
_bis(,'../../static/images/form_bg.png', 100%, 100%,bottom)
|
||||
.login_w
|
||||
_wh(100%, 100%)
|
||||
overflow hidden
|
||||
.login_tab
|
||||
position relative
|
||||
height 35px
|
||||
border-bottom 1px solid #E2E2E2
|
||||
height 100rpx
|
||||
padding 0 10rpx 50rpx 10%
|
||||
margin-bottom 15px
|
||||
_bis(,'../../static/images/login_tabs_bg.png', 100%, 100%,bottom)
|
||||
.login_tab_item
|
||||
float left
|
||||
width 50%
|
||||
_font(16px,35px,#444444,,center)
|
||||
cursor pointer
|
||||
.login_tab_line
|
||||
position absolute
|
||||
width 50%
|
||||
height 2px
|
||||
background-color #D7592F
|
||||
left 0
|
||||
bottom -1px
|
||||
_font(50rpx,66rpx,#99B1DD,,center)
|
||||
font-family: YouSheBiaoTiHei;
|
||||
padding 0 50rpx 0 10rpx
|
||||
.login_tab_active
|
||||
color #fff
|
||||
_bis(,'../../static/images/login_tab_active.png', 100%, 100%,bottom)
|
||||
.login_cnt
|
||||
position relative
|
||||
width 200%
|
||||
@@ -212,39 +210,40 @@
|
||||
float left
|
||||
.card_wrap
|
||||
overflow hidden
|
||||
.inputOuter
|
||||
position relative
|
||||
width 100%
|
||||
margin 15px auto
|
||||
.login_label
|
||||
_font(36rpx, 90rpx, #AFBED8,,)
|
||||
.inputStyle
|
||||
_wh(100%,35px)
|
||||
_font(16px,35px,#999,,)
|
||||
text-indent 10px
|
||||
border-bottom 1px solid #E2E2E2
|
||||
box-sizing border-box
|
||||
_font(36rpx, 90rpx, #fff,,)
|
||||
_wh(100%, 90rpx)
|
||||
background: rgba(45,88,184,0.1);
|
||||
border: 2rpx solid #4980BD;
|
||||
padding 0 22rpx
|
||||
.inputStyle[focus]
|
||||
background: rgba(45,88,184,0.25);
|
||||
border: 2rpx solid #21D0F2;
|
||||
line-height 90rpx
|
||||
.login_icon
|
||||
position absolute
|
||||
top 0
|
||||
right 10px
|
||||
.submit
|
||||
width 100%
|
||||
margin 15px auto
|
||||
text-align center
|
||||
.primary-button
|
||||
_wh(100%, 35px)
|
||||
background-color #d7592f
|
||||
border-radius 35px
|
||||
_font(16px,35px,#fff,,center)
|
||||
.scanBox
|
||||
_fj()
|
||||
flex-direction column
|
||||
_wh(auto, 100rpx)
|
||||
padding 0 100rpx
|
||||
_font(50rpx,100rpx,#fff,,center)
|
||||
_bis(,'../../static/images/button.png', 100%, 100%,bottom)
|
||||
.san_text
|
||||
_font(16px,24px,#D7592F,,center)
|
||||
_font(36rpx,36px,#fff,,center)
|
||||
.drift
|
||||
transition left .3s linear
|
||||
.version-name
|
||||
width 100%
|
||||
position: absolute
|
||||
bottom: 15px
|
||||
_font(15px, 30px, #999,,center)
|
||||
bottom 3%
|
||||
_font(30rpx, 60rpx, #fff,,center)
|
||||
.daoying_bg
|
||||
position: absolute
|
||||
bottom -30%
|
||||
left 0
|
||||
_wh(100%, 30%)
|
||||
_bis(,'../../static/images/daoy.png', 100%, 100%,bottom)
|
||||
</style>
|
||||
|
||||
BIN
static/font/SourceHanSansCN-Bold.otf
Normal file
BIN
static/font/SourceHanSansCN-Medium.otf
Normal file
BIN
static/font/SourceHanSansCN-Regular.otf
Normal file
BIN
static/font/YouSheBiaoTiHei.ttf
Normal file
|
Before Width: | Height: | Size: 297 KiB |
BIN
static/images/button.png
Executable file
|
After Width: | Height: | Size: 31 KiB |
BIN
static/images/daoy.png
Executable file
|
After Width: | Height: | Size: 59 KiB |
BIN
static/images/form_bg.png
Executable file
|
After Width: | Height: | Size: 270 KiB |
BIN
static/images/header_bg.png
Normal file
|
After Width: | Height: | Size: 126 KiB |
BIN
static/images/home_bg.jpg
Executable file
|
After Width: | Height: | Size: 1.2 MiB |
BIN
static/images/login_bg.jpg
Normal file
|
After Width: | Height: | Size: 56 KiB |
BIN
static/images/login_bg.png
Executable file
|
After Width: | Height: | Size: 169 KiB |
BIN
static/images/login_tab_active.png
Executable file
|
After Width: | Height: | Size: 20 KiB |
BIN
static/images/login_tabs_bg.png
Executable file
|
After Width: | Height: | Size: 27 KiB |
BIN
static/images/logo.png
Executable file
|
After Width: | Height: | Size: 46 KiB |
BIN
static/images/page_bg.jpg
Normal file
|
After Width: | Height: | Size: 49 KiB |
@@ -26,29 +26,15 @@ export const authority = () => {
|
||||
let res = {
|
||||
sonTree: [
|
||||
{menu_id: '1', path: 'RF01', name: '入库', router: '/pages/management/in-storage', sonTree: []},
|
||||
{menu_id: '1', path: 'RF02', name: '出库', router: '/pages/management/out-storage', sonTree: []},
|
||||
{menu_id: '3', path: 'RF03', name: '出入库管理', sonTree: [
|
||||
{menu_id: '1', name: '半成品入库', path: '/pages/management/HalfFinishedInStore'},
|
||||
{menu_id: '2', name: '成品入库', path: '/pages/management/FinishedInStore'},
|
||||
{menu_id: '3', name: '发货确认', path: '/pages/management/DeliveryConfirm'},
|
||||
{menu_id: '4', name: '半成品入库', path: '/pages/management/SemifinishedInStore'},
|
||||
{menu_id: '5', name: '半成品出库', path: '/pages/management/SemifinishedOutStore'},
|
||||
{menu_id: '6', name: '半成品盘点', path: '/pages/management/semifinishedcheck'},
|
||||
{menu_id: '7', name: '半成品拼盘', path: '/pages/management/semifinishedcompose'}
|
||||
]
|
||||
}
|
||||
{menu_id: '1', path: 'RF02', name: '出库', router: '/pages/management/out-storage', sonTree: []}
|
||||
]
|
||||
}
|
||||
return res
|
||||
}
|
||||
|
||||
/** 扫码异常 */
|
||||
// 1.1缓存线下拉框
|
||||
export const getCacheLine = (area) => request({
|
||||
url:'api/cacheLineHand/getCacheLine',
|
||||
data: {
|
||||
product_area: area
|
||||
}
|
||||
// 首页显示出入库单据数量
|
||||
export const getBillsCount = (area) => request({
|
||||
url:'api/easOutInBill/getBillsCount',
|
||||
data: {}
|
||||
})
|
||||
// 1.2指令查询
|
||||
export const inOutExceptionInstQuery = (wcode) => request({
|
||||
|
||||
@@ -1,11 +1,11 @@
|
||||
import * as types from '../types'
|
||||
|
||||
const baseUrl = process.env.NODE_ENV === 'development' ? 'http://43.139.166.161:8011' : 'http://192.168.81.252:8010'
|
||||
const baseUrl = process.env.NODE_ENV === 'development' ? 'http://47.111.78.178:27017/mock/55' : 'http://192.168.81.252:8010'
|
||||
const imgBaseUrl = process.env.NODE_ENV === 'development' ? 'http://192.168.81.252:8010' : 'http://192.168.81.252:8010'
|
||||
const state = {
|
||||
baseUrl: uni.getStorageSync('baseUrl') || baseUrl,
|
||||
imgBaseUrl: uni.getStorageSync('imgBaseUrl') || imgBaseUrl,
|
||||
setTime: uni.getStorageSync('setTime') || 5000,
|
||||
setTime: uni.getStorageSync('setTime') || 10000,
|
||||
loginName: uni.getStorageSync('loginName') ? uni.getStorageSync('loginName') : '',
|
||||
userInfo: uni.getStorageSync('userInfo') ? uni.getStorageSync('userInfo') : '',
|
||||
saveToken: uni.getStorageSync('saveToken') || ''
|
||||
@@ -21,8 +21,7 @@ const getters = {
|
||||
const actions = {
|
||||
setConfig ({commit}, res) {
|
||||
uni.setStorageSync('baseUrl', res.baseUrl)
|
||||
uni.setStorageSync('imgBaseUrl', res.imgBaseUrl)
|
||||
// uni.setStorageSync('setTime', res.setTime)
|
||||
uni.setStorageSync('setTime', res.setTime)
|
||||
commit(types.COM_CONFIG, res)
|
||||
},
|
||||
saveLoginName({commit}, res) {
|
||||
@@ -49,8 +48,7 @@ const actions = {
|
||||
const mutations = {
|
||||
[types.COM_CONFIG] (state, res) {
|
||||
state.baseUrl = res.baseUrl
|
||||
state.imgBaseUrl = res.imgBaseUrl
|
||||
// state.setTime = res.setTime
|
||||
state.setTime = res.setTime
|
||||
},
|
||||
[types.SAVE_LOGIN_NAME] (state, res) {
|
||||
state.loginName = res
|
||||
|
||||