中建四局登录页组件提取修复样式冲突

This commit is contained in:
骆乐 2022-09-13 11:33:22 +08:00
parent 522c8f4a60
commit 26f85cabfb
5 changed files with 607 additions and 434 deletions

BIN
dist.zip

Binary file not shown.

View File

@ -17,7 +17,7 @@ var PROJECT = {
} }
var PROJECT_TYPE = PROJECT.online_zjsj var PROJECT_TYPE = PROJECT.local_test
var headerShow = true; // 是否显示头部 var headerShow = true; // 是否显示头部
var tabsShow = true; // 是否显示tabs var tabsShow = true; // 是否显示tabs

View File

@ -41,8 +41,8 @@ if (process.env.NODE_ENV == 'development') {
// tag: 本地 // tag: 本地
// axios.defaults.baseURL = 'http://192.168.34.174:6023/' // 老大本地 // axios.defaults.baseURL = 'http://192.168.34.174:6023/' // 老大本地
// axios.defaults.baseURL = 'http://192.168.34.125:6023/' //杨意本地 http/1.1 // axios.defaults.baseURL = 'http://192.168.34.125:6023/' //杨意本地 http/1.1
// axios.defaults.baseURL = 'http://192.168.34.216:6023/' // 邱平毅本地 axios.defaults.baseURL = 'http://192.168.34.216:6023/' // 邱平毅本地
axios.defaults.baseURL ='http://124.71.67.160:8088/' //中建四局线上 // axios.defaults.baseURL ='http://124.71.67.160:8088/' //中建四局线上
// axios.defaults.baseURL = 'http://192.168.34.125:6023/' //杨意本地 http/1.1 // axios.defaults.baseURL = 'http://192.168.34.125:6023/' //杨意本地 http/1.1
// axios.defaults.baseURL = 'http://192.168.34.216:18070/' // 邱平毅本地 // axios.defaults.baseURL = 'http://192.168.34.216:18070/' // 邱平毅本地
// axios.defaults.baseURL = 'http://192.168.34.231:6023/'; //杨思瑞本地 // axios.defaults.baseURL = 'http://192.168.34.231:6023/'; //杨思瑞本地

View File

@ -0,0 +1,169 @@
<template>
<div class="leftContent">
<div class="title_r">
<div class="backBtn" @click="goBackBtn">
返回到首页
</div>
<!-- <el-button type="primary" plain size="small" class="backBtn" @click="goBackBtn">返回到首页</el-button> -->
</div>
<!-- <img src="../../assets/images/zjsj/zjsj_logo.png" /> -->
<div class="logoImg"></div>
<div class="btnContent">
<div class="minBox">
<el-form :model="form" :rules="rules" ref="form" label-width="0px">
<el-form-item label="" prop="account">
<div class="row1">
<el-input
prefix-icon=" "
v-model="form.account"
placeholder="请输入帐号"
></el-input>
</div>
</el-form-item>
<el-form-item style="margin-top: 39px" label="" prop="password">
<div class="row2">
<el-input
prefix-icon=" "
v-model="form.password"
type="password"
show-password
placeholder="请输入密码"
></el-input>
</div>
</el-form-item>
</el-form>
<div>
<el-button class="loginBtn" @click="loginFn">登录</el-button>
</div>
<div class="about">
<el-radio v-model="radio" label="1">记住登录密码</el-radio>
<span>忘记密码</span>
</div>
<div>
<el-button class="registerBtn">注册账户</el-button>
</div>
</div>
</div>
</div>
</template>
<script>
export default {
props: {
form: {
type: Object,
},
rules: {
type: Object,
},
},
data() {
return {
radio:'',
};
},
methods: {
goBackBtn() {
this.$emit('goBackBtn');
},
loginFn(){
this.$emit('loginFn');
}
},
};
</script>
<style lang="less" scoped>
// 使
::v-deep input:-webkit-autofill , textarea:-webkit-autofill, select:-webkit-autofill {
//
-webkit-text-fill-color: #eeeeee;
//
background-color: rgba(2, 38, 64,0);
//input
transition: background-color 50000s ease-in-out 0s;
}
.leftContent {
position: absolute;
top: 20%;
right: 9%;
width: 32%;
.backBtn {
margin-left: 59%;
color: #fff;
height: 50px;
line-height: 25px;
text-align: center;
width: 125px;
background-image: url("./../../../assets/images/zjsj/zjsj_back.png");
background-size: 100%;
background-repeat: no-repeat;
}
.logoImg {
height: 100px;
background-image: url("./../../../assets/images/zjsj/zjsj_logo.png");
background-size: 80%;
background-repeat: no-repeat;
}
.btnContent {
margin-top: 5%;
height: 575px;
background-image: url("./../../../assets/images/zjsj/zjsj_loginInpt.png");
background-size: 80%;
background-repeat: no-repeat;
.minBox {
box-sizing: border-box;
padding-left: 15%;
.img {
display: inline-block;
}
.row1,
.row2 {
width: 57%;
position: relative;
.text {
color: #eeeeee;
font-size: 14px;
}
}
.row1 {
padding-top: 15%;
}
.row1::before {
content: url("./../../../assets/images/zjsj/zjsj_admin.png");
top: 70%;
left: 0%;
position: absolute;
}
.row2::before {
content: url("./../../../assets/images/zjsj/zjsj_pass.png");
top: 10%;
left: 0%;
position: absolute;
}
.loginBtn {
width: 300px;
color: #eeeeee;
background-color: #27e1f0;
border-color: #27e1f0;
}
.registerBtn {
width: 300px;
margin-top: 3%;
color: #696969;
background-color: #eeeeee;
border-color: #eeeeee;
}
.about {
margin-top: 3%;
color: #27e1f0;
font-size: 12px;
span {
margin-left: 21%;
}
}
}
}
}
</style>

View File

@ -1,54 +1,91 @@
<template> <template>
<!-- 登录 --> <!-- 登录 -->
<div > <div>
<div class="login" v-if="projectType == 'common'"> <div class="login" v-if="projectType == 'common'">
<div class="title flex"> <div class="title flex">
<div class="title_l flex2"> <div class="title_l flex2">
<img v-if="systemInfo.loginLogo" :src="systemInfo.loginLogo" class="logo" /> <img
<img v-else-if="LOGO" :src="'./img/logo/' + LOGO + '.png'" class="logo" /> v-if="systemInfo.loginLogo"
<span v-if="systemInfo.platformName && company != 'nanchang'">{{ systemInfo.platformName }}</span :src="systemInfo.loginLogo"
class="logo"
/>
<img
v-else-if="LOGO"
:src="'./img/logo/' + LOGO + '.png'"
class="logo"
/>
<span v-if="systemInfo.platformName && company != 'nanchang'">{{
systemInfo.platformName
}}</span
><!--智慧工地云平台--> ><!--智慧工地云平台-->
<span v-if="!systemInfo.platformName && company != 'nanchang'">{{ $t('message.login.title') }}</span <span v-if="!systemInfo.platformName && company != 'nanchang'">{{
$t("message.login.title")
}}</span
><!--智慧工地云平台--> ><!--智慧工地云平台-->
<!-- 南昌地铁登录页不显示智慧工地云平台字样 --> <!-- 南昌地铁登录页不显示智慧工地云平台字样 -->
<span v-if="company == 'nanchang'"></span> <span v-if="company == 'nanchang'"></span>
</div> </div>
<div class="title_r"> <div class="title_r">
<el-button type="primary" plain size="small" class="backBtn" @click="goBackBtn">返回到首页</el-button> <el-button
type="primary"
plain
size="small"
class="backBtn"
@click="goBackBtn"
>返回到首页</el-button
>
</div> </div>
</div> </div>
<div class="content flex2"> <div class="content flex2">
<img class="contentBG" v-if="systemInfo.loginBackgroundImage" :src="systemInfo.loginBackgroundImage" alt="" /> <img
<img class="contentBG" v-else src="../../assets/images/login_bg.webp" alt="" /> class="contentBG"
v-if="systemInfo.loginBackgroundImage"
:src="systemInfo.loginBackgroundImage"
alt=""
/>
<img
class="contentBG"
v-else
src="../../assets/images/login_bg.webp"
alt=""
/>
<div class="login_info"> <div class="login_info">
<div class="info_title flex"> <div class="info_title flex">
<p <p
:class="loginType == 1 ? 'border_bottom' : 'placeholder'" :class="loginType == 1 ? 'border_bottom' : 'placeholder'"
@click=" @click="
() => { () => {
loginType = 1 loginType = 1;
} }
" "
> >
{{ $t('message.login.passwordLogin') }} {{ $t("message.login.passwordLogin") }}
</p> </p>
<p <p
:class="loginType == 2 ? 'border_bottom' : 'placeholder'" :class="loginType == 2 ? 'border_bottom' : 'placeholder'"
@click=" @click="
() => { () => {
loginType = 2 loginType = 2;
} }
" "
> >
{{ $t('message.login.sMSLogin') }} {{ $t("message.login.sMSLogin") }}
</p> </p>
</div> </div>
<div class="info_content" v-show="loginType == 1"> <div class="info_content" v-show="loginType == 1">
<el-form :model="form" :rules="rules" ref="form" label-width="0px"> <el-form :model="form" :rules="rules" ref="form" label-width="0px">
<el-form-item label="" prop="account"> <el-form-item label="" prop="account">
<el-input v-model="form.account" style="height: 53px; font-size: 16px" :placeholder="$t('message.login.account_placeholder')"> <el-input
<img slot="prefix" src="../../assets/images/accountNumber.png" class="inputIcon" /> v-model="form.account"
style="height: 53px; font-size: 16px"
:placeholder="$t('message.login.account_placeholder')"
>
<img
slot="prefix"
src="../../assets/images/accountNumber.png"
class="inputIcon"
/>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item style="margin-top: 39px" label="" prop="password"> <el-form-item style="margin-top: 39px" label="" prop="password">
@ -59,26 +96,53 @@
:placeholder="$t('message.login.password_placeholder')" :placeholder="$t('message.login.password_placeholder')"
@keyup.enter.native="loginFn" @keyup.enter.native="loginFn"
> >
<img slot="prefix" src="../../assets/images/password.png" class="inputIcon" /> <img
slot="prefix"
src="../../assets/images/password.png"
class="inputIcon"
/>
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-form> </el-form>
</div> </div>
<div class="info_content" v-show="loginType == 2"> <div class="info_content" v-show="loginType == 2">
<el-form :model="form2" :rules="rules2" ref="form2" label-width="0px"> <el-form
:model="form2"
:rules="rules2"
ref="form2"
label-width="0px"
>
<el-form-item label="" prop="phone"> <el-form-item label="" prop="phone">
<el-input v-model="form2.phone" style="height: 53px; font-size: 16px" :placeholder="$t('message.login.phone_placeholder')"> <el-input
<img slot="prefix" src="../../assets/images/accountNumber.png" class="inputIcon" /> v-model="form2.phone"
style="height: 53px; font-size: 16px"
:placeholder="$t('message.login.phone_placeholder')"
>
<img
slot="prefix"
src="../../assets/images/accountNumber.png"
class="inputIcon"
/>
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item style="margin-top: 39px" label="" prop="verificationCode"> <el-form-item
style="margin-top: 39px"
label=""
prop="verificationCode"
>
<el-input <el-input
v-model="form2.verificationCode" v-model="form2.verificationCode"
style="height: 53px; font-size: 16px" style="height: 53px; font-size: 16px"
:placeholder="$t('message.login.verificationCode_placeholder')" :placeholder="
$t('message.login.verificationCode_placeholder')
"
@keyup.enter.native="loginFn" @keyup.enter.native="loginFn"
> >
<img slot="prefix" src="../../assets/images/password.png" class="inputIcon" /> <img
slot="prefix"
src="../../assets/images/password.png"
class="inputIcon"
/>
<div slot="suffix" style="margin: 6px 10px 0 0"> <div slot="suffix" style="margin: 6px 10px 0 0">
<getcode :phone="form2.phone" type="theme2"></getcode> <getcode :phone="form2.phone" type="theme2"></getcode>
</div> </div>
@ -87,7 +151,9 @@
</el-form> </el-form>
</div> </div>
<div style="margin-top: 40px"> <div style="margin-top: 40px">
<el-button type="primary" class="logo_btn" @click="loginFn">{{ $t('message.login.login') }} </el-button> <el-button type="primary" class="logo_btn" @click="loginFn"
>{{ $t("message.login.login") }}
</el-button>
</div> </div>
<div class="info_bottom"> <div class="info_bottom">
友情提示win7以上操作系统浏览器使用Chrome电脑屏幕分辩率>=1440X900达到最佳浏览视觉 友情提示win7以上操作系统浏览器使用Chrome电脑屏幕分辩率>=1440X900达到最佳浏览视觉
@ -98,19 +164,29 @@
class="flex2" class="flex2"
@click=" @click="
() => { () => {
automaticLogin = !this.automaticLogin automaticLogin = !this.automaticLogin;
} }
" "
> >
<img src="../../assets/images/no_checked.png" v-if="!automaticLogin" /> <img
<img src="../../assets/images/checked.png" v-if="automaticLogin" /> src="../../assets/images/no_checked.png"
<span style="margin-left: 12px">{{ $t('message.login.automaticLogon') }}</span> v-if="!automaticLogin"
/>
<img
src="../../assets/images/checked.png"
v-if="automaticLogin"
/>
<span style="margin-left: 12px">{{
$t("message.login.automaticLogon")
}}</span>
</div> </div>
<div> <div>
<span style="margin-right: 5px">{{ $t('message.login.forgetThePassword') }}</span> <span style="margin-right: 5px">{{
$t("message.login.forgetThePassword")
}}</span>
<span class="span_placeholder"></span> <span class="span_placeholder"></span>
<el-button type="text" style="margin-left: 5px" @click="goSignIn"> <el-button type="text" style="margin-left: 5px" @click="goSignIn">
{{ $t('message.login.clickRegister') }} {{ $t("message.login.clickRegister") }}
</el-button> </el-button>
</div> </div>
</div> </div>
@ -119,481 +195,409 @@
</div> </div>
<div class="zjsjLogin" v-if="projectType == 'zjsj'"> <div class="zjsjLogin" v-if="projectType == 'zjsj'">
<div class="zjsjcontent"> <div class="zjsjcontent">
<img class="contentBGI" src="../../assets/images/zjsj/zjsj_loginBgc.jpg" alt="" /> <img
<div class="leftContent"> class="contentBGI"
<div class="title_r"> src="../../assets/images/zjsj/zjsj_loginBgc.jpg"
<div class="backBtn" @click="goBackBtn"> alt=""
返回到首页 />
<LoginInfo
class="leftContent"
ref="LoginInfo"
:form="form"
:rules="rules"
@loginFn="loginFn"
></LoginInfo>
</div> </div>
<!-- <el-button type="primary" plain size="small" class="backBtn" @click="goBackBtn">返回到首页</el-button> --> <div></div>
</div>
<!-- <img src="../../assets/images/zjsj/zjsj_logo.png" /> -->
<div class="logoImg"></div>
<div class="btnContent">
<div class="minBox">
<el-form :model="form" :rules="rules" ref="form" label-width="0px">
<el-form-item label="" prop="account">
<div class="row1">
<el-input prefix-icon=" " v-model="form.account" placeholder="请输入帐号"></el-input>
</div>
</el-form-item>
<el-form-item style="margin-top: 39px" label="" prop="password">
<div class="row2">
<el-input prefix-icon=" " v-model="form.password" type="password" show-password placeholder="请输入密码"></el-input>
</div>
</el-form-item>
</el-form>
<div>
<el-button class="loginBtn" @click="loginFn">登录</el-button>
</div>
<div class="about">
<el-radio v-model="radio" label="1">记住登录密码</el-radio>
<span>忘记密码</span>
</div>
<div>
<el-button class="registerBtn">注册账户</el-button>
</div> </div>
</div> </div>
</div>
</div>
</div>
<div>
</div>
</div>
</div>
</template> </template>
<script> <script>
import vueMatomo from 'vue-matomo' import vueMatomo from "vue-matomo";
import { loginPhoneApi, loginApi, getUserByUidApi, companyLoginApi, projectLoginApi } from '@/assets/js/api/loginSign' import {
import { selectSystemLogoConfigApi } from '@/assets/js/api/jxjadmin' loginPhoneApi,
import getcode from '@/components/getMsgCode' loginApi,
import { getOneComputerAuthApi } from '@/assets/js/api/loginSign' getUserByUidApi,
import { selectNoticeRemindSoundApi } from '@/assets/js/api/configManage' companyLoginApi,
projectLoginApi,
} from "@/assets/js/api/loginSign";
import { selectSystemLogoConfigApi } from "@/assets/js/api/jxjadmin";
import getcode from "@/components/getMsgCode";
import { getOneComputerAuthApi } from "@/assets/js/api/loginSign";
import { selectNoticeRemindSoundApi } from "@/assets/js/api/configManage";
import LoginInfo from "./components/loginInfo.vue";
export default { export default {
name: 'login', name: "login",
components: { getcode }, components: { getcode, LoginInfo },
data() { data() {
return { return {
show:false, show: false,
input:'', input: "",
radio:'', radio: "",
projectType:'', projectType: "",
LOGO: LOGO, LOGO: LOGO,
loginType: 1, loginType: 1,
automaticLogin: false, automaticLogin: false,
form: { form: {
account: '', account: "",
password: '' password: "",
}, },
form2: { form2: {
phone: '', phone: "",
verificationCode: '' verificationCode: "",
}, },
rules: { rules: {
account: [ account: [
{ {
required: true, required: true,
message: this.$t('message.login.rules.account_message'), message: this.$t("message.login.rules.account_message"),
trigger: 'blur' trigger: "blur",
} },
], ],
password: [ password: [
{ {
required: true, required: true,
message: this.$t('message.login.rules.password_message'), message: this.$t("message.login.rules.password_message"),
trigger: 'blur' trigger: "blur",
} },
] ],
}, },
rules2: { rules2: {
phone: [ phone: [
{ {
required: true, required: true,
message: this.$t('message.login.rules2.phone_message'), message: this.$t("message.login.rules2.phone_message"),
trigger: 'blur' trigger: "blur",
} },
], ],
verificationCode: [ verificationCode: [
{ {
required: true, required: true,
message: this.$t('message.login.rules2.verificationCode_message'), message: this.$t("message.login.rules2.verificationCode_message"),
trigger: 'blur' trigger: "blur",
} },
] ],
}, },
systemInfo: { systemInfo: {
loginBackgroundImage: '', loginBackgroundImage: "",
loginLogo: '', loginLogo: "",
platformLogo: '', platformLogo: "",
platformName: '' platformName: "",
} },
} };
}, },
watch: { watch: {
loginType(newDate, oldDate) { loginType(newDate, oldDate) {
console.log(newDate) console.log(newDate);
console.log(oldDate) console.log(oldDate);
if (newDate === 1) { if (newDate === 1) {
window._paq.push(['trackEvent', '点击', '登录', '使用密码登录']) window._paq.push(["trackEvent", "点击", "登录", "使用密码登录"]);
} else { } else {
window._paq.push(['trackEvent', '点击', '登录', '使用账号登录']) window._paq.push(["trackEvent", "点击", "登录", "使用账号登录"]);
}
} }
}, },
},
created() { created() {
this.company = COMPANY this.company = COMPANY;
this.projectType = PROJECT_TYPE; this.projectType = PROJECT_TYPE;
}, },
mounted() { mounted() {
delete this.$http.defaults.headers.common['Authorization'] delete this.$http.defaults.headers.common["Authorization"];
if (window.location.href.indexOf('type=lgzbdp') != -1) { if (window.location.href.indexOf("type=lgzbdp") != -1) {
window.localStorage.setItem('isIframe', '1') window.localStorage.setItem("isIframe", "1");
} else { } else {
if (window.localStorage.getItem('isIframe')) { if (window.localStorage.getItem("isIframe")) {
window.localStorage.removeItem('isIframe') window.localStorage.removeItem("isIframe");
} }
} }
// --- // ---
if (window.location.href.indexOf('UID') != -1) { if (window.location.href.indexOf("UID") != -1) {
// debugger; // debugger;
this.$store.commit('setUid', true) this.$store.commit("setUid", true);
// let str = window.location.href.split("UID=")[1]; // let str = window.location.href.split("UID=")[1];
let uid = window.location.href.split('UID=')[1] let uid = window.location.href.split("UID=")[1];
// let uid = str.substring(0, str.length - 7); // let uid = str.substring(0, str.length - 7);
let data = { let data = {
uid uid,
} };
// //
getUserByUidApi(data).then(res => { getUserByUidApi(data).then((res) => {
if (res.code == 200) { if (res.code == 200) {
// //
this.parseLoginData(res.result) this.parseLoginData(res.result);
} else { } else {
this.$message.error(res.message) this.$message.error(res.message);
} }
}) });
} else { } else {
this.$store.commit('setUid', false) this.$store.commit("setUid", false);
this.getDetail() this.getDetail();
this.getData() this.getData();
} }
}, },
methods: { methods: {
// //
getData() { getData() {
getOneComputerAuthApi().then(res => { getOneComputerAuthApi().then((res) => {
if (res.result) { if (res.result) {
} else { } else {
this.$router.push({ path: '/authorization' }) this.$router.push({ path: "/authorization" });
} }
}) });
}, },
getDetail() { getDetail() {
selectSystemLogoConfigApi().then(res => { selectSystemLogoConfigApi().then((res) => {
if (res.result) { if (res.result) {
console.log('查看有没有背景图', res) console.log("查看有没有背景图", res);
console.log(window.location.protocol) console.log(window.location.protocol);
this.systemInfo = res.result this.systemInfo = res.result;
if (this.systemInfo.loginLogo) { if (this.systemInfo.loginLogo) {
this.systemInfo.loginLogo = window.location.protocol + '//' + res.result.loginLogo.split('//')[1] this.systemInfo.loginLogo =
window.location.protocol +
"//" +
res.result.loginLogo.split("//")[1];
} }
localStorage.setItem('systemInfo', JSON.stringify(res.result)) localStorage.setItem("systemInfo", JSON.stringify(res.result));
if (res.result.fileStorageType !== '0') { if (res.result.fileStorageType !== "0") {
this.$store.commit('setFILEURL', '') this.$store.commit("setFILEURL", "");
} }
} }
}) });
}, },
goBackBtn() { goBackBtn() {
this.$router.push({ path: '/' }) this.$router.push({ path: "/" });
}, },
goSignIn() { goSignIn() {
this.$router.push({ path: '/sign' }) this.$router.push({ path: "/sign" });
}, },
loginFn() { loginFn() {
// 12345 6 7 // 12345 6 7
if (this.loginType == 1) { if (this.loginType == 1) {
this.$refs['form'].validate(valid => { this.$nextTick(() => {
if (this.projectType == "zjsj") {
this.$refs["LoginInfo"].$refs["form"].validate((valid) => {
// console.log("this.$refs['LoginInfo']:", this.$refs["LoginInfo"]);
if (valid) { if (valid) {
if (LOGINTYPE == 1) { if (LOGINTYPE == 1) {
loginApi(this.form).then(res => { loginApi(this.form).then((res) => {
console.log('--------------------10') console.log("--------------------10");
console.log(res.result) console.log(res.result);
this.parseLoginData(res.result) this.parseLoginData(res.result);
}) });
} else if (LOGINTYPE == 2) { } else if (LOGINTYPE == 2) {
console.log(2222222222222) console.log(2222222222222);
companyLoginApi(this.form).then(res => { companyLoginApi(this.form).then((res) => {
this.parseLoginData(res.result) this.parseLoginData(res.result);
}) });
} else if (LOGINTYPE == 3) { } else if (LOGINTYPE == 3) {
console.log(333333333) console.log(333333333);
projectLoginApi(this.form).then(res => { projectLoginApi(this.form).then((res) => {
this.parseLoginData(res.result) this.parseLoginData(res.result);
}) });
} }
} else { } else {
console.log('error submit!!') console.log("error submit!!");
return false return false;
} }
}) });
} else { } else if (this.projectType == "common") {
this.$refs['form2'].validate(valid => { this.$refs["form"].validate((valid) => {
if (valid) { if (valid) {
loginPhoneApi(this.form2).then(res => { if (LOGINTYPE == 1) {
this.parseLoginData(res.result) loginApi(this.form).then((res) => {
}) console.log("--------------------10");
} else { console.log(res.result);
console.log('error submit!!') this.parseLoginData(res.result);
return false });
} else if (LOGINTYPE == 2) {
console.log(2222222222222);
companyLoginApi(this.form).then((res) => {
this.parseLoginData(res.result);
});
} else if (LOGINTYPE == 3) {
console.log(333333333);
projectLoginApi(this.form).then((res) => {
this.parseLoginData(res.result);
});
} }
}) } else {
console.log("error submit!!");
return false;
}
});
}
});
} else {
this.$refs["form2"].validate((valid) => {
if (valid) {
loginPhoneApi(this.form2).then((res) => {
this.parseLoginData(res.result);
});
} else {
console.log("error submit!!");
return false;
}
});
} }
}, },
selectMp3FileList() { selectMp3FileList() {
selectNoticeRemindSoundApi({ projectSn: this.$store.state.projectSn }).then(res => { selectNoticeRemindSoundApi({
console.log(res) projectSn: this.$store.state.projectSn,
}).then((res) => {
console.log(res);
if (res.code == 200) { if (res.code == 200) {
// this.MP4FileList = res.result // this.MP4FileList = res.result
localStorage.setItem('soundList', JSON.stringify(res.result)) localStorage.setItem("soundList", JSON.stringify(res.result));
console.log(localStorage.getItem('soundList')) console.log(localStorage.getItem("soundList"));
} }
}) });
}, },
parseLoginData(data) { parseLoginData(data) {
console.log('登录进来的data', data) console.log("登录进来的data", data);
window._paq.push(['trackEvent', '点击', '登录', '登录账号']) window._paq.push(["trackEvent", "点击", "登录", "登录账号"]);
this.$message.success(this.$t('message.login.login_success_msg')) // this.$message.success(this.$t("message.login.login_success_msg")); //
this.$http.defaults.headers.common['Authorization'] = 'Bearer' + ' ' + data.token this.$http.defaults.headers.common["Authorization"] =
this.$http.defaults.headers.common['operateId'] = data.userId "Bearer" + " " + data.token;
this.$store.commit('setUserInfo', data) this.$http.defaults.headers.common["operateId"] = data.userId;
var moduleList = data.menuAuthority.moduleList ? data.menuAuthority.moduleList : [] this.$store.commit("setUserInfo", data);
var companyModule = [] var moduleList = data.menuAuthority.moduleList
? data.menuAuthority.moduleList
: [];
var companyModule = [];
if (moduleList.length == 0 && data.accountType != 1) { if (moduleList.length == 0 && data.accountType != 1) {
this.$message.warning('当前账号还没分配权限') this.$message.warning("当前账号还没分配权限");
return false return false;
} }
moduleList.forEach(element => { moduleList.forEach((element) => {
if (element.moduleType == 1) { if (element.moduleType == 1) {
companyModule.push(element) companyModule.push(element);
} }
}) });
var menu2 = [ var menu2 = [
{ {
menuName: '企业管理', menuName: "企业管理",
id: 9199, id: 9199,
path: '/registerAudit' path: "/registerAudit",
}, },
{ {
menuName: '模块菜单管理', menuName: "模块菜单管理",
id: 9299, id: 9299,
path: '/moduleMenuManage' path: "/moduleMenuManage",
}, },
{ {
menuName: 'app版本管理', menuName: "app版本管理",
id: 9297, id: 9297,
path: '/operateManage' path: "/operateManage",
}, },
{ {
menuName: '塔吊模型管理', menuName: "塔吊模型管理",
id: 9298, id: 9298,
path: '/brand' path: "/brand",
} },
] ];
switch (data.accountType) { switch (data.accountType) {
case 1: case 1:
this.$store.commit('setMenuList', menu2) this.$store.commit("setMenuList", menu2);
this.$store.commit('setProjectManageMenuList', menu2) this.$store.commit("setProjectManageMenuList", menu2);
console.log('-----------', menu2) console.log("-----------", menu2);
this.$store.commit('setIsShowBackIndex', false) this.$store.commit("setIsShowBackIndex", false);
this.$router.push('/registerAudit') this.$router.push("/registerAudit");
break break;
case 2: case 2:
this.$store.commit('setMenuList', companyModule) this.$store.commit("setMenuList", companyModule);
this.$store.commit('setProjectManageMenuList', companyModule) this.$store.commit("setProjectManageMenuList", companyModule);
this.$store.commit('setIsShowBackIndex', false) this.$store.commit("setIsShowBackIndex", false);
this.$router.push(companyModule[0].modulePath) this.$router.push(companyModule[0].modulePath);
break break;
case 3: case 3:
this.$store.commit('setMenuList', companyModule) this.$store.commit("setMenuList", companyModule);
this.$store.commit('setProjectManageMenuList', companyModule) this.$store.commit("setProjectManageMenuList", companyModule);
this.$store.commit('setIsShowBackIndex', false) this.$store.commit("setIsShowBackIndex", false);
this.$router.push(companyModule[0].modulePath) this.$router.push(companyModule[0].modulePath);
break break;
case 4: case 4:
this.$store.commit('setMenuList', companyModule) this.$store.commit("setMenuList", companyModule);
this.$store.commit('setProjectManageMenuList', companyModule) this.$store.commit("setProjectManageMenuList", companyModule);
this.$store.commit('setIsShowBackIndex', false) this.$store.commit("setIsShowBackIndex", false);
this.$router.push(companyModule[0].modulePath) this.$router.push(companyModule[0].modulePath);
break break;
case 7: case 7:
this.$store.commit('setMenuList', companyModule) this.$store.commit("setMenuList", companyModule);
this.$store.commit('setProjectManageMenuList', companyModule) this.$store.commit("setProjectManageMenuList", companyModule);
this.$store.commit('setIsShowBackIndex', false) this.$store.commit("setIsShowBackIndex", false);
this.$router.push(companyModule[0].modulePath) this.$router.push(companyModule[0].modulePath);
break break;
case 5: case 5:
// styleType == 3 // styleType == 3
if (data.styleType == 1 || !data.styleType) { if (data.styleType == 1 || !data.styleType) {
this.$router.push('/projectIndex') this.$router.push("/projectIndex");
} else if (data.styleType == 2) { } else if (data.styleType == 2) {
this.$router.push('/projectV2/taskList') this.$router.push("/projectV2/taskList");
} else { } else {
this.$router.push('/projectV3/taskList') this.$router.push("/projectV3/taskList");
} }
this.$store.commit('setProjectSn', data.sn) this.$store.commit("setProjectSn", data.sn);
break break;
case 6: case 6:
if (data.styleType == 1 || !data.styleType) { if (data.styleType == 1 || !data.styleType) {
this.$router.push('/projectIndex') this.$router.push("/projectIndex");
} else if (data.styleType == 2) { } else if (data.styleType == 2) {
this.$router.push('/projectV2/taskList') this.$router.push("/projectV2/taskList");
} else { } else {
this.$router.push('/projectV3/taskList') this.$router.push("/projectV3/taskList");
} }
this.$store.commit('setProjectSn', data.sn) this.$store.commit("setProjectSn", data.sn);
break break;
} }
this.selectMp3FileList() this.selectMp3FileList();
} },
} },
} };
</script> </script>
<style lang="less" scoped> <style lang="less" scoped>
::v-deep .el-input__inner { ::v-deep .el-input__inner {
border-top-width: 0px; border-top-width: 0px;
border-left-width: 0px; border-left-width: 0px;
border-right-width: 0px; border-right-width: 0px;
border-bottom-width: 1px; border-bottom-width: 1px;
border-radius:0% ; border-radius: 0%;
background-color: rgba(2, 38, 64,0.1); background-color: rgba(2, 38, 64, 0.1);
color: #ffffff; color: #ffffff;
font-size: 14px; font-size: 14px;
} }
::v-deep ::-webkit-input-placeholder{ ::v-deep ::-webkit-input-placeholder {
color: #eeeeee; color: #eeeeee;
-webkit-text-fill-color: #eeeeee; -webkit-text-fill-color: #eeeeee;
} }
// 使
::v-deep input:-webkit-autofill , textarea:-webkit-autofill, select:-webkit-autofill { ::v-deep .el-radio {
// color: #27e1f0;
-webkit-text-fill-color: #eeeeee;
//
background-color: rgba(2, 38, 64,0);
//input
transition: background-color 50000s ease-in-out 0s;
}
::v-deep .el-radio{
color:#27e1f0;
} }
::v-deep .el-radio__inner { ::v-deep .el-radio__inner {
border-radius: 0%; border-radius: 0%;
background-color: rgba(2, 38, 64,0); background-color: rgba(2, 38, 64, 0);
border-color: #27e1f0; border-color: #27e1f0;
} }
::v-deep .el-radio__label { ::v-deep .el-radio__label {
padding-left:5px padding-left: 5px;
} }
.zjsjLogin{ .zjsjLogin {
width: 100%; width: 100%;
height: 100%; height: 100%;
.zjsjcontent{ .zjsjcontent {
width: 100%; width: 100%;
height:100%; height: 100%;
position: relative; position: relative;
.contentBGI{ .contentBGI {
width: 100%; width: 100%;
height: 100%; height: 100%;
} }
.leftContent{
position: absolute;
top: 20%;
right:9%;
width: 32%;
.backBtn{
margin-left: 59%;
color: #fff;
height: 50px;
line-height: 25px;
text-align: center;
width: 125px;
background-image: url('../../assets/images/zjsj/zjsj_back.png');
background-size: 100%;
background-repeat: no-repeat;
}
.logoImg{
height: 100px;
background-image: url('../../assets/images/zjsj/zjsj_logo.png');
background-size: 80%;
background-repeat: no-repeat;
}
.btnContent{
margin-top: 5%;
height: 575px;
background-image: url("../../assets/images/zjsj/zjsj_loginInpt.png");
background-size: 80%;
background-repeat: no-repeat;
.minBox{
box-sizing: border-box;
padding-left: 15%;
.img{
display: inline-block;
}
.row1,.row2{
width: 57%;
position: relative;
.text{
color: #eeeeee;
font-size: 14px;
}
}
.row1{
padding-top: 15%;
}
.row1::before{
content: url("../../assets/images/zjsj/zjsj_admin.png");
top: 70%;
left: 0%;
position: absolute;
}
.row2::before{
content: url("../../assets/images/zjsj/zjsj_pass.png");
top: 10%;
left:0%;
position: absolute;
}
.loginBtn{
width: 300px;
color: #eeeeee;
background-color: #27e1f0;
border-color: #27e1f0;
}
.registerBtn{
width: 300px;
margin-top: 3%;
color: #696969;
background-color: #eeeeee;
border-color: #eeeeee;
}
.about{
margin-top: 3%;
color:#27e1f0;
font-size: 12px;
span{
margin-left: 21%;
}
}
}
}
}
}
} }
}
.flex { .flex {
display: flex; display: flex;
align-items: center; align-items: center;