Browse Source

基础信息

master
Zhao Qiqi 3 years ago
parent
commit
9de3022ceb
  1. 10
      anrui-base/anrui-base-ui/src/layout/components/Navbar.vue
  2. 18
      anrui-base/anrui-base-ui/src/layout/components/Sidebar/SidebarItem.vue
  3. 7
      anrui-base/anrui-base-ui/src/layout/components/TagsView/index.vue
  4. 4
      anrui-base/anrui-base-ui/src/main.js
  5. 263
      anrui-base/anrui-base-ui/src/router/index.js
  6. 50
      anrui-base/anrui-base-ui/src/views/changshang/changshangguanli/changshangguanli.vue
  7. 42
      anrui-base/anrui-base-ui/src/views/changshang/changshangguanli/changshangguanliAdd.vue
  8. 8
      anrui-base/anrui-base-ui/src/views/changshang/changshangguanli/changshanglook.vue
  9. 14
      anrui-base/anrui-base-ui/src/views/guakaogongsi/guakaogongsiguanli/guakaogongsiAdd.vue
  10. 33
      anrui-base/anrui-base-ui/src/views/guakaogongsi/guakaogongsiguanli/guakaogongsiguanli.vue

10
anrui-base/anrui-base-ui/src/layout/components/Navbar.vue

