Commit e053a46c authored by rex's avatar rex

Merge branch 'dev' into 'master'

Dev

See merge request !1
parents 3b360dbc c5f411b9
{
"destinations": [
{
"name": "portal",
"type": "HTTP",
"proxyType": "Internet",
"authentication": "NoAuthentication",
"url": "https://devportal.wangyouyu.com/"
}
]
}
---
applications:
- name: portalhtml
routes:
- route: devcrm.wangyouyu.com
...@@ -2,7 +2,7 @@ import request from '@/utils/request' ...@@ -2,7 +2,7 @@ import request from '@/utils/request'
export function login(data) { export function login(data) {
return request({ return request({
url: '/index/login', url: '/login',
method: 'post', method: 'post',
data data
}) })
...@@ -18,7 +18,7 @@ export function login(data) { ...@@ -18,7 +18,7 @@ export function login(data) {
export function logout() { export function logout() {
return request({ return request({
url: '/index/logout', url: '/logout',
method: 'get' method: 'get'
}) })
} }
......
src/assets/images/login_top.png

133 KB | W: | H:

src/assets/images/login_top.png

10.1 KB | W: | H:

src/assets/images/login_top.png
src/assets/images/login_top.png
src/assets/images/login_top.png
src/assets/images/login_top.png
  • 2-up
  • Swipe
  • Onion skin
...@@ -213,7 +213,7 @@ export default { ...@@ -213,7 +213,7 @@ export default {
line-height: 50px; line-height: 50px;
color: #fff; color: #fff;
&:hover { &:hover {
background: #74bcff; background: #304156;
} }
} }
...@@ -252,14 +252,14 @@ export default { ...@@ -252,14 +252,14 @@ export default {
font-size: 14px; font-size: 14px;
cursor: pointer; cursor: pointer;
&:hover { &:hover {
background: #74bcff; background: #304156;
} }
span { span {
margin-left: 8px; margin-left: 8px;
} }
} }
.active-top-nav { .active-top-nav {
background: #74bcff; background: #304156;
font-weight: bold; font-weight: bold;
font-size: 15px; font-size: 15px;
} }
......
...@@ -45,7 +45,7 @@ export default { ...@@ -45,7 +45,7 @@ export default {
}, },
data() { data() {
return { return {
title: '国民技术CRM管理系统', title: '紫光计算机CRM管理系统',
logo: 'https://wpimg.wallstcn.com/69a1c46c-eb1c-4b46-8bd4-e9e686ef5251.png' logo: 'https://wpimg.wallstcn.com/69a1c46c-eb1c-4b46-8bd4-e9e686ef5251.png'
} }
} }
......
...@@ -8,23 +8,23 @@ import Layout from '@/layout' ...@@ -8,23 +8,23 @@ import Layout from '@/layout'
/* Router Modules */ /* Router Modules */
import customersRouter from './modules/customers' import customersRouter from './modules/customers'
import contractRouter from './modules/contract' // import contractRouter from './modules/contract'
import collectionRouter from './modules/collection' // import collectionRouter from './modules/collection'
import inventoryRouter from './modules/inventory' // import inventoryRouter from './modules/inventory'
import productsRouter from './modules/products' // import productsRouter from './modules/products'
import ordersRouter from './modules/orders' // import ordersRouter from './modules/orders'
import noticesRouter from './modules/notices' // import noticesRouter from './modules/notices'
import competitorsRouter from './modules/competitors' // import competitorsRouter from './modules/competitors'
import complaintRouter from './modules/complaint' // import complaintRouter from './modules/complaint'
import dailyRouter from './modules/daily' // import dailyRouter from './modules/daily'
import systemRouter from './modules/system' // import systemRouter from './modules/system'
import accountRouter from './modules/account' // import accountRouter from './modules/account'
import forecastRouter from './modules/forecast' // import forecastRouter from './modules/forecast'
import organizationRouter from './modules/organization' // import organizationRouter from './modules/organization'
// import nestedRouter from './modules/nested' // import nestedRouter from './modules/nested'
import flowRouter from './modules/flow' // import flowRouter from './modules/flow'
import quotedPriceRouter from './modules/quotedPrice' // import quotedPriceRouter from './modules/quotedPrice'
import invoiceRouter from './modules/invoice' // import invoiceRouter from './modules/invoice'
import messageRouter from './modules/message' import messageRouter from './modules/message'
/** /**
...@@ -70,6 +70,16 @@ export const constantRoutes = [ ...@@ -70,6 +70,16 @@ export const constantRoutes = [
component: () => import('@/views/login/index'), component: () => import('@/views/login/index'),
hidden: true hidden: true
}, },
{
path: '/prov-register',
component: () => import('@/views/login/prov-register/index'),
hidden: true
},
{
path: '/city-register',
component: () => import('@/views/login/city-register/index'),
hidden: true
},
{ {
path: '/auth-redirect', path: '/auth-redirect',
component: () => import('@/views/login/auth-redirect'), component: () => import('@/views/login/auth-redirect'),
...@@ -145,23 +155,23 @@ export const asyncRoutes = [ ...@@ -145,23 +155,23 @@ export const asyncRoutes = [
/** when your routing map is too long, you can split it into small modules **/ /** when your routing map is too long, you can split it into small modules **/
customersRouter, customersRouter,
contractRouter, // contractRouter,
collectionRouter, // collectionRouter,
inventoryRouter, // inventoryRouter,
productsRouter, // productsRouter,
quotedPriceRouter, // quotedPriceRouter,
invoiceRouter, // invoiceRouter,
ordersRouter, // ordersRouter,
noticesRouter, // noticesRouter,
competitorsRouter, // competitorsRouter,
complaintRouter, // complaintRouter,
dailyRouter, // dailyRouter,
systemRouter, // systemRouter,
accountRouter, // accountRouter,
organizationRouter, // organizationRouter,
forecastRouter, // forecastRouter,
// nestedRouter, // nestedRouter,
flowRouter, // flowRouter,
messageRouter, messageRouter,
// { // {
// path: '/permission', // path: '/permission',
......
...@@ -8,7 +8,7 @@ const customersRouter = { ...@@ -8,7 +8,7 @@ const customersRouter = {
redirect: '/customers/potential', redirect: '/customers/potential',
name: 'Customers', name: 'Customers',
meta: { meta: {
topTitle: '客户', topTitle: '代理商',
title: 'customers', title: 'customers',
icon: 'user' icon: 'user'
}, },
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
**/ **/
/* theme color */ /* theme color */
$--color-primary: #1890ff; $--color-primary: #A22796;
$--color-success: #13ce66; $--color-success: #13ce66;
$--color-warning: #ffba00; $--color-warning: #ffba00;
$--color-danger: #ff4949; $--color-danger: #ff4949;
......
<template>
<div class="register-container">
<div class="register-main">
<el-row class="border-bottom"><h4>城市代理商注册</h4></el-row>
<el-form id="registerForm" :model="formData" status-icon label-position="right">
<el-row class="border-bottom">
<el-col :span="24">
<el-form-item label="基本信息" />
</el-col>
<el-col :span="12" :offset="1" class="padding-bottom">
<el-form-item label="公司全称:" prop="name" label-width="150px" required>
<el-input v-model="formData.name" placeholder="点击查询获取公司信息,不可编辑" disabled style="width: 80%" class="filter-item" clearable />
</el-form-item>
</el-col>
<el-col :span="5" :offset="1" class="padding-bottom">
<el-button type="primary">查询</el-button>
</el-col>
<el-col :span="11" :offset="1" class="padding-bottom">
<el-form-item label="公司全称曾用名:" prop="shortName" label-width="150px">
<el-input v-model="formData.shortName" placeholder="" style="width: 80%" class="filter-item" clearable />
</el-form-item>
</el-col>
<el-col :span="11" class="padding-bottom">
<el-form-item label="统一社会信用代码:" label-width="150px" required>
<template>
<el-input v-model="formData.englishName" placeholder="企查查获取" style="width: 80%" class="filter-item" clearable />
</template>
</el-form-item>
</el-col>
<el-col :span="11" :offset="1" class="padding-bottom">
<el-form-item label="注册资本(万元):" label-width="150px" required>
<el-input v-model="formData.enterpriseCode" :disabled="inputEnter" style="width: 80%" placeholder="企查查获取" class="filter-item" clearable />
</el-form-item>
</el-col>
<el-col :span="11" class="padding-bottom">
<el-form-item label="法人:" label-width="150px" required>
<template>
<el-input v-model="formData.enterpriseCode" :disabled="inputEnter" style="width: 80%" placeholder="企查查获取" class="filter-item" clearable />
</template>
</el-form-item>
</el-col>
</el-row>
<el-row class="border-bottom">
<el-col :span="24">
<el-form-item label="地址信息" />
</el-col>
<el-col :span="7" :offset="1" class="padding-bottom">
<el-form-item label="省份:" prop="cerInfo.district" label-width="80px" required>
<el-cascader ref="cascader" v-model="countryArea" clearable style="width: 80%"/>
</el-form-item>
</el-col>
<el-col :span="7" class="padding-bottom">
<el-form-item label="地市:" prop="cerInfo.district" label-width="80px" required >
<el-cascader ref="cascader" v-model="countryArea" clearablestyle="width: 80%" />
</el-form-item>
</el-col>
<el-col :span="7" class="padding-bottom">
<el-form-item label="县市:" prop="cerInfo.district" label-width="80px" required>
<el-cascader ref="cascader" v-model="countryArea" clearable style="width: 80%" />
</el-form-item>
</el-col>
<el-col :span="20" :offset="1" class="padding-bottom">
<el-form-item label="详细经营地址:" label-width="150px" required>
<el-input v-model="formData.cerInfo" placeholder="" autocomplete="off" style="width: 80%" clearable />
</el-form-item>
</el-col>
</el-row>
<el-row class="border-bottom">
<el-col :span="24">
<el-form-item label="联系信息" />
</el-col>
<el-col :span="11" :offset="1" class="padding-bottom">
<el-form-item label="公司负责人姓名:" prop="legalPerson" label-width="150px" required>
<el-input v-model="formData.legalPerson" placeholder="" style="width: 80%" class="filter-item" clearable />
</el-form-item>
</el-col>
<el-col :span="12" class="padding-bottom">
<el-form-item label="公司负责人联系电话:" prop="legalEmail" label-width="160px" class="filter-icon-none" required>
<el-input v-model="formData.legalEmail" placeholder="" style="width: 80%" class="filter-item" clearable />
</el-form-item>
</el-col>
<!-- <el-col v-if="showForm.legalPersonNumber" :span="7" class="padding-bottom">
<el-form-item label="法人手机号" prop="legalIdPhone" label-width="100px" class="filter-icon-none">
<el-input v-model="supplierBase.legalIdPhone" placeholder="法人手机号" style="width: 83%" class="filter-item" clearable />
</el-form-item>
</el-col> -->
<el-col :span="15" :offset="1" class="padding-bottom">
<el-form-item label="公司负责人邮箱:" prop="legalIdCard" label-width="150px" class="filter-icon-none" required>
<el-input v-model="formData.legalIdCard" placeholder="" style="width: 52%" class="filter-item" clearable />
</el-form-item>
</el-col>
<el-col :span="11" :offset="1" class="padding-bottom">
<el-form-item label="Unis业务负责人姓名:" prop="email" label-width="160px" required>
<el-input v-model="formData.email" placeholder="" style="width: 80%" class="filter-item" clearable />
</el-form-item>
</el-col>
<el-col :span="11" class="padding-bottom">
<el-form-item label="Unis业务负责人电话:" prop="mobile" label-width="160px" required>
<el-input v-model="formData.mobile" placeholder="" style="width: 90%" class="filter-item" clearable />
</el-form-item>
</el-col>
<el-col :span="11" :offset="1" class="padding-bottom" >
<el-form-item label="Unis业务负责人邮箱:" prop="financerMobile" label-width="160px" class="filter-icon-none" required>
<el-input v-model="formData.financerMobile" placeholder="" style="width: 80%" class="filter-item" clearable />
</el-form-item>
</el-col>
</el-row>
<el-row >
<el-col :span="24">
<el-form-item label="上传附件" />
</el-col>
<el-col :span="11" :offset="1" class="padding-bottom">
<el-form-item label="营业执照:" prop="financerMobile" label-width="100px" class="filter-icon-none" required>
<el-upload
class="upload-demo"
action="https://jsonplaceholder.typicode.com/posts/"
:on-preview="handlePreview"
:on-remove="handleRemove"
:before-remove="beforeRemove"
multiple
:limit="3"
:on-exceed="handleExceed"
:file-list="fileList">
<el-button size="small" type="primary">点击上传</el-button>
</el-upload>
</el-form-item>
</el-col>
</el-row>
</el-form>
<el-row>
<el-col align="center">
<el-button type="primary" @click="handleNext">提交</el-button>
</el-col>
</el-row>
</div>
</div>
</template>
<script>
export default {
name: 'city-register',
data() {
return {
formData:{},
inputEnter:false,
countryArea:'',
title: '城市代理商注册',
loading: false,
fileList:[],
supplierBaseRules: {
name: [{ required: true, message: '请选择公司全称', trigger: ['change', 'blur'] }],
},
}
},
watch: {
},
created() {
},
methods: {
handlePreview(){},
handleRemove(){},
beforeRemove(){},
handleExceed(){},
fileList(){},
handleNext(){}
}
}
</script>
<style lang="scss" scoped>
.register-container {
margin: 10px auto;
padding: 0px 0px;
width: 1024px;
background-color: rgba(241, 243, 245, 0.877);
}
.register-main {
margin: 0px 30px;
padding: 15px 0px;
}
#registerForm .padding-bottom {
padding-bottom: 20px;
}
.border-bottom {
border-bottom: solid 2px #409eff;
}
</style>
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
<div class="title-container"> <div class="title-container">
<img src="../../assets/images/login_top.png"> <img src="../../assets/images/login_top.png">
<h3 class="title">客户关系管理系统</h3> <h3 class="title">客户关系管理系统</h3>
<h4 class="title-sub">Customer Relationship Management</h4> <!-- <h4 class="title-sub">Customer Relationship Management</h4> -->
<!-- <lang-select class="set-language" /> --> <!-- <lang-select class="set-language" /> -->
</div> </div>
...@@ -48,7 +48,12 @@ ...@@ -48,7 +48,12 @@
</el-form-item> </el-form-item>
</el-tooltip> </el-tooltip>
<el-button :loading="loading" type="primary" style="width:100%;margin-bottom:30px;" @click.native.prevent="handleLogin"> <el-button
:loading="loading"
type="primary"
style="width:100%;margin-bottom:30px;background-color:rgb(162,39,150);border:none"
@click.native.prevent="handleLogin"
>
{{ $t('login.logIn') }} {{ $t('login.logIn') }}
</el-button> </el-button>
...@@ -70,10 +75,10 @@ ...@@ -70,10 +75,10 @@
</div> --> </div> -->
</el-form> </el-form>
<div class="login-footer"> <!-- <div class="login-footer"> -->
<p>Copyright © www.nationstech.com, All Rights Reserved.</p> <!-- <p>Copyright © www.nationstech.com, All Rights Reserved.</p> -->
<p>创新服务全民</p> <!-- <p>创新服务全民</p>
</div> </div> -->
<!-- <el-dialog :title="$t('login.thirdparty')" :visible.sync="showDialog"> <!-- <el-dialog :title="$t('login.thirdparty')" :visible.sync="showDialog">
{{ $t('login.thirdpartyTips') }} {{ $t('login.thirdpartyTips') }}
...@@ -171,8 +176,8 @@ export default { ...@@ -171,8 +176,8 @@ export default {
if (valid) { if (valid) {
this.loading = true this.loading = true
const params = { const params = {
ext_EmployeeUserName_KUT: this.loginForm.username, extUserName_SDK: this.loginForm.username,
ext_EmployeePassword_KUT: this.loginForm.password extPassword_SDK: this.loginForm.password
} }
this.$store.dispatch('user/login', params) this.$store.dispatch('user/login', params)
.then(() => { .then(() => {
...@@ -224,7 +229,7 @@ export default { ...@@ -224,7 +229,7 @@ export default {
/* reset element-ui css */ /* reset element-ui css */
.login-container { .login-container {
background: url('../../assets/images/login_bg.png'); // background: url('../../assets/images/login_bg.png');
background-size: cover; background-size: cover;
.el-input { .el-input {
display: inline-block; display: inline-block;
...@@ -307,15 +312,15 @@ $dark_gray:#889aa4; ...@@ -307,15 +312,15 @@ $dark_gray:#889aa4;
.title-container { .title-container {
position: relative; position: relative;
margin: 50px auto;
img { img {
width: 80%; width: 50%;
margin-left: 10%; margin-left: 25%;
} }
.title { .title {
font-size: 36px; font-size: 20px;
color: #154188; // color: #154188;
margin: 0 auto 10px; margin: 20px auto;
text-align: center; text-align: center;
// font-family: '微软雅黑 Bold', '微软雅黑'; // font-family: '微软雅黑 Bold', '微软雅黑';
font-weight: 700; font-weight: 700;
......
This diff is collapsed.
...@@ -32,7 +32,7 @@ module.exports = { ...@@ -32,7 +32,7 @@ module.exports = {
devServer: { devServer: {
proxy: { proxy: {
'/portal': { '/portal': {
target: 'https://portalapplicationkmif3wwkv6.cn1.platform.sapcloud.cn/', target: 'https://devportal.wangyouyu.com/',
// target: 'http://localhost:8080/', // target: 'http://localhost:8080/',
secure: false, secure: false,
changeOrigin: true, changeOrigin: true,
...@@ -51,26 +51,6 @@ module.exports = { ...@@ -51,26 +51,6 @@ module.exports = {
} }
} }
}, },
'/job': {
target: 'https://jobapplicationkmif3wwkv6.cn1.platform.sapcloud.cn/',
// target: 'http://localhost:8080/',
secure: false,
changeOrigin: true,
pathRewrite: {
'^/job/': '/' // rewrite path
},
onProxyReq: function(proxyReq, req, res, options) { // 由于vue中使用了body-parser 导致http中的body被序列化两次,从而使得配置代理后后端无法获取body中的数据
if (req.body) {
const reg = new RegExp('application/json')
if (reg.test(proxyReq.getHeader('Content-Type'))) {
const bodyData = JSON.stringify(req.body)
proxyReq.setHeader('Content-Length', Buffer.byteLength(bodyData))
// stream the content
proxyReq.write(bodyData)
}
}
}
}
}, },
port: port, port: port,
open: true, open: true,
......
{
"welcomeFile": "/index.html",
"authenticationMethod": "none",
"routes": [
{
"source": "^/portal/(.*)",
"target": "/$1",
"destination": "portal"
},
{
"source": "(.*)",
"localDir": "dist"
}
]
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment