对接企业单点登录、企业库企业登录可编辑企业基本信息、政策文件库暂去除关联项目、项目库企业只查自己企业

prod
吕天方 9 months ago
parent 6fa255edea
commit 38c918ca3e

@ -5,7 +5,7 @@ VUE_APP_TITLE = 金鸡湖现代服务业品牌管理系统
ENV = 'development' ENV = 'development'
# 金鸡湖现代服务业品牌管理系统/开发环境 # 金鸡湖现代服务业品牌管理系统/开发环境
VUE_APP_BASE_API = 'http://192.168.0.104:9040' VUE_APP_BASE_API = 'http://192.168.0.105:9040'
# VUE_APP_BASE_API = 'http://39.101.188.84:9040' # VUE_APP_BASE_API = 'http://39.101.188.84:9040'
# 路由懒加载 # 路由懒加载

@ -1,6 +1,6 @@
{ {
"name": "ruoyi", "name": "ruoyi",
"version": "1.0.202405291050", "version": "1.0.202405310908",
"description": "金鸡湖现代服务业品牌管理系统", "description": "金鸡湖现代服务业品牌管理系统",
"author": "若依", "author": "若依",
"license": "MIT", "license": "MIT",

@ -0,0 +1,19 @@
import request from "@/utils/request"
// 企业端跳转过来查看个人信息
export function singleSigngetInfo(params) {
return request({
url: "/system/singlelogin/getInfo",
method: "get",
params
})
}
// 企业端退出登录
export function enterpriseLogout(params) {
return request({
url: "/system/singlelogin/enterpriseLogout",
method: "get",
params
})
}

@ -88,6 +88,12 @@ export default {
.then(() => { .then(() => {
this.$store.dispatch("LogOut").then(() => { this.$store.dispatch("LogOut").then(() => {
// location.href = "/index"; // location.href = "/index";
// console.log("this.$store.state.user.userType",this.$store.state.user.userType);
// if(this.$store.state.user.userType == "01") {
// location.href = process.env.VUE_APP_BASE_API + "/system/singlelogin/login"
// } else {
// this.$router.replace("/login");
// }
this.$router.replace("/login"); this.$router.replace("/login");
}); });
}) })

@ -12,7 +12,54 @@ const whiteList = ["/login", "/register"];
router.beforeEach((to, from, next) => { router.beforeEach((to, from, next) => {
NProgress.start(); NProgress.start();
if (getToken()) { if (window.location.href.includes("clienttoken=")) {
var reg = new RegExp(/[?&]clienttoken=([^&#]+)/);
var c = window.location.href.match(reg);
const clienttoken = c && c[1];
// console.log("clienttoken:", clienttoken);
if (store.getters.roles.length === 0) {
isRelogin.show = true;
store.dispatch("SingleSignOnGetInfo",{clientToken:clienttoken}).then(res => {
isRelogin.show = false;
let url = window.location.href;
var modifiedUrl = url.replace(/(\?appid&clienttoken=)[^&#]+/, '');
// console.log(modifiedUrl,'modifiedUrl');
window.location.href = modifiedUrl;
// store.dispatch("GenerateRoutes").then((accessRoutes) => {
// // 根据roles权限生成可访问的路由表
// router.addRoutes(accessRoutes); // 动态添加可访问路由表
// next({ ...to, replace: true }); // hack方法 确保addRoutes已完成
// });
if (store.getters.roles.length === 0) {
isRelogin.show = true;
// 判断当前用户是否已拉取完user_info信息
store
.dispatch("GetInfo")
.then(() => {
isRelogin.show = false;
store.dispatch("GenerateRoutes").then((accessRoutes) => {
// 根据roles权限生成可访问的路由表
router.addRoutes(accessRoutes); // 动态添加可访问路由表
next({ ...to, replace: true }); // hack方法 确保addRoutes已完成
});
})
.catch((err) => {
store.dispatch("LogOut").then(() => {
Message.error(err);
next({ path: "/" });
});
});
}
}).catch((err) => {
store.dispatch("LogOut").then(() => {
Message.error(err);
location.href = process.env.VUE_APP_BASE_API + "/system/singlelogin/login"
});
});
} else {
next();
}
} else if (getToken()) {
to.meta.title && store.dispatch("settings/setTitle", to.meta.title); to.meta.title && store.dispatch("settings/setTitle", to.meta.title);
/* has token*/ /* has token*/
if (to.path === "/login") { if (to.path === "/login") {

@ -1,9 +1,11 @@
import { login, logout, getInfo, refreshToken } from '@/api/login' import { login, logout, getInfo, refreshToken } from '@/api/login'
import { getToken, setToken, removeToken, setExpiresIn } from '@/utils/auth' import { getToken, setToken, removeToken, setExpiresIn, getClientToken, setClientToken, removeClientToken } from '@/utils/auth'
import { singleSigngetInfo, enterpriseLogout } from "@/api/jin_ji_hu/login"
const user = { const user = {
state: { state: {
token: getToken(), token: getToken(),
clientToken: getClientToken(),
id: '', id: '',
name: '', name: '',
avatar: '', avatar: '',
@ -20,6 +22,9 @@ const user = {
SET_TOKEN: (state, token) => { SET_TOKEN: (state, token) => {
state.token = token state.token = token
}, },
SET_CLIENTTOKEN: (state, token) => {
state.clientToken = token
},
SET_EXPIRES_IN: (state, time) => { SET_EXPIRES_IN: (state, time) => {
state.expires_in = time state.expires_in = time
}, },
@ -77,6 +82,30 @@ const user = {
}) })
}, },
SingleSignOnGetInfo({ commit, state },info) {
return new Promise((resolve, reject) => {
singleSigngetInfo({clientToken: info.clientToken}).then(res => {
// if (res.data.usertype && res.data.usertype.length > 0) { // 验证返回的roles是否是一个非空数组
// let roles = [];
// roles.push(res.data.usertype)
// commit('SET_ROLES', roles)
// } else {
// commit('SET_ROLES', ['ROLE_DEFAULT'])
// }
setClientToken(info.clientToken)
commit('SET_CLIENTTOKEN', res.data.token)
setToken(res.data.token)
commit('SET_TOKEN', res.data.token)
// commit('SET_USERTYPE', res.data.usertype)
// console.log(res.data.usertype,"res.data.usertype");
// console.log(state.roles,"state.roles");
resolve()
}).catch(error => {
reject(error)
})
})
},
// 获取用户信息 // 获取用户信息
GetInfo({ commit, state }) { GetInfo({ commit, state }) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
@ -118,17 +147,35 @@ const user = {
// 退出系统 // 退出系统
LogOut({ commit, state }) { LogOut({ commit, state }) {
return new Promise((resolve, reject) => { if(state.userType == "01") {
logout(state.token).then(() => { return new Promise((resolve, reject) => {
commit('SET_TOKEN', '') enterpriseLogout({clienttoken: state.clientToken}).then(()=>{
commit('SET_ROLES', []) commit('SET_CLIENTTOKEN', '')
commit('SET_PERMISSIONS', []) removeClientToken()
removeToken() logout(state.token).then(() => {
resolve() commit('SET_TOKEN', '')
}).catch(error => { commit('SET_ROLES', [])
reject(error) commit('SET_PERMISSIONS', [])
removeToken()
resolve()
})
}).catch(error => {
reject(error)
})
}) })
}) } else {
return new Promise((resolve, reject) => {
logout(state.token).then(() => {
commit('SET_TOKEN', '')
commit('SET_ROLES', [])
commit('SET_PERMISSIONS', [])
removeToken()
resolve()
}).catch(error => {
reject(error)
})
})
}
}, },
// 前端 登出 // 前端 登出

@ -1,7 +1,7 @@
import Cookies from 'js-cookie' import Cookies from 'js-cookie'
const TokenKey = 'Admin-Token' const TokenKey = 'Admin-Token'
const ClientToken = 'ClientToken'
const ExpiresInKey = 'Admin-Expires-In' const ExpiresInKey = 'Admin-Expires-In'
export function getToken() { export function getToken() {
return Cookies.get(TokenKey) return Cookies.get(TokenKey)
@ -26,3 +26,17 @@ export function setExpiresIn(time) {
export function removeExpiresIn() { export function removeExpiresIn() {
return Cookies.remove(ExpiresInKey) return Cookies.remove(ExpiresInKey)
} }
// 企业端登录的clientToken
export function getClientToken() {
return Cookies.get(ClientToken)
}
export function setClientToken(token) {
return Cookies.set(ClientToken, token)
}
export function removeClientToken() {
return Cookies.remove(ClientToken)
}

@ -16,23 +16,106 @@
<div v-for="(item,index) in tabs" :key="index" class="tabs-top-item" :class="active == index ? 'active-item' : ''" @click="active = index">{{ item.name }}</div> <div v-for="(item,index) in tabs" :key="index" class="tabs-top-item" :class="active == index ? 'active-item' : ''" @click="active = index">{{ item.name }}</div>
</div> </div>
<div class="tabs-bottom" :style="tabStyle"> <div class="tabs-bottom" :style="tabStyle">
<tab-one v-if="active == 0"></tab-one> <tab-one v-if="active == 0" :detailedInfo="info"></tab-one>
<tab-two v-if="active == 1" :creditCode="$route.query.creditCode"></tab-two> <tab-two v-if="active == 1" :creditCode="$route.query.creditCode"></tab-two>
<tab-three v-if="active == 2" :creditCode="$route.query.creditCode"></tab-three> <tab-three v-if="active == 2" :creditCode="$route.query.creditCode"></tab-three>
<tab-four v-if="active == 3" :id="$route.query.userId"></tab-four> <tab-four v-if="active == 3" :id="$route.query.userId"></tab-four>
</div> </div>
</div> </div>
<div class="enter-footTabs"> <div class="enter-footTabs" v-if="userType == '02'">
<el-button type="primary" @click="goBack"></el-button> <el-button type="primary" @click="goBack"></el-button>
<el-button type="primary">导出企业清单</el-button> <el-button type="primary">导出企业清单</el-button>
</div> </div>
<div class="enter-footTabs" v-else>
<el-button type="primary" @click="goBack"></el-button>
<el-button type="primary" @click="editEnterInfo"></el-button>
</div>
</el-col> </el-col>
</el-row> </el-row>
<!-- 编辑企业信息 -->
<my-dialog title="编辑企业信息" @close="importClose" @confirm="confirm" ref="importProject" closeText="关闭" :myclass="true">
<el-form :model="addFrom" size="small" ref="importFrom" label-width="180px" :rules="rules" class="newArticle">
<el-row>
<el-col :span="12">
<el-form-item label="企业名称:" class="importFormItem" prop="enterpriseName">
<el-input v-model.trim="addFrom.enterpriseName" placeholder="请输入内容" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="法定代表人:" class="importFormItem" prop="legalEntity">
<el-input v-model.trim="addFrom.legalEntity" placeholder="请输入常用联系人名称"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="企业统一社会信用代码:" class="importFormItem" prop="creditCode">
<el-input v-model.trim="addFrom.creditCode" placeholder="请输入内容" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="企业类型:" class="importFormItem" prop="enterpriseType">
<el-input v-model.trim="addFrom.enterpriseType" placeholder="请输入常用联系人公司职务"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="注册资本:" class="importFormItem" prop="registeredCapital">
<el-input v-model.trim="addFrom.registeredCapital" placeholder="请输入常用联系人手机号码"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="所属行业:" class="importFormItem" prop="industry">
<el-input v-model.trim="addFrom.industry" placeholder="请输入常用联系人邮箱"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="成立日期:" class="importFormItem" prop="establishDate">
<!-- <el-input v-model.trim="addFrom.establishDate" placeholder="请输入常用联系人邮箱"></el-input> -->
<el-date-picker
class="ignoreElement"
v-model="addFrom.establishDate"
format="yyyy-MM-dd"
value-format="yyyy-MM-dd"
type="date"
placeholder="选择成立日期">
</el-date-picker>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="曾用名:" class="importFormItem" prop="formerName">
<el-input v-model.trim="addFrom.formerName" placeholder="请输入常用联系人邮箱"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="组织机构代码:" class="importFormItem" prop="institutionCode">
<el-input v-model.trim="addFrom.institutionCode" placeholder="请输入常用联系人邮箱"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="注册地址:" class="importFormItem" prop="enrollAddress">
<el-input v-model.trim="addFrom.enrollAddress" placeholder="请输入常用联系人邮箱"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="注册类型:" class="importFormItem" prop="enrollType">
<el-input v-model.trim="addFrom.enrollType" placeholder="请输入常用联系人邮箱"></el-input>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="经营范围:" class="importFormItem" prop="business">
<el-input v-model.trim="addFrom.business" placeholder="请输入常用联系人邮箱"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-form>
</my-dialog>
</div> </div>
</template> </template>
<script> <script>
import { tabOne, tabTwo, tabThree, tabFour, projectProgress } from "./components" import { tabOne, tabTwo, tabThree, tabFour, projectProgress } from "./components"
import { enterpriseBasicInfoId } from "@/api/jin_ji_hu/enterList" import { enterpriseBasicInfoId, enterpriseBasicInfoChange } from "@/api/jin_ji_hu/enterList"
import myDialog from "@/views/components/myDialog/index.vue"
export default { export default {
dicts: ['jjh_project_type','jjh_status'], dicts: ['jjh_project_type','jjh_status'],
components:{ components:{
@ -40,9 +123,12 @@ export default {
tabTwo, tabTwo,
tabThree, tabThree,
tabFour, tabFour,
myDialog
}, },
data() { data() {
return { return {
// 01 02
userType: this.$store.state.user.userType,
tabs:[ tabs:[
{ {
name: "基本信息", name: "基本信息",
@ -62,11 +148,67 @@ export default {
tabStyle:{ tabStyle:{
height:undefined, height:undefined,
overflow: 'auto' overflow: 'auto'
} },
addFrom: {
enterpriseName:"",
legalEntity:"",
creditCode:"",
enterpriseType:"",
registeredCapital:"",
industry:"",
establishDate:"",
formerName:"",
institutionCode:"",
enrollAddress:"",
enrollType:"",
business:"",
},
rules:{
enterpriseName:[
{ required: true, message: '请填写企业名称', trigger: 'blur' }
],
legalEntity:[
{ required: true, message: '请填写法定代表人', trigger: 'blur' }
],
creditCode:[
{ required: true, message: '请填写统一社会信用代码', trigger: 'blur' }
],
enterpriseType:[
{ required: true, message: '请填写企业类型', trigger: 'blur' }
],
registeredCapital:[
{ required: true, message: '请填写注册资本', trigger: 'blur' }
],
industry:[
{ required: true, message: '请填写所属行业', trigger: 'blur' }
],
establishDate:[
{ required: true, message: '请填写成立日期', trigger: 'blur' }
],
formerName:[
{ required: true, message: '请填写曾用名', trigger: 'blur' }
],
institutionCode:[
{ required: true, message: '请填写组织机构代码', trigger: 'blur' }
],
enrollAddress:[
{ required: true, message: '请填写注册地址', trigger: 'blur' }
],
enrollType:[
{ required: true, message: '请填写注册类型', trigger: 'blur' }
],
business:[
{ required: true, message: '请填写经营范围', trigger: 'blur' }
],
},
} }
}, },
mounted(){ mounted(){
this.getInfo(this.$route.query.userId) if(this.userType == '02') {
this.getInfo(this.$route.query.userId)
} else {
this.getInfo(this.$store.state.user.enterpriseId)
}
this.cancalDebounce(); this.cancalDebounce();
window.addEventListener('resize', this.cancalDebounce); window.addEventListener('resize', this.cancalDebounce);
}, },
@ -79,16 +221,53 @@ export default {
enterpriseBasicInfoId(id).then(res=>{ enterpriseBasicInfoId(id).then(res=>{
this.info = res.data; this.info = res.data;
this.loading = false; this.loading = false;
// this.detailedInfo = JSON.parse(res.data.otherJson);
// this.fileJson = JSON.parse(res.data.fileJson);
// for (var key in obj) {
// if (obj.hasOwnProperty(key)) {
// var value = obj[key];
// console.log(key + ': ' + value);
// }
// }
}) })
}, },
//
importClose(){
this.$nextTick(()=>{
this.$refs.importFrom.resetFields();
this.$refs.importProject.close();
this.addFrom = {
enterpriseName:"",
legalEntity:"",
creditCode:"",
enterpriseType:"",
registeredCapital:"",
industry:"",
establishDate:"",
formerName:"",
institutionCode:"",
enrollAddress:"",
enrollType:"",
business:"",
}
})
},
//
editEnterInfo(){
this.addFrom = this.info;
this.$refs.importProject.open();
},
//
confirm(){
this.$refs.importFrom.validate((valid) => {
if (valid) {
enterpriseBasicInfoChange(this.addFrom).then((res)=>{
if(res.code == 200) {
this.getInfo(this.$store.state.user.enterpriseId);
this.importClose();
this.$message({
type: "success",
message: "修改成功!",
});
}
})
} else {
return false;
}
});
},
goBack(){ goBack(){
this.$router.back(); this.$router.back();
}, },

@ -67,10 +67,10 @@
<my-pagination <my-pagination
id="L-pagination" id="L-pagination"
:total="total" :total="total"
:page="pagination.current" :page="pagination.pageNum"
:limit="pagination.size" :limit="pagination.pageSize"
@pagination="getPagination" @pagination="getPagination"
:current-page.sync="pagination.current" :current-page.sync="pagination.pageNum"
></my-pagination> ></my-pagination>
</section> </section>
</div> </div>
@ -136,8 +136,8 @@ export default {
deptId: this.$store.state.user.deptId, deptId: this.$store.state.user.deptId,
total:0, total:0,
pagination: { pagination: {
current:1, pageNum:1,
size:10, pageSize:10,
}, },
loading:false, loading:false,
formInline: { formInline: {
@ -214,15 +214,15 @@ export default {
}, },
// //
getPagination(pages) { getPagination(pages) {
this.pagination.current = pages.page; this.pagination.pageNum = pages.page;
this.pagination.size = pages.limit; this.pagination.pageSize = pages.limit;
this.getList(); this.getList();
}, },
// //
handleQuery() { handleQuery() {
this.pagination = { this.pagination = {
current: 1, pageNum: 1,
size: 10 pageSize: 10
} }
this.pagination = { ...this.pagination,...this.formInline }; this.pagination = { ...this.pagination,...this.formInline };
// console.log(this.pagination); // console.log(this.pagination);
@ -233,8 +233,8 @@ export default {
resetQuery(formName){ resetQuery(formName){
this.$refs[formName].resetFields(); this.$refs[formName].resetFields();
this.pagination = { this.pagination = {
current: 1, pageNum: 1,
size: 10 pageSize: 10
} }
this.getList(); this.getList();
}, },

@ -2,13 +2,13 @@
<div class="L-public-main" id="L-size-main"> <div class="L-public-main" id="L-size-main">
<div class="L-main"> <div class="L-main">
<header id="L-header"> <header id="L-header">
<el-form :inline="true" :model="formInline" size="small" class="demo-form-inline" ref="queryFrom" :disabled="userType == '01' ? true : false"> <el-form :inline="true" :model="formInline" size="small" class="demo-form-inline" ref="queryFrom">
<el-col :span="22"> <el-col :span="22">
<el-form-item label="企业名称:" prop="enterpriseName"> <el-form-item label="企业名称:" prop="enterpriseName">
<el-input v-model.trim="formInline.enterpriseName" placeholder="请输入内容"></el-input> <el-input v-model.trim="formInline.enterpriseName" placeholder="请输入内容" :disabled="userType == '01' ? true : false"></el-input>
</el-form-item> </el-form-item>
<el-form-item label="统一社会信用代码:" prop="enterpriseCode"> <el-form-item label="统一社会信用代码:" prop="enterpriseCode">
<el-input v-model.trim="formInline.enterpriseCode" placeholder="请输入内容"></el-input> <el-input v-model.trim="formInline.enterpriseCode" placeholder="请输入内容" :disabled="userType == '01' ? true : false"></el-input>
</el-form-item> </el-form-item>
<!-- <el-form-item label="政策等级:" prop="policyLevel"> <!-- <el-form-item label="政策等级:" prop="policyLevel">
<el-select class="ignoreElement" v-model="formInline.policyLevel" placeholder="请选择"> <el-select class="ignoreElement" v-model="formInline.policyLevel" placeholder="请选择">

@ -11,7 +11,7 @@
<el-tab-pane label="企业用户登录" name="01"></el-tab-pane> <el-tab-pane label="企业用户登录" name="01"></el-tab-pane>
<el-tab-pane label="政务用户登录" name="02"></el-tab-pane> <el-tab-pane label="政务用户登录" name="02"></el-tab-pane>
</el-tabs> </el-tabs>
<el-form-item prop="username"> <el-form-item prop="username" v-show="userType == '02'">
<el-input <el-input
v-model="loginForm.username" v-model="loginForm.username"
type="text" type="text"
@ -25,7 +25,7 @@
/> />
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item prop="password"> <el-form-item prop="password" v-show="userType == '02'">
<el-input <el-input
v-model="loginForm.password" v-model="loginForm.password"
type="password" type="password"
@ -40,7 +40,7 @@
/> />
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item prop="code" v-if="captchaEnabled"> <el-form-item prop="code" v-if="captchaEnabled && userType == '02'">
<el-input <el-input
v-model="loginForm.code" v-model="loginForm.code"
auto-complete="off" auto-complete="off"
@ -60,10 +60,11 @@
</el-form-item> </el-form-item>
<el-checkbox <el-checkbox
v-model="loginForm.rememberMe" v-model="loginForm.rememberMe"
v-show="userType == '02'"
style="margin: 0px 0px 25px 0px" style="margin: 0px 0px 25px 0px"
>记住密码</el-checkbox >记住密码</el-checkbox
> >
<el-form-item style="width: 100%"> <el-form-item style="width: 100%" v-if="userType == '02'">
<el-button <el-button
:loading="loading" :loading="loading"
size="medium" size="medium"
@ -80,6 +81,20 @@
> >
</div> </div>
</el-form-item> </el-form-item>
<el-form-item style="width: 100%" v-else class="enterBtnLogin">
<div class="wai-box">
<el-button
:loading="loading"
size="medium"
type="primary"
style="width: 100%"
@click.native.prevent="handleLogin"
>
<span v-if="!loading"></span>
<span v-else> ...</span>
</el-button>
</div>
</el-form-item>
</el-form> </el-form>
<!-- 底部 --> <!-- 底部 -->
<!-- <div class="el-login-footer"> <!-- <div class="el-login-footer">
@ -158,35 +173,39 @@ export default {
}; };
}, },
handleLogin() { handleLogin() {
this.$refs.loginForm.validate((valid) => { if(this.userType == '01') {
if (valid) { location.href = process.env.VUE_APP_BASE_API + "/system/singlelogin/login"
this.loading = true; } else {
if (this.loginForm.rememberMe) { this.$refs.loginForm.validate((valid) => {
Cookies.set("username", this.loginForm.username, { expires: 30 }); if (valid) {
Cookies.set("password", encrypt(this.loginForm.password), { this.loading = true;
expires: 30, if (this.loginForm.rememberMe) {
}); Cookies.set("username", this.loginForm.username, { expires: 30 });
Cookies.set("rememberMe", this.loginForm.rememberMe, { Cookies.set("password", encrypt(this.loginForm.password), {
expires: 30, expires: 30,
}); });
} else { Cookies.set("rememberMe", this.loginForm.rememberMe, {
Cookies.remove("username"); expires: 30,
Cookies.remove("password"); });
Cookies.remove("rememberMe"); } else {
Cookies.remove("username");
Cookies.remove("password");
Cookies.remove("rememberMe");
}
this.$store
.dispatch("Login", {...this.loginForm,userType:this.userType})
.then(() => {
this.$router.push({ path: this.redirect || "/" }).catch(() => {});
})
.catch(() => {
this.loading = false;
if (this.captchaEnabled) {
this.getCode();
}
});
} }
this.$store });
.dispatch("Login", {...this.loginForm,userType:this.userType}) }
.then(() => {
this.$router.push({ path: this.redirect || "/" }).catch(() => {});
})
.catch(() => {
this.loading = false;
if (this.captchaEnabled) {
this.getCode();
}
});
}
});
}, },
}, },
}; };
@ -205,6 +224,14 @@ export default {
color: #707070; color: #707070;
} }
.enterBtnLogin {
height: 100%;
.wai-box {
height: 100%;
margin-top: 30%;
}
}
.login-form { .login-form {
position: absolute; position: absolute;
top: 45%; top: 45%;
@ -213,6 +240,7 @@ export default {
border-radius: 6px; border-radius: 6px;
background: #ffffff; background: #ffffff;
width: 400px; width: 400px;
height: 380px;
padding: 25px 25px 5px 25px; padding: 25px 25px 5px 25px;
box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.15); box-shadow: 0 4px 20px 0 rgba(0, 0, 0, 0.15);
.el-input { .el-input {

@ -52,13 +52,13 @@
<section> <section>
<el-table v-loading="loading" :data="tableData" :row-class-name="tableRowClassName" :height="tabHeader" :max-height="tabHeader"> <el-table v-loading="loading" :data="tableData" :row-class-name="tableRowClassName" :height="tabHeader" :max-height="tabHeader">
<el-table-column label="政策文件名称" width="500px" prop="name" /> <el-table-column label="政策文件名称" width="500px" prop="name" />
<el-table-column label="关联项目" width="450px" prop="joinProject"> <!-- <el-table-column label="关联项目" width="450px" prop="joinProject">
<template slot-scope="scope"> <template slot-scope="scope">
<div class="project-name" @click="goToProject(scope.row.joinProject)"> <div class="project-name" @click="goToProject(scope.row.joinProject)">
<dict-tag :options="dict.type.jjh_project_type" :value="scope.row.joinProject"/> <dict-tag :options="dict.type.jjh_project_type" :value="scope.row.joinProject"/>
</div> </div>
</template> </template>
</el-table-column> </el-table-column> -->
<el-table-column label="发文单位" prop="enterUnit" /> <el-table-column label="发文单位" prop="enterUnit" />
<el-table-column label="政策等级" prop="policyLevel"> <el-table-column label="政策等级" prop="policyLevel">
<template slot-scope="scope"> <template slot-scope="scope">
@ -126,7 +126,7 @@
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row :gutter="20"> <!-- <el-row :gutter="20">
<el-col :span="12"> <el-col :span="12">
<el-form-item label="关联项目:" class="importFormItem" prop="joinProject"> <el-form-item label="关联项目:" class="importFormItem" prop="joinProject">
<el-select v-model="addFrom.joinProject" placeholder="请选择"> <el-select v-model="addFrom.joinProject" placeholder="请选择">
@ -139,7 +139,7 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row> -->
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="发文内容:" class="importFormItem" prop="enterContent"> <el-form-item label="发文内容:" class="importFormItem" prop="enterContent">
@ -221,9 +221,9 @@ export default {
name:[ name:[
{ required: true, message: '请填写政策文件名称', trigger: 'blur' } { required: true, message: '请填写政策文件名称', trigger: 'blur' }
], ],
joinProject:[ // joinProject:[
{ required: true, message: '请填写政策等级', trigger: 'blur' } // { required: true, message: '', trigger: 'blur' }
], // ],
enterUnit:[ enterUnit:[
{ required: true, message: '请填写发文单位', trigger: 'blur' } { required: true, message: '请填写发文单位', trigger: 'blur' }
], ],

@ -226,6 +226,8 @@ export default {
dicts: ['jjh_project_type', 'bms_approval_status'], dicts: ['jjh_project_type', 'bms_approval_status'],
data() { data() {
return { return {
// 01 02
userType: this.$store.state.user.userType,
total:0, total:0,
pagination: { pagination: {
current:1, current:1,
@ -295,6 +297,9 @@ export default {
this.formInline.projectName = this.$route.params.projectName; this.formInline.projectName = this.$route.params.projectName;
this.pagination = { ...this.pagination,...this.formInline }; this.pagination = { ...this.pagination,...this.formInline };
} }
if(this.userType == "01") {
this.pagination.creditCode = this.$store.state.user.name
}
this.cancalDebounce(); this.cancalDebounce();
window.addEventListener('resize', this.cancalDebounce); window.addEventListener('resize', this.cancalDebounce);

Loading…
Cancel
Save