Commit 29a0ae9d authored by 李志鸣's avatar 李志鸣

fea(车道基础数据、登录页): 联调、开发完成

parent 9d003fc3
src/assets/images/Login/bg.png

2.53 MB | W: | H:

src/assets/images/Login/bg.png

1.25 MB | W: | H:

src/assets/images/Login/bg.png
src/assets/images/Login/bg.png
src/assets/images/Login/bg.png
src/assets/images/Login/bg.png
  • 2-up
  • Swipe
  • Onion skin
/* eslint-disable */
export default {
"basic-info-controller": {
"area-get": {
"url": "/api/basicinfo/area",
"method": "get"
},
"equipCreate-post": {
"url": "/api/basicinfo/equipCreate",
"method": "post"
......@@ -17,6 +21,10 @@
"url": "/api/basicinfo/equipUpdate",
"method": "put"
},
"areaId-get": {
"url": "/api/basicinfo/lane/{areaId}",
"method": "get"
},
"stationCreate-post": {
"url": "/api/basicinfo/stationCreate",
"method": "post"
......@@ -104,6 +112,10 @@
"runtimePage-post": {
"url": "/api/equipment/runtimePage",
"method": "post"
},
"test-get": {
"url": "/api/equipment/test",
"method": "get"
}
},
"show-field-controller": {
......
......@@ -8,12 +8,12 @@ export default {
meta: {title: 'Basic', icon: 'codingConfig'},
alwaysShow: true,
children: [
{
path: 'workshopBasic',
component: () => import('@/views/Basic/WorkshopBasic/list'),
name: 'WorkshopBasic',
meta: {title: 'WorkshopBasic', icon: 'document', noCache: false}
},
// {
// path: 'workshopBasic',
// component: () => import('@/views/Basic/WorkshopBasic/list'),
// name: 'WorkshopBasic',
// meta: {title: 'WorkshopBasic', icon: 'document', noCache: false}
// },
{
path: 'deviceBasic',
component: () => import('@/views/Basic/DeviceBasic/list'),
......
......@@ -20,20 +20,20 @@
}
}
}
.el-button {
width: 100%;
border-radius: 0px;
height: 60px;
line-height: 60px;
font-size: 24px;
}
.el-button--medium {
padding: 0;
}
.el-button--primary {
background-color: #00a1d8;
border: 1px solid #00a1d8;
}
//.el-button {
// width: 100%;
// border-radius: 0px;
// height: 60px;
// line-height: 60px;
// font-size: 24px;
//}
//.el-button--medium {
// padding: 0;
//}
//.el-button--primary {
// background-color: #00a1d8;
// border: 1px solid #00a1d8;
//}
}
.missingListMaterial-list-page {
.el-input {
......
......@@ -234,4 +234,4 @@
<style lang="scss" scoped>
</style>
\ No newline at end of file
</style>
......@@ -19,14 +19,14 @@
</Search>
<div class="float-left">
<el-button
size="small"
size="small"
type="primary"
@click="doAddClick">
新增
</el-button>
</div>
</div>
<div class="general-list-main-pack pl-15 pr-15">
<div class="general-list-main-pack pl-15 pr-15 pb-15">
<div>
<Table
:tableConfig="tableConfig"
......@@ -219,7 +219,7 @@
<style lang="scss" scoped>
.page-pack {
position: relative;
height: 100%;
min-height: 100%;
width: 100%;
border: 1px solid #d2d3d5;
background-color: #fff;
......@@ -298,4 +298,4 @@
}
}
}
</style>
\ No newline at end of file
</style>
......@@ -12,6 +12,115 @@
:model="formData"
ref="form"
:rules="formRules">
<el-row :gutter="30">
<el-col :span="12">
<el-form-item
label="车间"
prop="workshopCode"
required>
<el-select
v-model="formData.workshopCode"
size="small"
style="width: 100%"
placeholder="请选择车间"
@change="onWorkshopSelectChange">
<el-option
v-for="(item, index) in workShopSelectData"
:key="index"
:value="item.itemName"
:label="item.itemName">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="区域"
prop="areaId"
required>
<el-select
v-model="formData.areaId"
size="small"
style="width: 100%"
placeholder="请选择区域"
@change="onAreaSelectChange">
<el-option
v-for="(item, index) in areaSelectData"
:key="index"
:value="item.id"
:label="item.name">
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="30">
<el-col :span="12">
<el-form-item
label="车道"
prop="laneId"
required>
<el-select
:disabled="formData.areaId === ''"
v-model="formData.laneId"
size="small"
style="width: 100%"
placeholder="请选择区域再选择车道">
<el-option
v-for="(item, index) in laneSelectData"
:key="index"
:value="item.id"
:label="item.name">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="工位编号"
prop="code"
required>
<el-input
size="small"
maxlength="32"
v-model="formData.code"
style="width: 100%"
placeholder="请输入工位编号">
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="30">
<el-col :span="12">
<el-form-item
label="工位序号"
prop="sequence"
required>
<el-input-number
:max="100"
v-model="formData.sequence"
style="width: 100%"
size="small"
placeholder="请输入工位序号">
</el-input-number>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="是否为关键工位"
prop="keyStation"
required>
<el-select
v-model="formData.keyStation"
size="small"
style="width: 100%"
placeholder="请选择是否为关键工位">
<el-option value="true" label="是"></el-option>
<el-option value="false" label="否"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button :loading="loadingToggle" size="small" type="primary" icon="el-icon-check" @click="doConfirmClick('form')">确认</el-button>
......@@ -26,6 +135,8 @@
dialogToggle (newVal, oldVal) {
// 获取车间下拉数据
this.getWorkshopSelectData()
// 获取区域下拉数据
this.getAreaSelectData()
}
},
data () {
......@@ -35,24 +146,160 @@
// 对话框开关标识
dialogToggle: false,
// 表单数据
formData: {},
formData: {
workshopCode: '',
areaId: '',
laneId: '',
code: '',
sequence: '',
keyStation: ''
},
// 表单正则
formRules: {},
formRules: {
// 车间
workshopCode: [
{
validator: (rule, value, callback) => {
if (_.trim(value) === '') {
callback(new Error('请选择车间'))
}
callback()
},
trigger: ['change', 'blur']
}
],
// 区域
areaId: [
{
validator: (rule, value, callback) => {
if (_.trim(value) === '') {
callback(new Error('请选择区域'))
}
callback()
},
trigger: ['change', 'blur']
}
],
// 车道
laneId: [
{
validator: (rule, value, callback) => {
if (_.trim(value) === '') {
callback(new Error('请选择车道'))
}
callback()
},
trigger: ['change', 'blur']
}
],
// 工位编号
code: [
{
validator: (rule, value, callback) => {
if (_.trim(value) === '') {
callback(new Error('请输入工位编号'))
}
callback()
},
trigger: ['change', 'blur']
}
],
// 工位序号
sequence: [
{
validator: (rule, value, callback) => {
if (_.trim(value) === '') {
callback(new Error('请输入工位序号'))
}
callback()
},
trigger: ['change', 'blur']
}
],
// 是否为关键工位
keyStation: [
{
validator: (rule, value, callback) => {
if (_.trim(value) === '') {
callback(new Error('请选择是否为关键工位'))
}
callback()
},
trigger: ['change', 'blur']
}
]
},
// 车间下拉数据
workShopSelectData: []
workShopSelectData: [],
// 区域下拉数据
areaSelectData: [],
// 车道下拉数据
laneSelectData: []
}
},
methods: {
// 点击确认按钮
doConfirmClick () {},
doConfirmClick (formName) {
this.$refs[formName].validate(vaild => {
if (vaild) {
this.loadingToggle = true
let queryParams = { ...this.formData }
this.$fetch('basic-info-controller/stationCreate-post', queryParams).then(response => {
this.$message.success('新增成功!')
this.loadingToggle = false
this.dialogToggle = false
this.$refs[formName].resetFields()
this.$emit('doConfirmClick')
for (let key in this.formData) {
this.formData[key] = ''
}
}).catch(() => {
this.loadingToggle = false
})
}
})
},
// 点击取消按钮
doCancelClick () {},
doCancelClick (formName) {
this.dialogToggle = false
this.$refs[formName].resetFields()
for (let key in this.formData) {
this.formData[key] = ''
}
},
// 获取车间下拉数据
getWorkshopSelectData () {
let queryParams = { dicCode: 'WORKSHOP_LIST', hash: 'dicCode' }
this.$fetch('dict-item-controller/dicCode-get', queryParams).then(response => {
this.workShopSelectData = _.cloneDeep(response)
})
},
// 获取区域下拉数据
getAreaSelectData () {
this.$fetch('basic-info-controller/area-get', {}).then(response => {
this.areaSelectData = _.cloneDeep(response)
})
},
// 触发车间下拉选择事件
onWorkshopSelectChange (selectValue) {
for (let item of this.workShopSelectData) {
if (item.itemCode === selectValue) {
this.formData.workshopName = item.itemName
break
}
}
},
// 触发区域下拉选择事件
onAreaSelectChange (selectValue) {
// 根据区域id获取车道下拉数据
this.getLaneSelectDataByAreaId()
},
// 根据区域id获取车道下拉数据
getLaneSelectDataByAreaId () {
let queryParams = { areaId: this.formData.areaId, hash: 'areaId' }
this.$fetch('basic-info-controller/areaId-get', queryParams).then(response => {
this.laneSelectData = _.cloneDeep(response)
})
}
}
}
......
<template>
<el-dialog
title="编辑车道基础数据"
:visible.sync="dialogToggle"
:show-close="false"
:close-on-press-escape="false"
:close-on-click-modal="false"
width="600px">
<el-form
label-width="100px"
label-position="top"
:model="formData"
ref="form"
:rules="formRules">
<el-row :gutter="30">
<el-col :span="12">
<el-form-item
label="车间"
prop="workshopCode"
required>
<el-select
v-model="formData.workshopCode"
size="small"
style="width: 100%"
placeholder="请选择车间"
@change="onWorkshopSelectChange">
<el-option
v-for="(item, index) in workShopSelectData"
:key="index"
:value="item.itemName"
:label="item.itemName">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="区域"
prop="areaId"
required>
<el-select
v-model="formData.areaId"
size="small"
style="width: 100%"
placeholder="请选择区域"
@change="onAreaSelectChange">
<el-option
v-for="(item, index) in areaSelectData"
:key="index"
:value="item.id"
:label="item.name">
</el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="30">
<el-col :span="12">
<el-form-item
label="车道"
prop="laneId"
required>
<el-select
:disabled="formData.areaId === ''"
v-model="formData.laneId"
size="small"
style="width: 100%"
placeholder="请选择区域再选择车道">
<el-option
v-for="(item, index) in laneSelectData"
:key="index"
:value="item.id"
:label="item.name">
</el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="工位编号"
prop="code"
required>
<el-input
size="small"
maxlength="32"
v-model="formData.code"
style="width: 100%"
placeholder="请输入工位编号">
</el-input>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="30">
<el-col :span="12">
<el-form-item
label="工位序号"
prop="sequence"
required>
<el-input-number
:max="100"
v-model="formData.sequence"
style="width: 100%"
size="small"
placeholder="请输入工位序号">
</el-input-number>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item
label="是否为关键工位"
prop="keyStation"
required>
<el-select
v-model="formData.keyStation"
size="small"
style="width: 100%"
placeholder="请选择是否为关键工位">
<el-option :value="true" label="是"></el-option>
<el-option :value="false" label="否"></el-option>
</el-select>
</el-form-item>
</el-col>
</el-row>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button :loading="loadingToggle" size="small" type="primary" icon="el-icon-check" @click="doConfirmClick('form')">确认</el-button>
<el-button size="small" icon="el-icon-close" @click="doCancelClick('form')">取消</el-button>
</span>
</el-dialog>
</template>
<script>
export default {
props: {
editLaneBasicValue: {}
},
watch: {
dialogToggle (newVal, oldVal) {
// 获取车间下拉数据
this.getWorkshopSelectData()
// 获取区域下拉数据
this.getAreaSelectData()
},
editLaneBasicValue (newVal, oldVal) {
// 编辑数据赋值
this.editValueAssignment()
}
},
data () {
return {
// 数据提交开关标识
loadingToggle: false,
// 对话框开关标识
dialogToggle: false,
// 表单数据
formData: {
workshopCode: '',
areaId: '',
laneId: '',
code: '',
sequence: '',
keyStation: ''
},
// 表单正则
formRules: {
// 车间
workshopCode: [
{
validator: (rule, value, callback) => {
if (_.trim(value) === '') {
callback(new Error('请选择车间'))
}
callback()
},
trigger: ['change', 'blur']
}
],
// 区域
areaId: [
{
validator: (rule, value, callback) => {
if (_.trim(value) === '') {
callback(new Error('请选择区域'))
}
callback()
},
trigger: ['change', 'blur']
}
],
// 车道
laneId: [
{
validator: (rule, value, callback) => {
if (_.trim(value) === '') {
callback(new Error('请选择车道'))
}
callback()
},
trigger: ['change', 'blur']
}
],
// 工位编号
code: [
{
validator: (rule, value, callback) => {
if (_.trim(value) === '') {
callback(new Error('请输入工位编号'))
}
callback()
},
trigger: ['change', 'blur']
}
],
// 工位序号
sequence: [
{
validator: (rule, value, callback) => {
if (_.trim(value) === '') {
callback(new Error('请输入工位序号'))
}
callback()
},
trigger: ['change', 'blur']
}
],
// 是否为关键工位
keyStation: [
{
validator: (rule, value, callback) => {
if (_.trim(value) === '') {
callback(new Error('请选择是否为关键工位'))
}
callback()
},
trigger: ['change', 'blur']
}
]
},
// 车间下拉数据
workShopSelectData: [],
// 区域下拉数据
areaSelectData: [],
// 车道下拉数据
laneSelectData: []
}
},
methods: {
// 点击确认按钮
doConfirmClick (formName) {
this.$refs[formName].validate(vaild => {
if (vaild) {
this.loadingToggle = true
let queryParams = { ...this.formData }
queryParams.id = this.editLaneBasicValue.id
this.$fetch('basic-info-controller/stationUpdate-put', queryParams).then(response => {
this.$message.success('编辑成功!')
this.loadingToggle = false
this.dialogToggle = false
this.$refs[formName].resetFields()
this.$emit('doConfirmClick')
for (let key in this.formData) {
this.formData[key] = ''
}
}).catch(() => {
this.loadingToggle = false
})
}
})
},
// 点击取消按钮
doCancelClick (formName) {
this.dialogToggle = false
this.$refs[formName].resetFields()
for (let key in this.formData) {
this.formData[key] = ''
}
},
// 获取车间下拉数据
getWorkshopSelectData () {
let queryParams = { dicCode: 'WORKSHOP_LIST', hash: 'dicCode' }
this.$fetch('dict-item-controller/dicCode-get', queryParams).then(response => {
this.workShopSelectData = _.cloneDeep(response)
})
},
// 获取区域下拉数据
getAreaSelectData () {
this.$fetch('basic-info-controller/area-get', {}).then(response => {
this.areaSelectData = _.cloneDeep(response)
})
},
// 触发车间下拉选择事件
onWorkshopSelectChange (selectValue) {
for (let item of this.workShopSelectData) {
if (item.itemCode === selectValue) {
this.formData.workshopName = item.itemName
break
}
}
},
// 触发区域下拉选择事件
onAreaSelectChange (selectValue) {
// 根据区域id获取车道下拉数据
this.getLaneSelectDataByAreaId()
},
// 根据区域id获取车道下拉数据
getLaneSelectDataByAreaId () {
let queryParams = { areaId: this.formData.areaId, hash: 'areaId' }
this.$fetch('basic-info-controller/areaId-get', queryParams).then(response => {
this.laneSelectData = _.cloneDeep(response)
})
},
// 编辑数据赋值
editValueAssignment () {
for (let key in this.editLaneBasicValue) {
if (this.formData.hasOwnProperty(key)) {
this.formData[key] = this.editLaneBasicValue[key]
}
}
// 根据区域id获取车道下拉数据
this.getLaneSelectDataByAreaId()
}
}
}
</script>
<style>
</style>
......@@ -26,12 +26,20 @@
</el-button>
</div>
</div>
<div class="general-list-main-pack pl-15 pr-15">
<div class="general-list-main-pack pl-15 pr-15 pb-15">
<div>
<Table
:tableConfig="tableConfig"
@onPageSizeChange="onPageSizeChange"
@onCurrentPageChange="onCurrentPageChange">
<template slot="workshopCode">
<el-table-column
label="车间">
<template slot-scope="scope">
<span>{{ scope.row.workshopCode !== null ? scope.row.workshopCode : '涂装车间' }}</span>
</template>
</el-table-column>
</template>
<template slot="keyStation">
<el-table-column
label="是否为关键工位"
......@@ -56,12 +64,14 @@
label="操作">
<template slot-scope="scope">
<el-button
type="text">
type="text"
@click="doEditClick(scope.row)">
编辑
</el-button>
<el-button
type="text"
style="color: rgb(244, 116, 118)">
style="color: rgb(244, 116, 118)"
@click="doDeleteClick(scope.row)">
删除
</el-button>
</template>
......@@ -73,8 +83,15 @@
<!--新增车道基础信息对话框-->
<AddLaneDialog
ref="AddLaneDialog">
ref="AddLaneDialog"
@doConfirmClick="doAddLaneDialogConfirmClick">
</AddLaneDialog>
<!--编辑车道基础信息对话框-->
<EditLaneDialog
ref="EditLaneDialog"
:editLaneBasicValue="editLaneBasicValue">
</EditLaneDialog>
</div>
</template>
......@@ -82,16 +99,20 @@
import Table from '@/components/Table/index.vue'
import Search from '@/components/Search'
import AddLaneDialog from './components/AddLaneDialog'
import EditLaneDialog from './components/EditLaneDialog'
export default {
name: 'LaneBasic',
components: {
Search,
Table,
AddLaneDialog
AddLaneDialog,
EditLaneDialog
},
data () {
return {
// 编辑车道基础数据
editLaneBasicValue: {},
// 精准搜索关键字列表
searchList: {},
// 表格配置项
......@@ -99,7 +120,7 @@
height: 0,
data: [],
fieldList: [
{ label: '车间', value: 'workshopCode' },
{ label: '车间', value: 'workshopCode', slot: 'workshopCode' },
{ label: '区域', value: 'areaName' },
{ label: '车道编号', value: 'laneCode' },
{ label: '工位编号', value: 'code' },
......@@ -176,6 +197,33 @@
// 点击新增按钮
doAddClick () {
this.$refs.AddLaneDialog.dialogToggle = true
},
// 点击新增车道对话框确认按钮
doAddLaneDialogConfirmClick () {
// 获取表格数据
this.getTableList()
},
// 点击编辑按钮
doEditClick (laneValue) {
this.editLaneBasicValue = _.cloneDeep(laneValue)
this.$refs.EditLaneDialog.dialogToggle = true
},
// 点击删除按钮
doDeleteClick (laneValue) {
console.log(laneValue)
this.$confirm(`确定要删除车道编号为 ${laneValue.laneCode} 的车道基础数据吗?`, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
center: true
}).then(() => {
let queryParams = { stationId: laneValue.id, hash: 'stationId' }
this.$fetch('basic-info-controller/stationId-delete', queryParams).then(response => {
this.$message.success('删除成功!')
// 获取表格数据
this.getTableList()
})
}).catch(() => {})
}
},
mounted () {
......@@ -191,7 +239,7 @@
<style lang="scss" scoped>
.page-pack {
position: relative;
height: 100%;
min-height: 100%;
width: 100%;
border: 1px solid #d2d3d5;
background-color: #fff;
......
......@@ -19,13 +19,13 @@
</Search>
<div class="float-left">
<el-button
size="small"
size="small"
type="primary">
新增
</el-button>
</div>
</div>
<div class="general-list-main-pack pl-15 pr-15">
<div class="general-list-main-pack pl-15 pr-15 pb-15">
<div>
<Table
:tableConfig="tableConfig">
......@@ -80,7 +80,7 @@
<style lang="scss" scoped>
.page-pack {
position: relative;
height: 100%;
min-height: 100%;
width: 100%;
border: 1px solid #d2d3d5;
background-color: #fff;
......@@ -158,4 +158,4 @@
}
}
}
</style>
\ No newline at end of file
</style>
......@@ -18,7 +18,7 @@
@reset="doResetClick">
</Search>
</div>
<div class="general-list-main-pack pl-15 pr-15">
<div class="general-list-main-pack pl-15 pr-15 pb-15">
<div>
<Table
:tableConfig="tableConfig"
......@@ -158,7 +158,7 @@
<style lang="scss" scoped>
.page-pack {
position: relative;
height: 100%;
min-height: 100%;
width: 100%;
border: 1px solid #d2d3d5;
background-color: #fff;
......@@ -237,4 +237,4 @@
}
}
}
</style>
\ No newline at end of file
</style>
......@@ -18,7 +18,7 @@
@reset="doResetClick">
</Search>
</div>
<div class="general-list-main-pack pl-15 pr-15">
<div class="general-list-main-pack pl-15 pr-15 pb-15">
<div>
<Table
:tableConfig="tableConfig"
......@@ -138,7 +138,7 @@
<style lang="scss" scoped>
.page-pack {
position: relative;
height: 100%;
min-height: 100%;
width: 100%;
border: 1px solid #d2d3d5;
background-color: #fff;
......@@ -217,4 +217,4 @@
}
}
}
</style>
\ No newline at end of file
</style>
<template>
<div class="login-page">
<div class="login-pack">
<div class="logo-pack">
<img src="../../assets/images/Login/logo.png"/>
</div>
<div class="desc-pack">
<div class="left-line"></div>
<div class="desc">生产制造执行系统</div>
<div class="right-line"></div>
</div>
<div class="username-pack">
<el-input v-model="username" @keyup.enter.native="loginClick" placeholder="用户名">
<template slot="prepend"><svg-icon icon-class="user"></svg-icon></template>
</el-input>
</div>
<div class="password-pack">
<el-input v-model="password" @keyup.enter.native="loginClick" type="password" placeholder="密码">
<template slot="prepend"><svg-icon icon-class="password"></svg-icon></template>
</el-input>
</div>
<div class="button-pack">
<el-button v-if="loading" disabled :loading="true" type="primary">登录中</el-button>
<el-button v-else type="primary" @click="loginClick">登录</el-button>
<div class="login-view-pack">
<div class="title">SCADA+AVI系统</div>
<div class="user-name">
<el-input
v-model="username"
placeholder="请输入用户名"
@keyup.enter.native="loginClick">
</el-input>
<svg-icon class="username-icon" icon-class="user"></svg-icon>
</div>
<div class="password">
<el-input
v-model="password"
placeholder="请输入密码"
@keyup.enter.native="loginClick"
type="password">
</el-input>
<svg-icon class="password-icon" icon-class="password"></svg-icon>
</div>
<div class="button">
<el-button
v-if="loading"
:loading="true"
type="primary">
登陆中
</el-button>
<el-button
v-else
@click="loginClick"
type="primary">
登陆
</el-button>
</div>
</div>
</div>
<div class="version-pack">version 1.19.2 山东万腾提供技术支持</div>
<!--<div class="login-pack">-->
<!--<div class="logo-pack">-->
<!--<img src="../../assets/images/Login/logo.png"/>-->
<!--</div>-->
<!--<div class="desc-pack">-->
<!--<div class="left-line"></div>-->
<!--<div class="desc">生产制造执行系统</div>-->
<!--<div class="right-line"></div>-->
<!--</div>-->
<!--<div class="username-pack">-->
<!--<el-input v-model="username" @keyup.enter.native="loginClick" placeholder="用户名">-->
<!--<template slot="prepend"><svg-icon icon-class="user"></svg-icon></template>-->
<!--</el-input>-->
<!--</div>-->
<!--<div class="password-pack">-->
<!--<el-input v-model="password" @keyup.enter.native="loginClick" type="password" placeholder="密码">-->
<!--<template slot="prepend"><svg-icon icon-class="password"></svg-icon></template>-->
<!--</el-input>-->
<!--</div>-->
<!--<div class="button-pack">-->
<!--<el-button v-if="loading" disabled :loading="true" type="primary">登录中</el-button>-->
<!--<el-button v-else type="primary" @click="loginClick">登录</el-button>-->
<!--</div>-->
<!--</div>-->
<div class="version-pack">version 1.0.0 山东万腾电子科技有限公司提供技术支持</div>
</div>
</template>
......@@ -110,7 +146,7 @@
<style rel="stylesheet/scss" lang="scss" scoped>
@import "@/styles/mixin.scss";
.login-page {
@include rdc-box-sizing;
/*//@include rdc-box-sizing;*/
width: 100%;
height: 100%;
min-height: 900px;
......@@ -118,7 +154,7 @@
position: relative;
top: 0;
z-index: 1;
padding: 120px 120px 0 120px;
/*padding: 120px 120px 0 120px;*/
display: -webkit-flex;
display: flex;
background-image: url(../../assets/images/Login/bg.png);
......@@ -127,48 +163,150 @@
background-size: cover;
-webkit-background-size: cover;
-o-background-size: cover;
justify-content: center;
align-items: center;
.login-pack {
position: absolute;
right: 200px;
top: 320px;
width: 451px;
z-index: 9;
.logo-pack {
text-align: center;
}
.desc-pack {
margin-top: 25px;
position: relative;
display: -webkit-flex;
display: flex;
align-items: center;
.left-line {
border-bottom: 1px solid #fff;
width: 123px;
}
.desc {
color: #fff;
font-size: 18px;
width: 200px;
width: 1157px;
height: 722px;
background-image: url('../../assets/images/Login/login_bg.png');
background-position: center 0;
background-repeat: no-repeat;
background-size: cover;
-webkit-background-size: cover;
-o-background-size: cover;
position: relative;
.login-view-pack {
position: absolute;
width: 370px;
height: 558px;
top: 20px;
right: 20px;
.title {
font-size: 30px;
color: #0377ff;
text-align: center;
font-weight: bold;
margin-top: 110px;
}
.user-name {
width: 320px;
margin: 0 auto;
margin-top: 80px;
position: relative;
.el-input {
/deep/ .el-input__inner {
padding-left: 70px;
color: #a1a8b2;
background-color: #eef4fe !important;
border-radius: 20px;
border: 0px;
&::-webkit-input-placeholder{
color: #a1a8b2;
font-size: 14px;
}
}
}
.username-icon {
color: #0377ff;
font-size: 30px;
position: absolute;
top: 7px;
left: 22px;
}
}
.right-line {
border-bottom: 1px solid #fff;
width: 123px;
.password {
width: 320px;
margin: 0 auto;
margin-top: 48px;
position: relative;
.el-input {
/deep/ .el-input__inner {
padding-left: 70px;
color: #a1a8b2;
background-color: #eef4fe !important;
border-radius: 20px;
border: 0px;
&::-webkit-input-placeholder{
color: #a1a8b2;
font-size: 14px;
}
}
}
.password-icon {
color: #0377ff;
font-size: 30px;
position: absolute;
top: 7px;
left: 22px;
}
}
}
.username-pack, .password-pack {
margin-top: 25px;
margin-bottom: 10px;
.svg-icon {
color: #fff;
font-size: 20px;
.button {
padding: 0 20px;
margin-top: 45px;
.el-button {
width: 100%;
height: 46px;
font-size: 22px;
border-radius: 20px;
}
}
}
.button-pack {
margin-top: 25px;
}
}
/*.login-pack {*/
/*position: absolute;*/
/*right: 200px;*/
/*top: 320px;*/
/*width: 451px;*/
/*z-index: 9;*/
/*.logo-pack {*/
/*text-align: center;*/
/*}*/
/*.desc-pack {*/
/*margin-top: 25px;*/
/*position: relative;*/
/*display: -webkit-flex;*/
/*display: flex;*/
/*align-items: center;*/
/*.left-line {*/
/*border-bottom: 1px solid #fff;*/
/*width: 123px;*/
/*}*/
/*.desc {*/
/*color: #fff;*/
/*font-size: 18px;*/
/*width: 200px;*/
/*text-align: center;*/
/*}*/
/*.right-line {*/
/*border-bottom: 1px solid #fff;*/
/*width: 123px;*/
/*}*/
/*}*/
/*.username-pack, .password-pack {*/
/*margin-top: 25px;*/
/*margin-bottom: 10px;*/
/*.svg-icon {*/
/*color: #fff;*/
/*font-size: 20px;*/
/*}*/
/*}*/
/*.button-pack {*/
/*margin-top: 25px;*/
/*}*/
/*}*/
.version-pack {
position: absolute;
......
......@@ -36,7 +36,7 @@
</span>
</div>
</div>
<div class="tool-pack clear-float pl-15 pr-15">
<div class="tool-pack clear-float pl-15 pr-15 pb-15">
<Search
v-if="searchComponentRenderToggle"
:searchCode="currentSearchCode"
......@@ -52,7 +52,7 @@
</el-button>
</div>
</div>
<div class="general-list-main-pack pl-15 pr-15">
<div class="general-list-main-pack pl-15 pr-15 pb-15">
<div>
<PreviewTable
:tableConfig="tableConfig"
......@@ -254,7 +254,7 @@
mounted () {
setTimeout(() => {
this.treeHeight = { 'height': `${document.body.offsetHeight - 180}px` }
this.tableConfig.height = document.querySelector('.page-pack').offsetHeight - 205
this.tableConfig.height = document.querySelector('.page-pack').offsetHeight - 210
this.$refs.sortTree.setCurrentKey(this.sortTreeData[0].id)
this.currentSort = _.cloneDeep(this.sortTreeData[0])
this.currentSearchCode = _.cloneDeep(this.sortTreeData[0].code)
......@@ -271,7 +271,7 @@
<style lang="scss" scoped>
.page-pack {
height: 100%;
min-height: 100%;
width: 100%;
overflow: hidden;
position: relative;
......@@ -297,7 +297,6 @@
height: 100%;
border: 1px solid #d2d3d5;
background-color: #fff;
overflow-y: auto;
.title-pack {
height: 38px;
......@@ -316,4 +315,4 @@
}
}
}
</style>
\ No newline at end of file
</style>
......@@ -52,7 +52,7 @@
</el-button>
</div>
</div>
<div class="general-list-main-pack pl-15 pr-15">
<div class="general-list-main-pack pl-15 pr-15 pb-15">
<div>
<PreviewTable
:tableConfig="tableConfig"
......@@ -264,7 +264,7 @@
mounted () {
setTimeout(() => {
this.treeHeight = { 'height': `${document.body.offsetHeight - 180}px` }
this.tableConfig.height = document.querySelector('.page-pack').offsetHeight - 205
this.tableConfig.height = document.querySelector('.page-pack').offsetHeight - 210
this.$refs.sortTree.setCurrentKey(this.sortTreeData[0].id)
this.currentSort = _.cloneDeep(this.sortTreeData[0])
this.currentSearchCode = _.cloneDeep(this.sortTreeData[0].code)
......@@ -281,7 +281,7 @@
<style lang="scss" scoped>
.page-pack {
height: 100%;
min-height: 100%;
width: 100%;
overflow: hidden;
position: relative;
......@@ -326,4 +326,4 @@
}
}
}
</style>
\ No newline at end of file
</style>
......@@ -52,7 +52,7 @@
</el-button>
</div>
</div>
<div class="general-list-main-pack pl-15 pr-15">
<div class="general-list-main-pack pl-15 pr-15 pb-15">
<div>
<PreviewTable
:tableConfig="tableConfig"
......@@ -259,7 +259,7 @@
mounted () {
setTimeout(() => {
this.treeHeight = { 'height': `${document.body.offsetHeight - 180}px` }
this.tableConfig.height = document.querySelector('.page-pack').offsetHeight - 205
this.tableConfig.height = document.querySelector('.page-pack').offsetHeight - 210
this.$refs.sortTree.setCurrentKey(this.sortTreeData[0].id)
this.currentSort = _.cloneDeep(this.sortTreeData[0])
this.currentSearchCode = _.cloneDeep(this.sortTreeData[0].code)
......@@ -276,7 +276,7 @@
<style lang="scss" scoped>
.page-pack {
height: 100%;
min-height: 100%;
width: 100%;
overflow: hidden;
position: relative;
......@@ -321,4 +321,4 @@
}
}
}
</style>
\ No newline at end of file
</style>
......@@ -57,7 +57,7 @@
</el-button>
</div>
</div>
<div class="general-list-main-pack pl-15 pr-15">
<div class="general-list-main-pack pl-15 pr-15 pb-15">
<div>
<PreviewTable
:tableConfig="tableConfig"
......@@ -278,7 +278,7 @@
mounted () {
setTimeout(() => {
this.treeHeight = { 'height': `${document.body.offsetHeight - 180}px` }
this.tableConfig.height = document.querySelector('.page-pack').offsetHeight - 205
this.tableConfig.height = document.querySelector('.page-pack').offsetHeight - 210
this.$refs.sortTree.setCurrentKey(this.sortTreeData[0].id)
this.currentSort = _.cloneDeep(this.sortTreeData[0])
this.currentSearchCode = _.cloneDeep(this.sortTreeData[0].code)
......@@ -295,7 +295,7 @@
<style lang="scss" scoped>
.page-pack {
height: 100%;
min-height: 100%;
width: 100%;
overflow: hidden;
position: relative;
......@@ -321,7 +321,6 @@
height: 100%;
border: 1px solid #d2d3d5;
background-color: #fff;
overflow-y: auto;
.title-pack {
height: 38px;
......@@ -340,4 +339,4 @@
}
}
}
</style>
\ No newline at end of file
</style>
......@@ -52,7 +52,7 @@
</el-button>
</div>
</div>
<div class="general-list-main-pack pl-15 pr-15">
<div class="general-list-main-pack pl-15 pr-15 pb-15">
<div>
<PreviewTable
:tableConfig="tableConfig"
......@@ -244,7 +244,7 @@
mounted () {
setTimeout(() => {
this.treeHeight = { 'height': `${document.body.offsetHeight - 180}px` }
this.tableConfig.height = document.querySelector('.page-pack').offsetHeight - 205
this.tableConfig.height = document.querySelector('.page-pack').offsetHeight - 210
this.$refs.sortTree.setCurrentKey(this.sortTreeData[0].id)
this.currentSort = _.cloneDeep(this.sortTreeData[0])
this.currentSearchCode = _.cloneDeep(this.sortTreeData[0].code)
......@@ -261,7 +261,7 @@
<style lang="scss" scoped>
.page-pack {
height: 100%;
min-height: 100%;
width: 100%;
overflow: hidden;
position: relative;
......@@ -306,4 +306,4 @@
}
}
}
</style>
\ No newline at end of file
</style>
......@@ -52,7 +52,7 @@
</el-button>
</div>
</div>
<div class="general-list-main-pack pl-15 pr-15">
<div class="general-list-main-pack pl-15 pr-15 pb-15">
<div>
<PreviewTable
:tableConfig="tableConfig"
......@@ -244,7 +244,7 @@
mounted () {
setTimeout(() => {
this.treeHeight = { 'height': `${document.body.offsetHeight - 180}px` }
this.tableConfig.height = document.querySelector('.page-pack').offsetHeight - 205
this.tableConfig.height = document.querySelector('.page-pack').offsetHeight - 210
this.$refs.sortTree.setCurrentKey(this.sortTreeData[0].id)
this.currentSort = _.cloneDeep(this.sortTreeData[0])
this.currentSearchCode = _.cloneDeep(this.sortTreeData[0].code)
......@@ -261,7 +261,7 @@
<style lang="scss" scoped>
.page-pack {
height: 100%;
min-height: 100%;
width: 100%;
overflow: hidden;
position: relative;
......@@ -306,4 +306,4 @@
}
}
}
</style>
\ No newline at end of file
</style>
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