Compare commits

..

14 Commits

Author SHA1 Message Date
f425dd6f8e 修改本地服务器地址 2024-02-05 16:42:00 +08:00
ce511cf72e 新的修改 2024-02-05 16:16:47 +08:00
48174a4e92 使用本地后端 2024-02-05 16:06:36 +08:00
wulin
9663037e24 增加手机端登录判断token功能 2021-03-22 14:40:31 +08:00
wulin
b350cd86d7 修复线上异常 2021-03-22 14:03:05 +08:00
wulin
8961f8894c 增加手机登录界面,方便不在钉钉群里人员使用资产管理系统 2021-03-22 11:36:27 +08:00
quyixiao
7f38fec897 提交修改 2021-01-05 17:32:13 +08:00
wulin
4830c1c3b2 提交修改翻页问题 2020-12-28 16:16:48 +08:00
wulin
e23af9ef81 修改信息异常信息的提示 2020-12-09 13:43:59 +08:00
wulin
55101ced96 测试本窗口打开 2020-11-27 15:29:21 +08:00
wulin
e13ee305d8 测试不跳转 2020-11-27 15:14:50 +08:00
wulin
5409a15d8a 测试修改 2020-11-27 15:09:26 +08:00
wulin
08dd8b8ae0 修复搜索= 2020-11-13 16:20:15 +08:00
wulin
4d7bbf9ca4 注释掉console 2020-11-06 14:37:38 +08:00
21 changed files with 251 additions and 112 deletions

View File

@ -1,19 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="masterDetails">
<states>
<state key="ProjectJDKs.UI">
<settings>
<last-edited>1.8</last-edited>
<splitter-proportions>
<option name="proportions">
<list>
<option value="0.2" />
</list>
</option>
</splitter-proportions>
</settings>
</state>
</states>
</component>
</project>

2
.idea/.gitignore generated vendored
View File

@ -1,2 +0,0 @@
# Default ignored files
/workspace.xml

View File

@ -1,25 +0,0 @@
<component name="ProjectCodeStyleConfiguration">
<code_scheme name="Project" version="173">
<JSCodeStyleSettings version="0">
<option name="USE_SEMICOLON_AFTER_STATEMENT" value="false" />
<option name="FORCE_SEMICOLON_STYLE" value="true" />
<option name="SPACE_BEFORE_GENERATOR_MULT" value="true" />
<option name="USE_DOUBLE_QUOTES" value="false" />
<option name="FORCE_QUOTE_STYlE" value="true" />
</JSCodeStyleSettings>
<codeStyleSettings language="JavaScript">
<option name="KEEP_BLANK_LINES_IN_CODE" value="1" />
<option name="ALIGN_MULTILINE_PARAMETERS" value="false" />
<option name="ALIGN_MULTILINE_FOR" value="false" />
<option name="SPACE_BEFORE_METHOD_PARENTHESES" value="true" />
<option name="IF_BRACE_FORCE" value="1" />
<option name="DOWHILE_BRACE_FORCE" value="1" />
<option name="WHILE_BRACE_FORCE" value="1" />
<option name="FOR_BRACE_FORCE" value="1" />
<indentOptions>
<option name="INDENT_SIZE" value="2" />
<option name="CONTINUATION_INDENT_SIZE" value="2" />
</indentOptions>
</codeStyleSettings>
</code_scheme>
</component>

View File

@ -1,5 +0,0 @@
<component name="ProjectCodeStyleConfiguration">
<state>
<option name="USE_PER_PROJECT_SETTINGS" value="true" />
</state>
</component>

8
.idea/compiler.xml generated
View File

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="CompilerConfiguration">
<annotationProcessing>
<profile default="true" name="Default" enabled="true" />
</annotationProcessing>
</component>
</project>

View File

@ -1,6 +0,0 @@
<component name="InspectionProjectProfileManager">
<profile version="1.0">
<option name="myName" value="Project Default" />
<inspection_tool class="Eslint" enabled="true" level="WARNING" enabled_by_default="true" />
</profile>
</component>

View File

@ -1,9 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<module type="JAVA_MODULE" version="4">
<component name="NewModuleRootManager" inherit-compiler-output="true">
<exclude-output />
<content url="file://$MODULE_DIR$" />
<orderEntry type="inheritedJdk" />
<orderEntry type="sourceFolder" forTests="false" />
</component>
</module>

6
.idea/misc.xml generated
View File

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="JavaScriptSettings">
<option name="languageLevel" value="ES6" />
</component>
</project>

8
.idea/modules.xml generated
View File

@ -1,8 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="ProjectModuleManager">
<modules>
<module fileurl="file://$PROJECT_DIR$/.idea/lz_management_vue.iml" filepath="$PROJECT_DIR$/.idea/lz_management_vue.iml" />
</modules>
</component>
</project>

6
.idea/vcs.xml generated
View File

