调登录和钉钉接口

dev
e 3 years ago
parent 088e10c894
commit 13ef2f51b9
  1. 6
      package-lock.json
  2. 2
      package.json
  3. 13
      src/main.js
  4. 7
      src/router/index.js
  5. 104
      src/utils/api.js
  6. 11
      src/utils/http.js
  7. 0
      src/utils/preventReClick.js
  8. 88
      src/views/Login.vue
  9. 29
      src/views/oder/Order.vue

6
package-lock.json generated

@ -12680,9 +12680,9 @@
"integrity": "sha1-Olh/1oAuFohwnPLFqtrnoAdZUr8="
},
"vue-router": {
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.1.3.tgz",
"integrity": "sha512-8iSa4mGNXBjyuSZFCCO4fiKfvzqk+mhL0lnKuGcQtO1eoj8nq3CmbEG8FwK5QqoqwDgsjsf1GDuisDX4cdb/aQ=="
"version": "3.5.2",
"resolved": "https://registry.nlark.com/vue-router/download/vue-router-3.5.2.tgz",
"integrity": "sha1-X1Xj8lGXDjbD6NiKfNLWejUK3lw="
},
"vue-schart": {
"version": "2.0.0",

@ -18,7 +18,7 @@
"vue": "^2.6.10",
"vue-cropperjs": "^3.0.0",
"vue-quill-editor": "^3.0.6",
"vue-router": "^3.0.3",
"vue-router": "^3.5.1",
"vue-schart": "^2.0.0",
"vuedraggable": "^2.17.0",
"vuex": "^3.1.2",

@ -14,7 +14,7 @@ import store from './store'
import config from '@/config'
import { systemStatus, systemTypeStatus, systemAttributionStatus, courseTypeStatus,
hoursStatus, roleStatus, orderTypeFn, orderStatusFn, orderNatureFn, Percentage, removeByValue, isIE, encodeString, formatDate } from './utils/core';
import preventReClick from './store/preventReClick' //防多次点击,重复提交
import preventReClick from './utils/preventReClick' //防多次点击,重复提交
Vue.prototype.api = api;
@ -42,16 +42,7 @@ Vue.prototype.formatDate = formatDate;
Vue.config.productionTip = false;
Vue.use(ElementUI);
//使用钩子函数对路由进行权限跳转
router.beforeEach((to, from, next) => {
document.title = `${to.meta.title} | ${config.title}`;
const role = localStorage.getItem('ms_username');
if (!role && to.path !== '/login') {
next('/login');
} else {
next();
}
});
new Vue({
router,

@ -113,7 +113,12 @@ let router = new Router({
router.beforeEach(function(to,from,next){
// 根据路由元信息设置文档标题
window.document.title = to.meta.title || '中台'
next()
//使用钩子函数对路由进行权限跳转
if (!sessionStorage.getItem('token') && to.path !== '/login') {
next('/login');
} else {
next();
}
})
export default router

@ -1,11 +1,24 @@
let host = 'http://39.108.250.202'
let host1 = 'http://192.168.31.151:9000'
let host2 = 'http://192.168.31.125:9000'
let host3 = 'http://192.168.31.140:9000'
// let host = 'http://39.108.250.202'
// let host = 'http://192.168.31.151:9000'
// let host = 'http://192.168.31.125:9000'
// let host = 'http://192.168.31.140:9000'
let host = 'http://192.168.31.137:9000'// 陈赓
export default {
logins: `${host}/liuwanr/userInfo/adminLogins`, //登录
logins: `${host}/users/user/login`, //登录
verification:`${host}/users/user/captcha`,// 验证码
// 订单管理
orderAdd:`${host}/nakadai/order/add`,// 订单添加
orderDelete:`${host}/nakadai/order/delete`,// 删除定单
orderDetail:`${host}/nakadai/order/get`,// 订单详情
orderList:`${host}/nakadai/order/list`,// 订单列表
orderUpdate:`${host}/nakadai/order/update`,// 订单更新
addUser: `${host}/liuwanr/userInfo/addUser`, //增加用户新版
queryUser: `${host}/liuwanr/userInfo/queryUserInfo`, //查询用户新版
deleteUser: `${host}/liuwanr/userInfo/deleteUserInfo`, //删除用户新版
@ -27,35 +40,35 @@ export default {
updateUserRoleId: `${host}/liuwanr/userInfo/updateUserRoleId`, //更新用户角色id接口
// 客户管理
deleteCustomer: `${host3}/nakadai/customer/delCustomer`,
updateCustomer: `${host3}/nakadai/customer/updateCustomer`,
addCustomer: `${host3}/nakadai/customer/addCustomer`,
queryCustomer: `${host3}/nakadai/customer/queryCustomer`,
queryCustomerDetails: `${host3}/nakadai/customer/queryCustomerDetails`,
resetPwdCustomer: `${host3}/nakadai/customer/resetPwd`,
queryCustomerIsExists: `${host3}/nakadai/customer/queryCustomerIsExists`,
updateEnabled: `${host3}/nakadai/customer/updateEnabled`,
deleteCustomer: `${host}/nakadai/customer/delCustomer`,
updateCustomer: `${host}/nakadai/customer/updateCustomer`,
addCustomer: `${host}/nakadai/customer/addCustomer`,
queryCustomer: `${host}/nakadai/customer/queryCustomer`,
queryCustomerDetails: `${host}/nakadai/customer/queryCustomerDetails`,
resetPwdCustomer: `${host}/nakadai/customer/resetPwd`,
queryCustomerIsExists: `${host}/nakadai/customer/queryCustomerIsExists`,
updateEnabled: `${host}/nakadai/customer/updateEnabled`,
queryCustomerIndustryClass: `${host}/liuwanr/customer/queryCustomerIndustryClass`,
queryCustomerIndustry: `${host}/liuwanr/customer/queryCustomerIndustry`,
queryPhone: `${host}/liuwanr/user/queryPhone`,
querySchoolData: `${host3}/nakadai/school/querySchool`,
querySchoolData: `${host}/nakadai/school/querySchool`,
queryPlatform: `${host}/liuwanr/userInfo/queryPlatform`,
// 用户管理
delUserAccount: `${host3}/users/userAccount/delUserAccount`,
queryUserInfoDetails: `${host3}/users/userAccount/queryUserInfoDetails`,
queryUserInfoList: `${host3}/users/userAccount/queryUserInfoList`,
resetPwd: `${host3}/users/userAccount/resetPwd`,
selectAccountDetail: `${host3}/users/userAccount/selectAccountDetail`,
selectUserSysBind: `${host3}/users/userAccount/selectUserSysBind`,
updatePersonCenter: `${host3}/users/userAccount/updatePersonCenter`,
updateUserAvatars: `${host3}/users/userAccount/updateUserAvatars`,
userInfo: `${host3}/users/userAccount/userInfo`,
checkCode: `${host3}/users/userAccount/checkCode`,
findPasswordByEmail: `${host3}/users/userAccount/findPasswordByEmail`,
findPasswordByPhone: `${host3}/users/userAccount/findPasswordByPhone`,
updateAccountEnable: `${host3}/users/userAccount/updateAccountEnable`,
updateAccountAllEnable: `${host3}/users/userAccount/updateAccountAllEnable`,
delUserAccount: `${host}/users/userAccount/delUserAccount`,
queryUserInfoDetails: `${host}/users/userAccount/queryUserInfoDetails`,
queryUserInfoList: `${host}/users/userAccount/queryUserInfoList`,
resetPwd: `${host}/users/userAccount/resetPwd`,
selectAccountDetail: `${host}/users/userAccount/selectAccountDetail`,
selectUserSysBind: `${host}/users/userAccount/selectUserSysBind`,
updatePersonCenter: `${host}/users/userAccount/updatePersonCenter`,
updateUserAvatars: `${host}/users/userAccount/updateUserAvatars`,
userInfo: `${host}/users/userAccount/userInfo`,
checkCode: `${host}/users/userAccount/checkCode`,
findPasswordByEmail: `${host}/users/userAccount/findPasswordByEmail`,
findPasswordByPhone: `${host}/users/userAccount/findPasswordByPhone`,
updateAccountEnable: `${host}/users/userAccount/updateAccountEnable`,
updateAccountAllEnable: `${host}/users/userAccount/updateAccountAllEnable`,
queryOrder: `${host}/liuwanr/order/queryOrder`, //查询订单
queryOrderDetails: `${host}/liuwanr/order/queryOrderDetails`, //查询订单详情
@ -90,6 +103,7 @@ export default {
querySchoolDetails: `${host}/liuwanr/school/querySchoolDetails`, //查询学校详情
queryProvince: `${host}/liuwanr/province/queryProvince`, //查询省份
queryCity: `${host}/liuwanr/city/queryCity`, //查询城市
queryCourseDiscipline: `${host}/liuwanr/course/queryCourseDiscipline`, //查询课程学科
@ -109,23 +123,23 @@ export default {
downloadFiles: `${host}/liuwanr/aliyun/downloadFiles`, //下载文件
// 数据管理
getIdQueryTable:`${host1}/data/table/getIdQueryTable`,
getTableByClassification:`${host1}/data/table/getTableByClassification`,
getTableByCondition:`${host1}/data/table/getTableByCondition`,
originalList:`${host1}/data/table/originalList`,
originalListById:`${host1}/data/table/originalListById`,
saveCategory:`${host1}/data/table/saveCategory`,
saveTable:`${host1}/data/table/saveTable`,
updateCategory:`${host1}/data/table/updateCategory`,
deleteCategory:`${host1}/data/table/deleteCategory`,
deleteTable:`${host1}/data/table/deleteTable`,
previewData:`${host2}/data/preview`,
getIdQueryTable:`${host}/data/table/getIdQueryTable`,
getTableByClassification:`${host}/data/table/getTableByClassification`,
getTableByCondition:`${host}/data/table/getTableByCondition`,
originalList:`${host}/data/table/originalList`,
originalListById:`${host}/data/table/originalListById`,
saveCategory:`${host}/data/table/saveCategory`,
saveTable:`${host}/data/table/saveTable`,
updateCategory:`${host}/data/table/updateCategory`,
deleteCategory:`${host}/data/table/deleteCategory`,
deleteTable:`${host}/data/table/deleteTable`,
previewData:`${host}/data/preview`,
// 产品管理
deleteProduct:`${host1}/data/product/delete`,
findById:`${host1}/data/product/findById`,
listByEntity:`${host1}/data/product/listByEntity`,
saveProduct:`${host1}/data/product/save`,
updateProduct:`${host1}/data/product/update`,
saveRecord:`${host1}/data/dataRecord/saveRecord`,
deleteProduct:`${host}/data/product/delete`,
findById:`${host}/data/product/findById`,
listByEntity:`${host}/data/product/listByEntity`,
saveProduct:`${host}/data/product/save`,
updateProduct:`${host}/data/product/update`,
saveRecord:`${host}/data/dataRecord/saveRecord`,
}

@ -21,7 +21,7 @@ axios.defaults.headers.post['Content-Type'] = 'application/json;charset=UTF-8';
// 请求拦截器
axios.interceptors.request.use(config => {
let token = store.state.loginToken
let token = sessionStorage.getItem('token')
if(token){
config.headers.token = token
}
@ -102,7 +102,8 @@ axios.interceptors.request.use(config => {
function logouts(){
store.replaceState({})
localStorage.removeItem('ms_username')
localStorage.clear()
sessionStorage.clear()
location.reload()
}
@ -276,9 +277,9 @@ export function post(url, params) {
this.$message.error(
res.data.errmessage
);
router.replace({
path: '/404',
});
// router.replace({
// path: '/404',
// });
break;
case 403:
this.$message.error(

@ -10,19 +10,30 @@
<div class="ms-title">
<p class="title">账号登录</p>
<el-form :model="param" :rules="rules" ref="login" label-width="0px" style="margin-top: 40px">
<el-form-item prop="username">
<el-input v-model="param.username" placeholder="username"></el-input>
<el-form-item prop="account">
<el-input @blur="blur" v-model="param.account" placeholder="请输入账号"></el-input>
</el-form-item>
<el-form-item prop="password">
<el-input
type="password"
placeholder="password"
placeholder="请输入密码"
v-model="param.password"
>
</el-input>
</el-form-item>
<el-form-item prop="code">
<el-input
placeholder="请输入验证码"
v-model="param.code"
@keyup.enter.native="submitForm()"
>
</el-input>
<img style="cursor: pointer;" @click="blur" :src="verificationIMG" class="verification" alt="">
</el-form-item>
<el-button type="text" class="forget">忘记密码?</el-button>
<div style="width:100%;display:flex;justify-content: flex-end;">
<el-button type="text" class="forget">忘记密码?</el-button>
</div>
<div class="login-btn">
<el-button type="primary" @click="submitForm()">马上登录</el-button>
</div>
@ -39,54 +50,67 @@ export default {
data: function() {
return {
param: {
username: '13444444444',
account: '0621Stu',
password: '111aaa',
code:'',
platform:3,
random:''
},
rules: {
username: [{ required: true, message: '请输入用户名', trigger: 'blur' }],
account: [{ required: true, message: '请输入用户名', trigger: 'blur' }],
password: [{ required: true, message: '请输入密码', trigger: 'blur' }],
code: [{ required: true, message: '请输入验证码', trigger: 'blur' }],
},
activeName: 'first'
activeName: 'first',
verificationIMG:''
};
},
components: {
vFooter
},
created(){
this.blur()
},
methods: {
submitForm() {
this.$refs.login.validate(valid => {
if (valid) {
let data = {
account: this.param.username,
password: this.param.password,
source: 0
}
this.$post(this.api.logins,data).then(res => {
if(res.message.retvalue.roleId == 1){
let user = res.message.retvalue
this.$message.success('登录成功');
localStorage.setItem('ms_username', this.param.username);
this.$store.commit("userLoginData", { userLogin_id : user.userId,userName: user.userName,roleId: user.roleId});
this.$store.commit("tokenData", {loginToken: res.message.retvalue.loginToken})
this.$router.push('/customer');
}else{
this.$message.error('该用户没有权限');
}
}).catch(res => {});
this.$post(this.api.logins,this.param).then(res => {
this.$message.success(res.message);
sessionStorage.setItem('token',res.data.token)
this.$router.push({
path:'/customer'
});
localStorage.setItem('ms_username', this.param.username);
//
// let user = res.message.retvalue
// this.$store.commit("userLoginData", { userLogin_id : user.userId,userName: user.userName,roleId: user.roleId});
}).catch(res => {
this.$message.error(res.message)
});
} else {
this.$message.error('请输入账号和密码');
this.$message.error('请输入账号/密码/验证码');
return false;
}
});
},
handleClick(tab, event) {
console.log(tab, event);
},
blur(){
if(!this.param.account){
return this.verificationIMG = ''
}
this.param.random = Math.floor(Math.random()*999999999)
this.verificationIMG = this.api.verification+'?random='+`${this.param.random}`
}
},
};
</script>
<style scoped>
<style scoped lang="scss">
.login-wrap {
position: relative;
width: 100%;
@ -133,11 +157,13 @@ export default {
font-weight:bold;
}
.forget{
width: 100%;
margin-bottom: 28px;
text-align: right;
color: #999;
font-weight:bold;
&:hover{
color: #0092FF;
}
}
.thirdParty{
width: 100%;
@ -180,5 +206,11 @@ img{
width:80px;
margin-right: 30px;
}
.verification{
position: absolute;
top: 1px;
right: 1px;
width: 160px;
height: 78px;
}
</style>

@ -69,11 +69,11 @@
</el-table-column>
<el-table-column prop="customerName" label="客户名称" align="center">
</el-table-column>
<!-- <el-table-column prop="orderName" label="产品内容" align="center">
</el-table-column> -->
<el-table-column prop="orderName" label="产品内容" align="center">
</el-table-column>
<el-table-column prop="orderAmount" label="订单金额" align="center">
</el-table-column>
<el-table-column prop="orderDate" label="订单日期" align="center">
<el-table-column prop="createTime" label="订单日期" align="center">
</el-table-column>
<el-table-column prop="orderType" label="订单类型" align="center">
</el-table-column>
@ -84,9 +84,9 @@
<el-table-column label="操作" align="center">
<template slot-scope="scope">
<el-button type="text" @click="edit(scope.row)">编辑</el-button>
<el-button type="text" @click="handle('watch',scope.row)">查看</el-button>
<el-button type="text" @click="handleDelete(scope.row)">删除</el-button>
<!-- 接口无 -->
<el-button v-if="false" type="text" @click="handleRenew(scope.row)">续费</el-button>
<el-button type="text" @click="handleRenew(scope.row)">续费</el-button>
</template>
</el-table-column>
</el-table>
@ -140,28 +140,29 @@ export default {
totals: 1
};
},
mounted() {
created() {
this.getData()
},
methods: {
getData() {
let data = {
provinceId: this.form.provinces,
cityId: this.form.city,
orderType: this.form.orderType,
customerName:this.keyword,
orderStatus: this.form.orderStatus,
searchContent: this.keyword,
orderType: this.form.orderType,
pageNo: this.pageNo,
pageSize: this.pageSize
pageSize: this.pageSize,
provinceId: this.form.provinces,
}
this.$get(this.api.queryOrder,data).then(res => {
res.message.rows.forEach(e => {
this.$post(this.api.orderList,data).then(res => {
console.log(res,'list');
res.orderPage.records.forEach(e => {
e.orderType = this.orderTypeFn(e.orderType)
e.orderStatus = this.orderStatusFn(e.orderStatus)
e.orderNature = this.orderNatureFn(e.orderNature)
})
this.orderData = res.message.rows
this.totals = res.message.total
this.orderData = res.orderPage.records
this.totals =res.orderPage.total
}).catch(res => {});
},
//

Loading…
Cancel
Save