@ -3,13 +3,14 @@
<div class="navbar">
<h3 class="breadcrumb-container">安瑞集团信息化平台</h3>
<div class="right-menu">
<p>{{Orgname}} {{departmentName}} 欢迎, {{name}}</p>
<!-- <p>{{Orgname}} {{departmentName}} 欢迎, {{name}}</p>-->
<p>欢迎您{{pNameAndDepartmentNameAndPostName}} {{name}}</p>
<img src="@/assets/images/info.png">
<!-- <img src="@/assets/images/dy.png" @click="logout"> -->
<span class="backToHome" @click="logout"><i class="el-icon-back"></i>返回首页</span>
</div>
</div>
<el-footer class="footer" height="40px">Copyright © 2021 安瑞集团 All Rights Reserved</el-footer>
<el-footer class="footer" height="40px">Copyright © {{ year }} 安瑞集团 All Rights Reserved</el-footer>
</div>
</template>
@ -20,12 +21,17 @@ export default {
Orgname: '',
departmentName: '',
name: '',
year:'',
pNameAndDepartmentNameAndPostName:''
}
},
mounted() {
this.Orgname = window.sessionStorage.getItem('Orgname')
this.departmentName = window.sessionStorage.getItem('departmentName')
this.name = window.sessionStorage.getItem('name')
this.pNameAndDepartmentNameAndPostName = window.sessionStorage.getItem('pNameAndDepartmentNameAndPostName')
var nowDate = new Date()
this.year = nowDate.getFullYear()
},
methods: {
logout() {

18
anrui-base/anrui-base-ui/src/layout/components/Sidebar/SidebarItem.vue

@ -25,7 +25,7 @@
<script>
import path from 'path'
import { isExternal } from '@/utils/validate'
import {isExternal} from '@/utils/validate'
import Item from './Item'
import AppLink from './Link'
import FixiOSBug from './FixiOSBug'
@ -97,3 +97,19 @@ export default {
}
}
</script>
<style scoped>
/deep/ .el-submenu__title {
height: 36px !important;
line-height: 36px !important;
}
/deep/ .el-submenu .el-menu-item {
height: 30px !important;
line-height: 30px !important;
}
/deep/ .el-menu-item {
height: 30px !important;
line-height: 30px !important;
}
</style>

7
anrui-base/anrui-base-ui/src/layout/components/TagsView/index.vue

@ -26,19 +26,19 @@
</el-dropdown>
</div>-->
<!--
<ul v-show="visible" :style="{left:left+'px',top:top+'px'}" class="contextmenu">
<li @click="refreshSelectedTag(selectedTag)">刷新</li>
<li v-if="!isAffix(selectedTag)" @click="closeSelectedTag(selectedTag)">关闭</li>
<li @click="closeOthersTags">关闭其他</li>
<li @click="closeAllTags(selectedTag)">关闭所有</li>
</ul>-->
</ul>
</div>
</template>
<script>
import ScrollPane from './ScrollPane'
import path from 'path'
export default {
components: { ScrollPane },
data() {
@ -137,6 +137,7 @@ export default {
refreshSelectedTag(view) {
this.$store.dispatch('tagsView/delCachedView', view).then(() => {
const { fullPath } = view
console.log('112233',view)
this.$nextTick(() => {
this.$router.replace({
path: '/redirect' + fullPath
@ -191,7 +192,7 @@ export default {
} else {
this.left = left
}
this.top = e.clientY
this.top = e.clientY -32
this.visible = true
this.selectedTag = tag
},

4
anrui-base/anrui-base-ui/src/main.js

@ -67,7 +67,8 @@ function getUserInfo() {
Orgname: data.organizationName,
dwjb: data.dwjb,
orgNamePath: data.orgNamePath, // 使用组织全路径名称
orgSidPath: data.orgSidPath // 使用组织全路径Sid
orgSidPath: data.orgSidPath, // 使用组织全路径Sid
pNameAndDepartmentNameAndPostName:data.pNameAndDepartmentNameAndPostName
};
// 结果存入缓存
window.sessionStorage.setItem('staffSid', user.staffSid)
@ -81,6 +82,7 @@ function getUserInfo() {
window.sessionStorage.setItem('departmentSid', user.departmentSid)
window.sessionStorage.setItem('orgNamePath', user.orgNamePath)
window.sessionStorage.setItem('orgSidPath', user.orgSidPath)
window.sessionStorage.setItem('pNameAndDepartmentNameAndPostName', user.pNameAndDepartmentNameAndPostName)
})
}
getUserInfo()

263
anrui-base/anrui-base-ui/src/router/index.js

@ -1,63 +1,52 @@
import Vue from 'vue'
import Router from 'vue-router'
/* Layout */
import Layout from '@/layout'
Vue.use(Router)
/* Layout */
import Layout from '@/layout'
/* 所有角色可以访问/没有权限要求的基页 */
export const constantRoutes = [
{
path: '/',
redirect: 'index'
},
{
path: '/login',
component: () => import('@/views/login/login.vue')
},
{
path: '/home',
component: () => import('@/views/Home/Home.vue'),
name: 'home'
{
path: '/',
redirect: 'index'
},
{
path: '/login',
component: () => import('@/views/login/login.vue')
},
{
path: '/home',
component: () => import('@/views/Home/Home.vue'),
name: 'home'
},
{
path: '/index',
component: Layout,
redirect: '/index',
children: [{
path: '/index',
component: () =>
import('@/views/index.vue'),
name: 'index',
meta: {
title: '主页',
noCache: true,
affix: true
}
}]
},
}, {
path: '/index',
component: Layout,
redirect: '/index',
children: [{
path: '/index',
component: () =>
import('@/views/index.vue'),
name: 'index',
meta: {
title: '主页',
noCache: true,
affix: true
}
}]
},
// 1厂商管理
{
path: '/changshang',
component: Layout,
redirect: '/changshang',
meta: {
title: '厂商管理'
},
children: [
{
path: '/changshang/changshang',
component: () =>
import('@/views/changshang/changshang.vue'),
name: 'changshang',
hidden: true,
meta: {
title: '厂商管理'
}
},
// 1厂商管理
{
path: '/changshang',
component: Layout,
redirect: '/changshang',
meta: {
title: '厂商管理',
},
children: [
{
path: '/changshang/changshangguanli',
component: () =>
@ -67,36 +56,6 @@ export const constantRoutes = [
title: '厂商管理'
}
},
{
path: '/changshang/changshangguanliAdd/:id',
component: () =>
import('@/views/changshang/changshangguanli/changshangguanliAdd.vue'),
name: 'changshangguanliAdd',
hidden: true,
meta: {
title: '基础信息管理'
}
},
{
path: '/changshang/caiwuxinxiAdd',
component: () =>
import('@/views/changshang/caiwuxinxi/caiwuxinxiAdd.vue'),
name: 'caiwuxinxiAdd',
hidden: true,
meta: {
title: '财务信息管理'
}
},
{
path: '/changshang/kaihuhangAdd',
component: () =>
import('@/views/changshang/kaihuhang/kaihuhangAdd.vue'),
name: 'kaihuhangAdd',
hidden: true,
meta: {
title: '开户行信息管理'
}
}
]
},
// 2品牌管理
@ -149,147 +108,6 @@ export const constantRoutes = [
}
]
},
// 3车辆管理
{
path: '/cheliang',
component: Layout,
redirect: '/cheliang',
meta: {
title: '车辆管理'
},
children: [
{
path: '/cheliang/chexing',
component: () =>
import('@/views/cheliang/chexing/chexing.vue'),
name: 'chexing',
meta: {
title: '车型管理'
}
},
{
path: '/cheliang/chexingAdd/:id',
component: () =>
import('@/views/cheliang/chexing/chexingAdd.vue'),
name: 'chexingAdd',
hidden: true,
meta: {
title: '车型信息'
}
},
{
path: '/cheliang/chexinglook',
component: () =>
import('@/views/cheliang/chexing/chexinglook.vue'),
name: 'chexinglook',
hidden: true,
meta: {
title: '车型查看'
}
},
// 车型配置
{
path: '/cheliang/chexingpeizhi',
component: () =>
import('@/views/cheliang/chexingpeizhi/chexingpeizhi.vue'),
name: 'chexingpeizhi',
meta: {
title: '车型配置管理'
}
},
{
path: '/cheliang/chexingpeizhiAdd/:id',
component: () =>
import('@/views/cheliang/chexingpeizhi/chexingpeizhiAdd.vue'),
name: 'chexingpeizhiAdd',
hidden: true,
meta: {
title: '车型配置添加'
}
},
{
path: '/cheliang/chexingpeizhiInfo',
component: () =>
import('@/views/cheliang/chexingpeizhi/chexingpeizhiInfo.vue'),
name: 'chexingpeizhiInfo',
hidden: true,
meta: {
title: '车型配置详情'
}
},
// 车辆台账
{
path: '/cheliang/cheliangtaizhang',
component: () =>
import('@/views/cheliang/cheliangtaizhang/cheliangtaizhang.vue'),
name: 'cheliangtaizhang',
meta: {
title: '车辆台账'
}
},
{
path: '/cheliang/cheliangtaizhangAdd/:id',
component: () =>
import('@/views/cheliang/cheliangtaizhang/cheliangtaizhangAdd.vue'),
name: 'cheliangtaizhangAdd',
hidden: true,
meta: {
title: '车辆台账'
}
},
{
path: '/cheliang/cheliangtaizhangInfo',
component: () =>
import('@/views/cheliang/cheliangtaizhang/cheliangtaizhangInfo.vue'),
name: 'cheliangtaizhangInfo',
hidden: true,
meta: {
title: '车辆台账详情'
}
},
{
path: '/cheliang/xiangxipeizhi',
component: () =>
import('@/views/cheliang/cheliangtaizhang/xiangxipeizhi.vue'),
name: 'xiangxipeizhi',
hidden: true,
meta: {
title: '详情配置'
}
},
// 合格证台账
{
path: '/cheliang/hegezhengtaizhang',
component: () =>
import('@/views/cheliang/hegezhengtaizhang/hegezhengtaizhang.vue'),
name: 'hegezhengtaizhang',
meta: {
title: '合格证台账'
}
},
{
path: '/cheliang/hegezhengtaizhangAdd/:id',
component: () =>
import('@/views/cheliang/hegezhengtaizhang/hegezhengtaizhangAdd.vue'),
name: 'hegezhengtaizhangAdd',
hidden: true,
meta: {
title: '合格证台账信息'
}
},
{
path: '/cheliang/hegezhengInfo',
component: () =>
import('@/views/cheliang/hegezhengtaizhang/hegezhengInfo.vue'),
name: 'hegezhengInfo',
hidden: true,
meta: {
title: '合格证台账查看'
}
}
]
},
// 4经销商管理
{
path: '/jingxiaoshang',
@ -410,7 +228,6 @@ export const constantRoutes = [
title: '任务处理'
}
}
]
},
// 6资方管理
@ -511,8 +328,6 @@ export const constantRoutes = [
// { path: '*', redirect: '/404', hidden: true }
]
import componentsRouter from '@/router/modules/components'
const createRouter = () => new Router({
// mode: 'history', // require service support
scrollBehavior: () => ({ y: 0 }),

50
anrui-base/anrui-base-ui/src/views/changshang/changshangguanli/changshangguanli.vue

@ -1,17 +1,17 @@
<template>
<div class="app-container">
<!-- <changshang />-->
<div v-show="viewState === 1">
<div v-show="viewState == 1">
<button-bar view-title="厂商管理" ref="btnbar" :btndisabled="btndisabled" @btnhandle="btnHandle"/>
<div class="main-content">
<div class="searchcon">
<el-button size="small" class="searchbtn" @click="clicksearchShow">{{ searchxianshitit }}</el-button>
<div v-show="isSearchShow" class="search">
<el-form ref="listQueryform" :inline="true" :model="listQuery" label-width="100px" class="tab-header">
<el-form-item label="厂商名称">
<el-select v-model="listQuery.params.manufacturerName" filterable class="filter-item" clearable
placeholder="请选择厂商名称">
<el-option v-for="item in YongHu" :key="item.sid" :label="item.manufacturerName"
<el-button size="small" class="searchbtn" @click="clicksearchShow">{{ searchxianshitit }}</el-button>
<div v-show="isSearchShow" class="search">
<el-form ref="listQueryform" :inline="true" :model="listQuery" label-width="100px" class="tab-header">
<el-form-item label="厂商名称">
<el-select v-model="listQuery.params.manufacturerName" filterable class="filter-item" clearable
placeholder="请选择厂商名称">
<el-option v-for="item in YongHu" :key="item.sid" :label="item.manufacturerName"
:value="item.manufacturerName"/>
</el-select>
</el-form-item>
@ -57,40 +57,40 @@
<el-table-column label="序号" fixed type="index" width="80" :index="indexMethod" align="center"/>
<el-table-column label="操作" fixed align="center" width="90px" class-name="small-padding fixed-width">
<template slot-scope="{row}">
<el-button size="mini" type="primary" @click="handleEdit(row)">办理</el-button>
<el-button size="mini" type="primary" @click="handleEdit(row)">编辑</el-button>
</template>
</el-table-column>
<el-table-column prop="jc" label="厂商名称" width="190" align="center">
<el-table-column prop="jc" label="厂商名称" width="180" align="center">
<template slot-scope="scope">
<span class="bluezi" @click="handleCheck(scope.row)">{{ scope.row.manufacturerName }}</span>
</template>
</el-table-column>
<el-table-column label="厂商分类" width="200" align="center"> <!-- ? -->
<el-table-column label="厂商分类" width="110" align="center"> <!-- ? -->
<template slot-scope="scope">
<span>{{ scope.row.supplierTypeValue }}</span>
</template>
</el-table-column>
<el-table-column label="厂商通讯地址" width="380" align="center">
<el-table-column label="厂商通讯地址" width="" align="left">
<template slot-scope="scope">
<span>{{ scope.row.manufacturerAddress }}</span>
</template>
</el-table-column>
<el-table-column label="厂商办公电话" width="200" align="center">
<el-table-column label="厂商办公电话" width="180" align="center">
<template slot-scope="scope">
<span>{{ scope.row.manufacturerTelePhone }}</span>
</template>
</el-table-column>
<el-table-column label="联系人姓名" width="180" align="center">
<el-table-column label="联系人姓名" width="120" align="center">
<template slot-scope="scope">
<span>{{ scope.row.contactName }}</span>
</template>
</el-table-column>
<el-table-column label="联系人手机号码" width="200" align="center">
<el-table-column label="联系人手机号码" width="140" align="center">
<template slot-scope="scope">
<span>{{ scope.row.contactMobile }}</span>
</template>
</el-table-column>
<el-table-column label="所属分公司" width="200" align="center"> <!-- ? -->
<el-table-column label="所属分公司" width="160" align="center"> <!-- ? -->
<template slot-scope="scope">
<span>{{ scope.row.createOrgName }}</span>
</template>
@ -264,15 +264,15 @@ export default {
// ------------------------------------
}
},
computed: {
...mapGetters([
'id',
'roles',
'rolesIds',
'departmentId',
'departmentCode'
])
},
// computed: {
// ...mapGetters([
// 'id',
// 'roles',
// 'rolesIds',
// 'departmentId',
// 'departmentCode'
// ])
// },
mounted() {
this.$refs["btnbar"].setButtonList(this.btnList)
},

42
anrui-base/anrui-base-ui/src/views/changshang/changshangguanli/changshangguanliAdd.vue

@ -12,7 +12,7 @@
</div>
</div>
<!-- 新增 修改 -->
<div class="listconsub">
<div class="listconadd">
<el-form ref="dataForm" :title="textMap[dialogStatus]" :model="temp" label-position="right" label-width="190px"
class="formadd" :rules="rules">
<div class="title">基本信息</div>
@ -391,13 +391,26 @@ export default {
callback();
}
};
// var validatePass2 = (rule, value, callback) => {
// const WeiXin = /^[a-zA-Z]{1}[-_a-zA-Z0-9]{5,19}$/;
// const phone = /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/;
// if (WeiXin.test(value) || phone.test(value)) {
// return callback();
// }
// callback(new Error(""));
// };
var validatePass2 = (rule, value, callback) => {
const WeiXin = /^[a-zA-Z]{1}[-_a-zA-Z0-9]{5,19}$/;
const WeiXin = /^[a-zA-Z][a-zA-Z\d_-]{5,19}$/;
const phone = /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/;
if (WeiXin.test(value) || phone.test(value)) {
return callback();
if (value) {
//
if (!WeiXin.test(value) && !phone.test(value)) {
callback(new Error("请输入正确的微信号码"));
}
callback();
} else {
callback();
}
callback(new Error("请输入微信号"));
};
var checkYouBian = (rule, value, callback) => {
const YouBian = /^[0-9]{6}$/;
@ -413,6 +426,18 @@ export default {
}
callback(new Error("请输入办公电话"));
};
var checkContenTel = (rule, value, callback) => {
const BanGongDianHua = /\d{3}-\d{8}|\d{4}-\d{7}/;
if (value) {
//
if (!BanGongDianHua.test(value)) {
callback(new Error("请输入正确的办公电话格式"));
}
callback();
} else {
callback();
}
};
var checkChuanzhen = (rule, value, callback) => {
const BanGongDianHua = /\d{3}-\d{8}|\d{4}-\d{7}/;
if (value) {
@ -525,7 +550,8 @@ export default {
// trigger: 'blur'
// }],
weChatID: [{
required: true,
// required: true,
validator: validatePass2,
message: '请填写微信号',
trigger: 'blur'
}],
@ -570,8 +596,8 @@ export default {
trigger: 'blur'
}],
contactTelePhone: [{
required: true,
validator: checkBanGongDianHua,
// required: true,
validator: checkContenTel,
trigger: 'blur'
}],
supplyType: [{

8
anrui-base/anrui-base-ui/src/views/changshang/changshangguanli/changshanglook.vue

@ -9,7 +9,7 @@
>
</div>
</div>
<div class="listconsub">
<div class="listconadd">
<el-form ref="dataForm" :title="textMap[dialogStatus]" :model="temp" label-position="right" label-width="190px" class="formadd" :rules="rules">
<div class="title">基本信息</div>
<el-row>
@ -373,12 +373,6 @@ export default {
contactMobile: [
{ required: true, message: "请填写联系人手机号", trigger: "blur" },
],
contactTelePhone: [
{ required: true, message: "请填写联系人办公电话", trigger: "blur" },
],
weChatID: [
{ required: true, message: "请填写微信号", trigger: "blur" },
],
supplyType: [
{ required: true, message: "请填写供应类别", trigger: "blur" },
],

14
anrui-base/anrui-base-ui/src/views/guakaogongsi/guakaogongsiguanli/guakaogongsiAdd.vue

@ -101,7 +101,7 @@
</el-row>
<el-row>
<el-col :span="4" class="tleftb">
<span><span style="color: red">*</span>成立日期</span>
<span>成立日期</span>
</el-col>
<el-col :span="4">
<el-form-item prop="setUpTime">
@ -284,6 +284,7 @@
</template>
</el-table-column>
</el-table>
<div class="title">附件清单</div>
<div class="headline">
<div style="margin-left: 5px;font-weight: bold">营业执照</div>
<div>
@ -477,6 +478,13 @@ export default {
}
callback(new Error("请输入正确的身份证号"));
};
var checkKaipiaoDianhua = (rule, value, callback) => {
const BanGongDianHua = /\d{3}-\d{8}|\d{4}-\d{7}/;
if (BanGongDianHua.test(value)) {
return callback();
}
callback(new Error("请输入单位开票信息联系电话"));
};
return {
pickerOptions: {
disabledDate(time) {
@ -582,10 +590,10 @@ export default {
legalName: [{required: true, message: '请填写实际控制人姓名', trigger: 'blur'}],
legalIdCard: [{required: true, validator:checkIDcard,message: '请填写实际控制人身份证号码', trigger: 'blur'}],
legalMobile: [{required: true, validator: checkSubmit, message: '请填写实际控制人联系电话', trigger: 'blur'}],
invoPhone: [{required: true, validator: checkSubmit, message: '请填写开票人联系电话', trigger: 'change'}],
invoPhone: [{required: true, validator: checkKaipiaoDianhua, message: '请填写单位开票信息联系电话', trigger: 'change'}],
invoBank: [{required: true, message: '请填写开户行', trigger: 'blur'}],
invoBankNum: [{required: true, message: '请填写银行账号', trigger: 'blur'}],
setUpTime: [{required: true, message: '请选择成立日期', trigger: 'blur'}],
// setUpTime: [{required: true, message: '', trigger: 'blur'}],
}
// ------------------------------------
}

33
anrui-base/anrui-base-ui/src/views/guakaogongsi/guakaogongsiguanli/guakaogongsiguanli.vue

@ -61,8 +61,8 @@
<div class="listtop">
<div class="tit">经销商信息列表</div>
<div class="rel_css">
<span style="font-size: 16px">关联状态</span>
<el-select v-model="listQuery.params.relationState" class="filter-item" clearable placeholder="请选择关联关系"
<span style="font-size: 15px">关联状态</span>
<el-select v-model="listQuery.params.relationState" class="filter-item rel_btn" clearable placeholder="请选择关联关系"
@change="relationStateChange">
<el-option v-for="item in optionsRel" :key="item.key" :label="item.label" :value="item.key"/>
</el-select>
@ -443,16 +443,16 @@ export default {
},
handleEdit(row) {
this.dialogStatus = 'update'
if (row.isRelation == '0'){
this.viewState = 3
this.$refs['divAdd'].showEdit(row.sid)
} else {
this.$message({
showClose: true,
message: '所选经销商已关联二级经销商,无法修改!',
type: 'error'
});
}
// if (row.isRelation == '0'){
this.viewState = 3
this.$refs['divAdd'].showEdit(row.sid)
// } else {
// this.$message({
// showClose: true,
// message: '',
// type: 'error'
// });
// }
},
//
handleCheck(scope) {
@ -600,4 +600,13 @@ export default {
position: absolute;
right: 150px;
}
.rel_btn{
height: 28px;
}
.rel_btn /deep/ .el-input__inner{
height: 28px;
}
.rel_btn /deep/ .el-input__icon{
line-height: 28px;
}
</style>

Loading…
Cancel
Save