@ -1,6 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$" vcs="Git" />
</component>
</project>

View File

@ -4,7 +4,7 @@
| version | time | author | desc |
| ------- | ---- | ------ | ---- |
| V_1.0.0 | 2020-05-22 | xiongchengqiang | 系统配置(菜单管理、角色权限管理、账户管理);组织管理(员工管理);企业数字看板(员工概况、员工档案) |
| V_1.0.0 | 2020-05-22 | wulin | 系统配置(菜单管理、角色权限管理、账户管理);组织管理(员工管理);企业数字看板(员工概况、员工档案) |
## renren-fast-vue

View File

@ -14,7 +14,7 @@ module.exports = {
proxyTable: {
'/wl_management': {
// target: 'https://tlzmanagement.ldxinyong.com',
target: 'http://192.168.8.138:8080/',
target: 'http://192.168.8.107:8080/',
changeOrigin: true
}
},

45
echarts.min.js vendored Normal file

File diff suppressed because one or more lines are too long

View File

@ -6,7 +6,7 @@
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>企业数字化管理系统</title>
<script src="https://f.ldxinyong.com/h5/echarts.min.js"></script>
<script src="echarts.min.js"></script>
</head>
<body>

View File

@ -9,9 +9,8 @@ import Router from 'vue-router'
import { apiGetMenuNav } from '@/api/api_menu'
import { isURL } from '@/utils/validate'
import {clearLoginInfo} from '@/utils'
import VConsole from 'vconsole'
let vConsole = new VConsole()
//import VConsole from 'vconsole'
//let vConsole = new VConsole()
Vue.use(Router)
// 开发环境不使用懒加载, 因为懒加载页面太多的话会造成webpack热更新太慢, 所以只有生产环境使用懒加载
@ -23,10 +22,11 @@ const globalRoutes = [
{ path: '/lzluck', component: _import('common/lzluck'), name: 'lzluck', meta: { title: '霖梓抽奖' } },
{ path: '/dingtalkluck', component: _import('common/dingtalkluck'), name: 'dingtalkluck', meta: { title: '钉钉抽奖登记' } },
{ path: '/404', component: _import('common/404'), name: '404', meta: { title: '404未找到' } },
{ path: '/login', component: _import('common/login'), name: 'login', meta: { title: '登录' } }
{ path: '/login', component: _import('common/login'), name: 'login', meta: { title: '登录' } },
{ path: '/phoneweblogin', component: _import('common/phoneweblogin'), name: 'phoneweblogin', meta: { title: '登录' } }
]
const dingtalkRoutes=[
const dingtalkRoutes = [
{ path: '/devicemain', component: _import('modules/device/device-main'), name: 'devicemain', meta: { title: '资产盘点主入口' } },
{ path: '/devicetype', component: _import('modules/device/device-type'), name: 'devicetype', meta: { title: '设备类型' } },
{ path: '/deviceqr', component: _import('modules/device/device-qr'), name: 'deviceqr', meta: { title: '设备自带编码' } },
@ -135,7 +135,7 @@ router.beforeEach((to, from, next) => {
//next()
} else {
apiGetMenuNav({}).then(res => {
if (res && res.code == 200) {
if (res && res.code === 200) {
fnAddDynamicMenuRoutes(res.menuList)
router.options.isAddDynamicMenuRoutes = true
sessionStorage.setItem('menuList', JSON.stringify(res.menuList || '[]'))

View File

@ -127,7 +127,8 @@ export default {
console.log('获取token')
this.$cookie.set('token', res.token)
this.dataForm.verify='登录成功,跳转中...'
window.open(window.location.href + '&code=' + dingCode.code, "_blank")
window.open(window.location.href + '&code=' + dingCode.code, "_self")
//window.location.href = window.location.href + '&code=' + dingCode.code
console.log('跳转')
} else {
this.dataForm.verify='身份验证失败' + res.msg

View File

@ -0,0 +1,182 @@
<template>
<div class="phone-login-main">
<h3 class="phone-login-title">用户登录</h3>
<el-form
:model="dataForm"
:rules="dataRule"
ref="dataForm"
@keyup.enter.native="handleLogin()"
status-icon
>
<el-form-item prop="userName">
<el-input clearable v-model="dataForm.userName" placeholder="帐号"></el-input>
</el-form-item>
<el-form-item prop="password">
<el-input clearable v-model="dataForm.password" type="password" placeholder="密码"></el-input>
</el-form-item>
<el-form-item prop="captcha">
<el-row :gutter="20">
<el-col :span="14">
<el-input v-model="dataForm.verify" placeholder="验证码">
</el-input>
</el-col>
<el-col :span="10" class="login-captcha">
<el-button v-if="!hasSendCode" type="primary" @click="handleVerify">获取验证码</el-button>
<el-button v-else type="primary">重新发送({{time}}S)</el-button>
</el-col>
</el-row>
</el-form-item>
<el-form-item>
<el-button
class="phone-login-btn-submit"
type="primary"
:loading="isloading"
@click="handleLogin"
>登录</el-button>
</el-form-item>
</el-form>
</div>
</template>
<script>
import { getUUID } from '@/utils'
import { apiLogin, apiSsysSendSMS } from '@/api/api_sys'
import { apiDingtalkLogin } from '@/api/api_staff'
import * as dd from 'dingtalk-jsapi'
import Vue from 'vue'
var dingCode = ''
export default {
data () {
return {
isloading: false,
dataForm: {
userName: '',
password: '',
uuid: '',
// captcha: ''
verify: ''
},
dataRule: {
userName: [{ required: true, message: '帐号不能为空', trigger: 'blur' }],
password: [{ required: true, message: '密码不能为空', trigger: 'blur' }],
// captcha: [{ required: true, message: '', trigger: 'blur' }]
verify: [{ required: true, message: '验证码不能为空', trigger: 'blur' }]
},
// captchaPath: '' //
time: 0,
timer: true,
hasSendCode: false
}
},
created () {
// this.handleGetImgCaptcha()
},
mounted () {
if (this.checkToken()) {
if (this.$route.query.do) {
this.$router.replace({ name: this.$route.query.do })
}
}
},
methods: {
// //
// handleGetImgCaptcha () {
// this.dataForm.uuid = getUUID()
// this.captchaPath = `/wl_management/captcha.jpg?uuid=${this.dataForm.uuid}`
// },
checkToken() {
console.log('检查token')
let token = Vue.cookie.get('token')
if (!token || !/\S/.test(token)) {
return false;
}
return true
},
//
handleLogin () {
let param = Object.assign(this.dataForm, {'userName': this.dataForm.userName}, {'uuid': this.dataForm.uuid}, {'verifyCode': this.dataForm.verify})
this.$refs.dataForm.validate((valid) => {
if (valid) {
this.isloading = true
apiLogin(param).then(res => {
this.isloading = false
if (res && res.code === 200) {
console.log('获取token')
this.$cookie.set('token', res.token)
console.log('保存token')
this.$router.replace({ name: this.$route.query.do })
console.log('跳转')
} else {
this.$message.error(res.msg)
}
})
} else {
return false
}
})
},
//
handleVerify () {
this.dataForm.uuid = getUUID()
if (!this.dataForm.userName) {
this.$message('请输入账号')
return false
}
// if (!this.dataForm.captcha) {
// this.$message('')
// return false
// }
let parmse = {
userName: this.dataForm.userName,
// captcha: this.dataForm.captcha,
password: this.dataForm.password,
uuid: this.dataForm.uuid
}
apiSsysSendSMS(parmse).then(res => {
if (res.code === 200) {
this.time = 60
this.hasSendCode = true
this.timer = setInterval(() => {
if (this.time === 0) {
this.hasSendCode = false
}
this.time--
}, 1000)
this.$message.success(res.msg)
} else {
// this.getCaptcha()
this.$message.error(res.msg)
}
})
}
}
}
</script>
<style lang="scss">
.phone-site-wrapper.phone-site-page--login {
position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-color: rgba(38, 50, 56, 0.6);
overflow: hidden;
.phone-login-main {
position: absolute;
top: 0;
right: 0;
padding: 150px 60px 180px;
width: 470px;
min-height: 100%;
background-color: #fff;
}
.phone-login-title {
font-size: 16px;
}
.phone-login-btn-submit {
width: 100px;
margin-top: 38px;
}
}
</style>

View File

@ -10,7 +10,7 @@
v-for="item in numbers"
:key="item.id"
:label="item.name"
:value="item.id">
:value="item.num">
</el-option>
</el-select>
</el-form-item>

View File

@ -343,7 +343,7 @@ export default {
});
},
currentChangeHandle(val) {
this.btnSearch()
this.btnSearch(val)
},
// /
handleAddOrUpdate(val) {
@ -460,8 +460,13 @@ export default {
this.getData()
},
btnSearch() {
btnSearch(val) {
if(!val){
this.specReq.page = 1
}else{
this.specReq.page = val
}
this.getData();
},

View File

@ -443,7 +443,7 @@ export default {
}
}
} else {
this.$message.error("异常" + data.msg);
this.$message.error(data.msg);
}
this.dataListLoading = false;

View File

@ -75,7 +75,7 @@ export default {
if(this.typeIndex == 0 || this.typeIndex == 3){
apiFindStaff(this.query).then(data => {
console.log(data)
if(data.code != 0){
if(data.code != 200){
this.$message.error("异常" + data.msg);
return
}
@ -90,7 +90,7 @@ export default {
}else {
apiFindDepat(this.query).then(data => {
console.log(data)
if(data.code != 0){
if(data.code != 200){
this.$message.error("异常" + data.msg);
return
}