css
This commit is contained in:
@@ -4,7 +4,7 @@
|
||||
<meta charset="UTF-8">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0">
|
||||
<meta http-equiv="X-UA-Compatible" content="ie=edge">
|
||||
<title>Flowable流程设计管理系统</title>
|
||||
<title>诺力售后管理平台</title>
|
||||
<% if (process.env.NODE_ENV === 'production') { %>
|
||||
<!-- 生产环境 -->
|
||||
<script>document.write('<script src="./config/index.js?t=' + new Date().getTime() + '"><\/script>');</script>
|
||||
|
||||
BIN
base-vue/src/assets/img/logo.png
Normal file
BIN
base-vue/src/assets/img/logo.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 120 KiB |
@@ -177,8 +177,14 @@ img {
|
||||
|
||||
&-lg,
|
||||
&-mini {
|
||||
margin: 0 5px;
|
||||
margin: 0 auto;
|
||||
color: #fff;
|
||||
font-size: 14px;
|
||||
img {
|
||||
width: 32px;
|
||||
width: 32px;
|
||||
margin: 0 5px;
|
||||
}
|
||||
&:focus,
|
||||
&:hover {
|
||||
color: #fff;
|
||||
@@ -300,6 +306,9 @@ img {
|
||||
font-size: 16px;
|
||||
color: inherit !important;
|
||||
}
|
||||
.site-sidebar__inner {
|
||||
width: 230px;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
241
base-vue/src/assets/scss/_eladmin.scss
Normal file
241
base-vue/src/assets/scss/_eladmin.scss
Normal file
@@ -0,0 +1,241 @@
|
||||
.head-container {
|
||||
padding-top: 4px;
|
||||
padding-bottom: 6px;
|
||||
background-color: #ffffff;
|
||||
border-radius: 4px;
|
||||
|
||||
.filter-item {
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
margin: 0 3px 10px 0;
|
||||
|
||||
input {
|
||||
height: 30.5px;
|
||||
line-height: 30.5px;
|
||||
}
|
||||
}
|
||||
|
||||
.el-form-item-label {
|
||||
margin: 0 3px 9px 0;
|
||||
display: inline-block;
|
||||
text-align: right;
|
||||
vertical-align: middle;
|
||||
font-size: 14px;
|
||||
color: #606266;
|
||||
line-height: 30.5px;
|
||||
padding: 0 7px 0 7px;
|
||||
}
|
||||
|
||||
.el-button + .el-button {
|
||||
margin-left: 0 !important;
|
||||
}
|
||||
|
||||
.el-select__caret.el-input__icon.el-icon-arrow-up {
|
||||
line-height: 30.5px;
|
||||
}
|
||||
|
||||
.date-item {
|
||||
display: inline-block;
|
||||
vertical-align: middle;
|
||||
margin-bottom: 10px;
|
||||
height: 30.5px !important;
|
||||
width: 230px !important;
|
||||
}
|
||||
}
|
||||
|
||||
.el-avatar {
|
||||
display: inline-block;
|
||||
text-align: center;
|
||||
background: #ccc;
|
||||
color: #fff;
|
||||
white-space: nowrap;
|
||||
position: relative;
|
||||
overflow: hidden;
|
||||
vertical-align: middle;
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
line-height: 32px;
|
||||
border-radius: 16px;
|
||||
}
|
||||
|
||||
.logo-con {
|
||||
height: 60px;
|
||||
padding: 13px 0 0;
|
||||
|
||||
img {
|
||||
height: 32px;
|
||||
width: 135px;
|
||||
display: block;
|
||||
//margin: 0 auto;
|
||||
}
|
||||
}
|
||||
|
||||
#el-login-footer {
|
||||
height: 40px;
|
||||
line-height: 40px;
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
width: 100%;
|
||||
text-align: center;
|
||||
color: #fff;
|
||||
font-family: Arial, serif;
|
||||
font-size: 12px;
|
||||
letter-spacing: 1px;
|
||||
}
|
||||
|
||||
#el-main-footer {
|
||||
background: none repeat scroll 0 0 white;
|
||||
border-top: 1px solid #e7eaec;
|
||||
overflow: hidden;
|
||||
padding: 10px 6px 0 6px;
|
||||
height: 33px;
|
||||
font-size: 0.7rem !important;
|
||||
color: #7a8b9a;
|
||||
letter-spacing: 0.8px;
|
||||
font-family: Arial, sans-serif !important;
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
z-index: 99;
|
||||
width: 100%;
|
||||
}
|
||||
|
||||
.eladmin-upload {
|
||||
border: 1px dashed #c0ccda;
|
||||
border-radius: 5px;
|
||||
height: 45px;
|
||||
line-height: 45px;
|
||||
width: 368px;
|
||||
}
|
||||
|
||||
.my-blockquote {
|
||||
margin: 0 0 10px;
|
||||
padding: 15px;
|
||||
line-height: 22px;
|
||||
border-left: 5px solid #00437B;
|
||||
border-radius: 0 2px 2px 0;
|
||||
background-color: #f2f2f2;
|
||||
}
|
||||
|
||||
.my-code {
|
||||
position: relative;
|
||||
padding: 15px;
|
||||
line-height: 20px;
|
||||
border-left: 5px solid #ddd;
|
||||
color: #333;
|
||||
font-family: Courier New, serif;
|
||||
font-size: 12px
|
||||
}
|
||||
|
||||
.el-tabs {
|
||||
margin-bottom: 25px;
|
||||
}
|
||||
|
||||
|
||||
//修改侧边栏菜单颜色和高度
|
||||
.el-menu-item, .el-submenu__title {
|
||||
height: 40px;
|
||||
line-height: 40px;
|
||||
}
|
||||
|
||||
#app .sidebar-container .el-submenu .el-menu-item {
|
||||
}
|
||||
|
||||
#app .sidebar-container .nest-menu .el-submenu > .el-submenu__title, #app .sidebar-container .el-submenu .el-menu-item {
|
||||
}
|
||||
|
||||
#app .sidebar-container {
|
||||
//background-color: #544b32 !important;
|
||||
}
|
||||
|
||||
.el-form-item--small.el-form-item {
|
||||
margin-bottom: 12px !important;
|
||||
}
|
||||
|
||||
.el-form-item--mini.el-form-item {
|
||||
margin-bottom: 10px !important;
|
||||
}
|
||||
|
||||
//去除编辑文本框为数字时的上下箭头start
|
||||
.el-form--inline .el-form-item__content {
|
||||
width: auto !important;
|
||||
}
|
||||
|
||||
input[type="number"] {
|
||||
-moz-appearance: textfield;
|
||||
}
|
||||
|
||||
input[type="number"]::-webkit-inner-spin-button,
|
||||
input[type="number"]::-webkit-outer-spin-button {
|
||||
-webkit-appearance: none;
|
||||
}
|
||||
|
||||
//去除编辑文本框为数字时的上下箭头end
|
||||
|
||||
//设置计数器文字居左
|
||||
.el-input-number--mini .el-input__inner {
|
||||
text-align: left;
|
||||
}
|
||||
|
||||
.el-table:not(.el-table–scrollable-x) .el-table__fixed-right {
|
||||
height: 100% !important;
|
||||
}
|
||||
|
||||
// 修改弹出框距离
|
||||
.el-dialog__body {
|
||||
padding-top: 0px !important;
|
||||
}
|
||||
|
||||
//表格标题样式
|
||||
.el-table {
|
||||
.el-table__header-wrapper,
|
||||
.el-table__fixed-header-wrapper {
|
||||
th {
|
||||
word-break: break-word;
|
||||
background-color: #f5f5f5;
|
||||
color: #515a6e;
|
||||
height: 35px;
|
||||
font-size: 13px;
|
||||
}
|
||||
|
||||
td {
|
||||
color: #f8f8f9;
|
||||
}
|
||||
}
|
||||
|
||||
.el-table__body-wrapper {
|
||||
.el-button [class*="el-icon-"] + span {
|
||||
margin-left: 1px;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
//表格固定列最后一行显示不全(https://mp.weixin.qq.com/s/HpoykJNtsynsW4UMHitZbQ)
|
||||
.el-table__fixed-right {
|
||||
height: 100% !important;
|
||||
}
|
||||
|
||||
//表头与内容错位
|
||||
.el-table--scrollable-y .el-table__body-wrapper {
|
||||
overflow-y: overlay !important;
|
||||
}
|
||||
//左侧边框不显示start https://blog.csdn.net/m0_37922443/article/details/126487240
|
||||
.el-table__row td:not(.is-hidden):last-child {
|
||||
right: -1px;
|
||||
}
|
||||
|
||||
thead th:not(.is-hidden):last-child {
|
||||
right: -1px;
|
||||
}
|
||||
//左侧边框不显示end
|
||||
|
||||
.el-select {
|
||||
width: 100%;
|
||||
}
|
||||
.site-navbar__menu {
|
||||
line-height: 50px;
|
||||
height: 50px;
|
||||
}
|
||||
.el-menu.el-menu--horizontal {
|
||||
border-bottom: 0;
|
||||
}
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
// 站点主色
|
||||
// tips: 要达到整站主题修改效果, 请确保[$--color-primary]站点主色与[/src/element-ui-theme/index.js]文件中[import './element-[#17B3A3]/index.css']当前主题色一致
|
||||
$--color-primary: #17B3A3;
|
||||
$--color-primary: #001529;
|
||||
|
||||
// Navbar
|
||||
$navbar--background-color: $--color-primary;
|
||||
|
||||
// Sidebar
|
||||
$sidebar--background-color-dark: #263238;
|
||||
$sidebar--background-color-dark: #000c17;
|
||||
$sidebar--color-text-dark: #8a979e;
|
||||
|
||||
// Content
|
||||
|
||||
@@ -1,3 +1,4 @@
|
||||
@import "normalize"; // api: https://github.com/necolas/normalize.css/
|
||||
@import "variables"; // 站点变量
|
||||
@import "base";
|
||||
@import 'eladmin';
|
||||
|
||||
@@ -36,6 +36,8 @@ Vue.prototype.$http = httpRequest // ajax请求方法
|
||||
Vue.prototype.isAuth = isAuth // 权限方法
|
||||
Vue.prototype.PubSub = PubSub //组件发布订阅消息
|
||||
|
||||
Vue.prototype.$baseUrl = "http://localhost:8070/base-fast"
|
||||
|
||||
Vue.prototype.$imgPath = "http://localhost:8070/base-fast/file/fileController/download?fileName="
|
||||
|
||||
Vue.prototype.$imgBasePath = "http://localhost:8070/base-fast/file/fileController/"
|
||||
|
||||
57
base-vue/src/utils/dict.js
Normal file
57
base-vue/src/utils/dict.js
Normal file
@@ -0,0 +1,57 @@
|
||||
import httpRequest from '@/utils/httpRequest'
|
||||
|
||||
export default class Dict {
|
||||
constructor(dict = {}) {
|
||||
this.dict = dict
|
||||
}
|
||||
async init(names) {
|
||||
if (names === undefined || names === null) {
|
||||
throw new Error('need Dict names')
|
||||
}
|
||||
const ps = []
|
||||
names.forEach(n => {
|
||||
ps.push(httpRequest({
|
||||
url: httpRequest.adornUrl(`/api/dict/dictDetail?code=${n}&page=0&size=9999`),
|
||||
method: 'get'
|
||||
}).then(({data}) => {
|
||||
this.dict[n] = [...data.content]
|
||||
}))
|
||||
})
|
||||
await Promise.all(ps)
|
||||
}
|
||||
|
||||
get() {
|
||||
return this.dict
|
||||
}
|
||||
}
|
||||
|
||||
const myDict = new Dict()
|
||||
|
||||
function dictDetail (names) {
|
||||
return {
|
||||
data () {
|
||||
return {
|
||||
dicts: names,
|
||||
dictsOpt: myDict.get('contract_type')
|
||||
}
|
||||
},
|
||||
filters: {
|
||||
dictLabel (index, array) {
|
||||
const value = String(index)
|
||||
const valueToLabelMap = new Map(array.map(item => [String(item.value), item.label]))
|
||||
const label = valueToLabelMap.get(value)
|
||||
return label
|
||||
}
|
||||
},
|
||||
beforeCreate () {
|
||||
myDict.init(names).then(() => {
|
||||
this.dictsOpt = myDict.get()
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
export {
|
||||
dictDetail
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
<p class="brand-info__intro"></p>
|
||||
</div>
|
||||
<div class="login-main">
|
||||
<h2 style="text-slign:center;">Flowable流程设计管理系统</h2>
|
||||
<h2 style="text-slign:center;">诺力售后管理平台</h2>
|
||||
<h3 class="login-title">登录 <a href="http://localhost:8001/#/register">注册</a></h3>
|
||||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" status-icon>
|
||||
<el-form-item prop="userName">
|
||||
|
||||
@@ -2,8 +2,9 @@
|
||||
<el-dialog
|
||||
title="修改密码"
|
||||
:visible.sync="visible"
|
||||
:append-to-body="true">
|
||||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
:append-to-body="true"
|
||||
width="500px">
|
||||
<el-form :model="dataForm" :rules="dataRule" size="mini" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
<el-form-item label="账号">
|
||||
<span>{{ userName }}</span>
|
||||
</el-form-item>
|
||||
@@ -18,8 +19,8 @@
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="visible = false">取消</el-button>
|
||||
<el-button type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
<el-button size="mini" @click="visible = false">取消</el-button>
|
||||
<el-button size="mini" type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
@@ -2,8 +2,8 @@
|
||||
<nav class="site-navbar" :class="'site-navbar--' + navbarLayoutType">
|
||||
<div class="site-navbar__header">
|
||||
<h1 class="site-navbar__brand" @click="$router.push({ name: 'home' })">
|
||||
<a class="site-navbar__brand-lg" href="javascript:;">Flowable流程设计管理系统</a>
|
||||
<a class="site-navbar__brand-mini" href="javascript:;">农机</a>
|
||||
<a class="site-navbar__brand-lg" href="javascript:;"><img :src="logo">诺力售后管理平台</a>
|
||||
<a class="site-navbar__brand-mini" href="javascript:;"><img :src="logo"></a>
|
||||
</h1>
|
||||
</div>
|
||||
<div class="site-navbar__body clearfix">
|
||||
@@ -44,12 +44,14 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import Logo from '@/assets/img/logo.png'
|
||||
import UpdatePassword from './main-navbar-update-password'
|
||||
import { clearLoginInfo } from '@/utils'
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
updatePassowrdVisible: false
|
||||
updatePassowrdVisible: false,
|
||||
logo: Logo
|
||||
}
|
||||
},
|
||||
activated () {
|
||||
|
||||
@@ -2,8 +2,9 @@
|
||||
<el-dialog
|
||||
:title="!dataForm.carId ? '新增' : '修改'"
|
||||
:close-on-click-modal="false"
|
||||
:visible.sync="visible">
|
||||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
:visible.sync="visible"
|
||||
width="500px">
|
||||
<el-form :model="dataForm" :rules="dataRule" size="mini" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
<el-form-item label="车型名称" prop="carName">
|
||||
<el-input v-model="dataForm.carName" placeholder="车型名称"></el-input>
|
||||
</el-form-item>
|
||||
@@ -31,8 +32,8 @@
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="visible = false">取消</el-button>
|
||||
<el-button type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
<el-button size="mini" @click="visible = false">取消</el-button>
|
||||
<el-button size="mini" type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="mod-config">
|
||||
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
|
||||
<el-form :inline="true" :model="dataForm" size="mini" @keyup.enter.native="getDataList()">
|
||||
<el-form-item>
|
||||
<el-input v-model="dataForm.key" placeholder="参数名" clearable></el-input>
|
||||
</el-form-item>
|
||||
@@ -13,6 +13,7 @@
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
size="mini"
|
||||
v-loading="dataListLoading"
|
||||
@selection-change="selectionChangeHandle"
|
||||
style="width: 100%;">
|
||||
|
||||
@@ -2,8 +2,9 @@
|
||||
<el-dialog
|
||||
:title="!dataForm.clientId ? '新增' : '修改'"
|
||||
:close-on-click-modal="false"
|
||||
:visible.sync="visible">
|
||||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
:visible.sync="visible"
|
||||
width="500px">
|
||||
<el-form :model="dataForm" :rules="dataRule" size="mini" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
<el-form-item label="客户名称" prop="clientName">
|
||||
<el-input v-model="dataForm.clientName" placeholder="客户名称"></el-input>
|
||||
</el-form-item>
|
||||
@@ -27,8 +28,8 @@
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="visible = false">取消</el-button>
|
||||
<el-button type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
<el-button size="mini" @click="visible = false">取消</el-button>
|
||||
<el-button size="mini" type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="mod-config">
|
||||
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
|
||||
<el-form :inline="true" :model="dataForm" size="mini" @keyup.enter.native="getDataList()">
|
||||
<el-form-item>
|
||||
<el-input v-model="dataForm.key" placeholder="参数名" clearable></el-input>
|
||||
</el-form-item>
|
||||
@@ -13,6 +13,7 @@
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
size="mini"
|
||||
v-loading="dataListLoading"
|
||||
@selection-change="selectionChangeHandle"
|
||||
style="width: 100%;">
|
||||
|
||||
@@ -3,9 +3,9 @@
|
||||
:title="!dataForm.contractId ? '新增' : '修改'"
|
||||
:close-on-click-modal="false"
|
||||
:visible.sync="visible">
|
||||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="100px" size="mini" label-position="left">
|
||||
<el-row type="flex" justify="space-between">
|
||||
<el-col :span="11">
|
||||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="100px" size="mini">
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="合同类型" prop="contractType">
|
||||
<el-select v-model="dataForm.contractType" placeholder="合同类型" style="width: 100%;">
|
||||
<el-option
|
||||
@@ -17,35 +17,25 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="11">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="合同编号" prop="contractNumber">
|
||||
<el-input v-model="dataForm.contractNumber" placeholder="合同编号"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-form-item label="是否是主合同" prop="isMaster">
|
||||
<el-switch
|
||||
v-model="dataForm.isMaster"
|
||||
active-color="#409EFF"
|
||||
inactive-color="#F56C6C"
|
||||
:active-value="1"
|
||||
:inactive-value="0"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-row type="flex" justify="space-between">
|
||||
<el-col :span="11">
|
||||
<el-form-item label="客户" prop="clientId">
|
||||
<el-select v-model="dataForm.clientId" placeholder="客户" style="width: 100%;">
|
||||
<el-option
|
||||
v-for="item in clientIdOpt"
|
||||
:key="item.clientId"
|
||||
:label="item.clientName"
|
||||
:value="item.clientId">
|
||||
</el-option>
|
||||
</el-select>
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="是否是主合同" prop="isMaster">
|
||||
<el-switch
|
||||
v-model="dataForm.isMaster"
|
||||
active-color="#409EFF"
|
||||
inactive-color="#F56C6C"
|
||||
:active-value="1"
|
||||
:inactive-value="0"
|
||||
/>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="11">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="是否验收" prop="isAcceptance">
|
||||
<el-switch
|
||||
v-model="dataForm.isAcceptance"
|
||||
@@ -58,17 +48,29 @@
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="11">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="客户" prop="clientId">
|
||||
<el-select v-model="dataForm.clientId" placeholder="客户" style="width: 100%;">
|
||||
<el-option
|
||||
v-for="item in clientIdOpt"
|
||||
:key="item.clientId"
|
||||
:label="item.clientName"
|
||||
:value="item.clientId">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="备注" prop="remarks">
|
||||
<el-input v-model="dataForm.remarks" placeholder="备注"></el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row type="flex" justify="space-between">
|
||||
<el-col :span="11">
|
||||
<el-row>
|
||||
<el-col :span="12">
|
||||
<el-button size="mini" type="primary" @click="addMaterial">选择物料</el-button>
|
||||
</el-col>
|
||||
<el-col :span="11">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="总计">
|
||||
<el-input v-model="dataForm.totalSum" placeholder="总计" disabled></el-input>
|
||||
</el-form-item>
|
||||
@@ -214,12 +216,6 @@
|
||||
align="center"
|
||||
label="是否启用">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="创建时间">
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-pagination
|
||||
@size-change="sizeChangeHandle"
|
||||
@@ -244,8 +240,6 @@
|
||||
return {
|
||||
visible: false,
|
||||
innerVisible: false,
|
||||
contractTypeOpt: [],
|
||||
clientIdOpt: [],
|
||||
dataForm: {
|
||||
contractId: 0,
|
||||
contractType: '',
|
||||
@@ -279,6 +273,10 @@
|
||||
materData: []
|
||||
}
|
||||
},
|
||||
props: {
|
||||
contractTypeOpt: Array,
|
||||
clientIdOpt: Array
|
||||
},
|
||||
watch: {
|
||||
materData: {
|
||||
deep: true,
|
||||
@@ -287,24 +285,7 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
created () {
|
||||
this.getDictDetail()
|
||||
},
|
||||
methods: {
|
||||
getDictDetail () {
|
||||
this.$http({
|
||||
url: this.$http.adornUrl('/api/dict/dictDetail?code=contract_type&page=0&size=9999'),
|
||||
method: 'get'
|
||||
}).then(({data}) => {
|
||||
this.contractTypeOpt = [...data.content]
|
||||
})
|
||||
this.$http({
|
||||
url: this.$http.adornUrl('/client/client/list?page=0&limit=9999'),
|
||||
method: 'get'
|
||||
}).then(({data}) => {
|
||||
this.clientIdOpt = data.page.list
|
||||
})
|
||||
},
|
||||
init (id) {
|
||||
this.dataForm.contractId = id || 0
|
||||
this.visible = true
|
||||
|
||||
@@ -8,7 +8,6 @@
|
||||
<el-button @click="getDataList()">查询</el-button>
|
||||
<el-button v-if="isAuth('tickets:contract:save')" type="primary" @click="addOrUpdateHandle()">新增</el-button>
|
||||
<el-button v-if="isAuth('tickets:contract:delete')" type="danger" @click="deleteHandle()" :disabled="dataListSelections.length <= 0">批量删除</el-button>
|
||||
<el-button type="primary" @click="addTempHandle">模板生成</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-table
|
||||
@@ -28,19 +27,42 @@
|
||||
prop="contractId"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="id">
|
||||
label="合同ID">
|
||||
<template slot-scope="scope">
|
||||
<el-popover
|
||||
:content="'file/' + scope.row.type + '/' + scope.row.realName"
|
||||
placement="top-start"
|
||||
title="路径"
|
||||
width="200"
|
||||
trigger="hover"
|
||||
>
|
||||
<a
|
||||
slot="reference"
|
||||
:href="$baseUrl + '/file/' + scope.row.type + '/' + scope.row.realName"
|
||||
class="el-link--primary"
|
||||
style="word-break:keep-all;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color: #1890ff;font-size: 13px;"
|
||||
target="_blank"
|
||||
>
|
||||
{{ scope.row.name }}
|
||||
</a>
|
||||
</el-popover>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="contractType"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="合同类型">
|
||||
<template slot-scope="scope">
|
||||
{{ scope.row.contractType | dictLabel(dictsOpt['contract_type']) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="isMaster"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="是否是主合同">
|
||||
<template slot-scope="scope">
|
||||
{{ ['否', '是'][scope.row.isMaster] }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="contractNumber"
|
||||
@@ -52,19 +74,18 @@
|
||||
prop="clientId"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="客户id">
|
||||
label="客户">
|
||||
<template slot-scope="scope">
|
||||
{{ scope.row.clientId | dictLabel(clientIdOpt) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="materialJson"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="物料信息">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="isAcceptance"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="是否验收">
|
||||
<template slot-scope="scope">
|
||||
{{ ['否', '是'][scope.row.isAcceptance] }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
@@ -92,6 +113,8 @@
|
||||
label="操作">
|
||||
<template slot-scope="scope">
|
||||
<el-button type="text" size="small" @click="addOrUpdateHandle(scope.row.contractId)">修改</el-button>
|
||||
<el-button type="text" size="small" @click="addTempHandle(scope.row.contractId)">模板</el-button>
|
||||
<el-button type="text" size="small" @click="uploadHandle(scope.row.contractId)">上传</el-button>
|
||||
<el-button type="text" size="small" @click="deleteHandle(scope.row.contractId)">删除</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
@@ -106,14 +129,17 @@
|
||||
layout="total, sizes, prev, pager, next, jumper">
|
||||
</el-pagination>
|
||||
<!-- 弹窗, 新增 / 修改 -->
|
||||
<add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add-or-update>
|
||||
<add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" :clientIdOpt="clientIdOpt" :contractTypeOpt="dictsOpt['contract_type']" @refreshDataList="getDataList"></add-or-update>
|
||||
<temp-add-or-update v-if="tempVisible" ref="tempAdd"></temp-add-or-update>
|
||||
<file-upload v-if="uploadVisible" ref="fileUpload"></file-upload>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import AddOrUpdate from './contract-add-or-update'
|
||||
import TempAddOrUpdate from './temp-add-or-update'
|
||||
import FileUpload from './file-upload'
|
||||
import { dictDetail } from '@/utils/dict'
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
@@ -127,17 +153,34 @@
|
||||
dataListLoading: false,
|
||||
dataListSelections: [],
|
||||
addOrUpdateVisible: false,
|
||||
tempVisible: false
|
||||
tempVisible: false,
|
||||
uploadVisible: false,
|
||||
clientIdOpt: []
|
||||
}
|
||||
},
|
||||
mixins: [dictDetail(['contract_type'])],
|
||||
components: {
|
||||
AddOrUpdate,
|
||||
TempAddOrUpdate
|
||||
TempAddOrUpdate,
|
||||
FileUpload
|
||||
},
|
||||
activated () {
|
||||
this.getDictDetail()
|
||||
this.getDataList()
|
||||
},
|
||||
methods: {
|
||||
getDictDetail () {
|
||||
this.$http({
|
||||
url: this.$http.adornUrl('/client/client/list?page=0&limit=9999'),
|
||||
method: 'get'
|
||||
}).then(({data}) => {
|
||||
this.clientIdOpt = data.page.list
|
||||
this.clientIdOpt.map(el => {
|
||||
this.$set(el, 'value', el.clientId)
|
||||
this.$set(el, 'label', el.clientName)
|
||||
})
|
||||
})
|
||||
},
|
||||
// 获取数据列表
|
||||
getDataList () {
|
||||
this.dataListLoading = true
|
||||
@@ -218,6 +261,13 @@
|
||||
this.$nextTick(() => {
|
||||
this.$refs.tempAdd.init(id)
|
||||
})
|
||||
},
|
||||
// 上传文件
|
||||
uploadHandle (id) {
|
||||
this.uploadVisible = true
|
||||
this.$nextTick(() => {
|
||||
this.$refs.fileUpload.init(id)
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
80
base-vue/src/views/modules/contract/file-upload.vue
Normal file
80
base-vue/src/views/modules/contract/file-upload.vue
Normal file
@@ -0,0 +1,80 @@
|
||||
<template>
|
||||
<el-dialog
|
||||
title="文件上传"
|
||||
:close-on-click-modal="false"
|
||||
:visible.sync="visible"
|
||||
width="500px">
|
||||
<el-form :model="dataForm" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
<el-form-item label="文件名" prop="name">
|
||||
<el-input v-model="dataForm.name" placeholder="文件名"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="上传">
|
||||
<el-upload
|
||||
ref="upload"
|
||||
:limit="1"
|
||||
:before-upload="beforeUpload"
|
||||
:auto-upload="false"
|
||||
:headers="headers"
|
||||
:on-success="handleSuccess"
|
||||
:on-error="handleError"
|
||||
:action="$baseUrl + '/api/localStorage' + '?name=' + dataForm.name"
|
||||
>
|
||||
<div class="eladmin-upload"><i class="el-icon-upload" />添加文件</div>
|
||||
<div slot="tip" class="el-upload__tip">可上传任意格式文件,且不超过100M</div>
|
||||
</el-upload>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="visible = false">取消</el-button>
|
||||
<el-button type="primary" @click="upload">确定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
visible: false,
|
||||
dataForm: {
|
||||
name: ''
|
||||
},
|
||||
headers: { 'Authorization': 'Bearer ' + this.$cookie.get('token') }
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
init (id) {
|
||||
this.visible = true
|
||||
this.$nextTick(() => {
|
||||
this.$refs['dataForm'].resetFields()
|
||||
})
|
||||
},
|
||||
beforeUpload(file) {
|
||||
let isLt2M = true
|
||||
isLt2M = file.size / 1024 / 1024 < 100
|
||||
if (!isLt2M) {
|
||||
this.$message.error('上传文件大小不能超过 100MB!')
|
||||
}
|
||||
this.dataForm.name = file.name
|
||||
return isLt2M
|
||||
},
|
||||
handleSuccess(response, file, fileList) {
|
||||
this.$notify({title: '上传成功',type: 'success'})
|
||||
this.$refs.upload.clearFiles()
|
||||
},
|
||||
handleError(e, file, fileList) {
|
||||
const msg = JSON.parse(e.message)
|
||||
this.$notify({
|
||||
title: msg.message,
|
||||
type: 'error',
|
||||
duration: 2500
|
||||
})
|
||||
},
|
||||
upload() {
|
||||
this.$refs.upload.submit()
|
||||
this.visible = false
|
||||
this.$emit('refreshDataList')
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="mod-config">
|
||||
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
|
||||
<el-form :inline="true" :model="dataForm" size="mini" @keyup.enter.native="getDataList()">
|
||||
<el-form-item>
|
||||
<el-input v-model="dataForm.key" placeholder="参数名" clearable></el-input>
|
||||
</el-form-item>
|
||||
@@ -11,6 +11,7 @@
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
size="mini"
|
||||
v-loading="dataListLoading"
|
||||
@selection-change="selectionChangeHandle"
|
||||
style="width: 100%;">
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="mod-config">
|
||||
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
|
||||
<el-form :inline="true" :model="dataForm" size="mini" @keyup.enter.native="getDataList()">
|
||||
<el-form-item>
|
||||
<el-input v-model="dataForm.key" placeholder="参数名" clearable></el-input>
|
||||
</el-form-item>
|
||||
@@ -11,6 +11,7 @@
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
size="mini"
|
||||
v-loading="dataListLoading"
|
||||
@selection-change="selectionChangeHandle"
|
||||
style="width: 100%;">
|
||||
|
||||
@@ -2,16 +2,17 @@
|
||||
<el-dialog
|
||||
:title="!dataForm.id ? '新增' : '修改'"
|
||||
:close-on-click-modal="false"
|
||||
:visible.sync="visible">
|
||||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
:visible.sync="visible"
|
||||
width="500px">
|
||||
<el-form :model="dataForm" :rules="dataRule" size="mini" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
<el-form-item label="流程名称" prop="name">
|
||||
<el-input v-model="dataForm.name" placeholder="流程名称"></el-input>
|
||||
</el-form-item>
|
||||
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="visible = false">取消</el-button>
|
||||
<el-button type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
<el-button size="mini" @click="visible = false">取消</el-button>
|
||||
<el-button size="mini" type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="mod-config">
|
||||
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
|
||||
<el-form :inline="true" :model="dataForm" size="mini" @keyup.enter.native="getDataList()">
|
||||
<el-form-item>
|
||||
<el-input v-model="dataForm.key" placeholder="参数名" clearable></el-input>
|
||||
</el-form-item>
|
||||
@@ -11,6 +11,7 @@
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
size="mini"
|
||||
v-loading="dataListLoading"
|
||||
@selection-change="selectionChangeHandle"
|
||||
style="width: 100%;">
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="mod-config">
|
||||
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
|
||||
<el-form :inline="true" :model="dataForm" size="mini" @keyup.enter.native="getDataList()">
|
||||
<el-form-item>
|
||||
<el-input v-model="dataForm.key" placeholder="参数名" clearable></el-input>
|
||||
</el-form-item>
|
||||
@@ -11,6 +11,7 @@
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
size="mini"
|
||||
v-loading="dataListLoading"
|
||||
@selection-change="selectionChangeHandle"
|
||||
style="width: 100%;">
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="mod-config">
|
||||
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
|
||||
<el-form :inline="true" :model="dataForm" size="mini" @keyup.enter.native="getDataList()">
|
||||
<el-form-item>
|
||||
<el-input v-model="dataForm.key" placeholder="参数名" clearable></el-input>
|
||||
</el-form-item>
|
||||
@@ -11,6 +11,7 @@
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
size="mini"
|
||||
v-loading="dataListLoading"
|
||||
@selection-change="selectionChangeHandle"
|
||||
style="width: 100%;">
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="mod-config">
|
||||
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
|
||||
<el-form :inline="true" :model="dataForm" size="mini" @keyup.enter.native="getDataList()">
|
||||
<el-form-item>
|
||||
<el-input v-model="dataForm.key" placeholder="参数名" clearable></el-input>
|
||||
</el-form-item>
|
||||
@@ -11,6 +11,7 @@
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
size="mini"
|
||||
v-loading="dataListLoading"
|
||||
@selection-change="selectionChangeHandle"
|
||||
style="width: 100%;">
|
||||
|
||||
@@ -2,8 +2,9 @@
|
||||
<el-dialog
|
||||
:title="!dataForm.materialId ? '新增' : '修改'"
|
||||
:close-on-click-modal="false"
|
||||
:visible.sync="visible">
|
||||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
:visible.sync="visible"
|
||||
width="500px">
|
||||
<el-form :model="dataForm" :rules="dataRule" size="mini" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
<el-form-item label="物料编码" prop="materialCode">
|
||||
<el-input v-model="dataForm.materialCode" placeholder="物料编码"></el-input>
|
||||
</el-form-item>
|
||||
@@ -31,8 +32,8 @@
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="visible = false">取消</el-button>
|
||||
<el-button type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
<el-button size="mini" @click="visible = false">取消</el-button>
|
||||
<el-button size="mini" type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="mod-config">
|
||||
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
|
||||
<el-form :inline="true" :model="dataForm" size="mini" @keyup.enter.native="getDataList()">
|
||||
<el-form-item>
|
||||
<el-input v-model="dataForm.key" placeholder="参数名" clearable></el-input>
|
||||
</el-form-item>
|
||||
@@ -13,6 +13,7 @@
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
size="mini"
|
||||
v-loading="dataListLoading"
|
||||
@selection-change="selectionChangeHandle"
|
||||
style="width: 100%;">
|
||||
|
||||
@@ -1,70 +0,0 @@
|
||||
<template>
|
||||
<el-dialog
|
||||
title="工单基本信息"
|
||||
:close-on-click-modal="false"
|
||||
:visible.sync="visible">
|
||||
<el-form :model="dataForm" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="140px">
|
||||
<el-form-item label="车型">
|
||||
<el-select v-model="dataForm.type" placeholder="车型">
|
||||
<el-option label="区域一" value="shanghai"></el-option>
|
||||
<el-option label="区域二" value="beijing"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="工单编号">
|
||||
<el-input v-model="dataForm.code" placeholder="工单编号"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="故障类别">
|
||||
<el-select v-model="dataForm.type" placeholder="故障类别">
|
||||
<el-option label="区域一" value="shanghai"></el-option>
|
||||
<el-option label="区域二" value="beijing"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="关联主合同编号">
|
||||
<el-input v-model="dataForm.code" placeholder="关联主合同编号"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="客户">
|
||||
<el-select v-model="dataForm.type" placeholder="客户">
|
||||
<el-option label="区域一" value="shanghai"></el-option>
|
||||
<el-option label="区域二" value="beijing"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="故障描述">
|
||||
<el-input type="textarea" :rows="3" placeholder="故障描述" v-model="dataForm.code"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="客户对接人">
|
||||
<el-input v-model="dataForm.code" placeholder="客户对接人"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="客户联系电话">
|
||||
<el-input v-model="dataForm.code" placeholder="客户联系电话"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="visible = false">取消</el-button>
|
||||
<el-button type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
visible: false,
|
||||
dataForm: {
|
||||
type: '',
|
||||
code: ''
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
init (id) {
|
||||
this.visible = true
|
||||
this.$nextTick(() => {
|
||||
this.$refs['dataForm'].resetFields()
|
||||
})
|
||||
},
|
||||
// 表单提交
|
||||
dataFormSubmit () {}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -1,205 +0,0 @@
|
||||
<template>
|
||||
<div class="mod-order">
|
||||
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
|
||||
<el-form-item label="工单类型">
|
||||
<el-select v-model="dataForm.type" placeholder="工单类型">
|
||||
<el-option label="区域一" value="shanghai"></el-option>
|
||||
<el-option label="区域二" value="beijing"></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="工单编号">
|
||||
<el-input v-model="dataForm.number" placeholder="工单编号" clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="客户名称">
|
||||
<el-input v-model="dataForm.name" placeholder="客户名称" clearable></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button @click="getDataList()">查询</el-button>
|
||||
<el-button type="primary" @click="addOrUpdateHandle">新增</el-button>
|
||||
<el-button type="danger">删除</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
v-loading="dataListLoading"
|
||||
@selection-change="selectionChangeHandle"
|
||||
style="width: 100%;">
|
||||
<el-table-column
|
||||
type="selection"
|
||||
header-align="center"
|
||||
align="center"
|
||||
width="50">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="roleName"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="工单编号">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="roleName"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="车型类型">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="roleName"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="客户名称">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="roleName"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="合同号">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="roleName"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="故障分类">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="roleName"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="是否验收">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="roleName"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="工单状态">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="roleName"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="生成时间">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="roleName"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="创建人">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="roleName"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="处理人">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="roleName"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="关闭时间">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="roleName"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="附件资料">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
fixed="right"
|
||||
header-align="center"
|
||||
align="center"
|
||||
width="150"
|
||||
label="操作">
|
||||
<template slot-scope="scope">
|
||||
<el-button type="text" size="small" @click="assignHandle(scope.row.id)">指派</el-button>
|
||||
<el-button type="text" size="small">关闭</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<el-pagination
|
||||
@size-change="sizeChangeHandle"
|
||||
@current-change="currentChangeHandle"
|
||||
:current-page="pageIndex"
|
||||
:page-sizes="[10, 20, 50, 100]"
|
||||
:page-size="pageSize"
|
||||
:total="totalPage"
|
||||
layout="total, sizes, prev, pager, next, jumper">
|
||||
</el-pagination>
|
||||
<!-- 弹窗, 新增 / 修改 -->
|
||||
<add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add-or-update>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import AddOrUpdate from './order-add-or-update'
|
||||
export default {
|
||||
components: {
|
||||
AddOrUpdate
|
||||
},
|
||||
data () {
|
||||
return {
|
||||
dataForm: {
|
||||
type: '',
|
||||
number: '',
|
||||
name: ''
|
||||
},
|
||||
dataList: [],
|
||||
pageIndex: 1,
|
||||
pageSize: 10,
|
||||
totalPage: 0,
|
||||
dataListLoading: false,
|
||||
dataListSelections: [],
|
||||
addOrUpdateVisible: false
|
||||
}
|
||||
},
|
||||
activated () {
|
||||
this.getDataList()
|
||||
},
|
||||
methods: {
|
||||
// 获取数据列表
|
||||
getDataList () {
|
||||
this.dataListLoading = true
|
||||
this.$http({
|
||||
url: this.$http.adornUrl('/sys/role/list'),
|
||||
method: 'get',
|
||||
params: this.$http.adornParams({
|
||||
'page': this.pageIndex,
|
||||
'limit': this.pageSize,
|
||||
'roleName': this.dataForm.roleName
|
||||
})
|
||||
}).then(({data}) => {
|
||||
if (data && data.code === 0) {
|
||||
this.dataList = data.page.list
|
||||
this.totalPage = data.page.totalCount
|
||||
} else {
|
||||
this.dataList = []
|
||||
this.totalPage = 0
|
||||
}
|
||||
this.dataListLoading = false
|
||||
})
|
||||
},
|
||||
// 每页数
|
||||
sizeChangeHandle (val) {
|
||||
this.pageSize = val
|
||||
this.pageIndex = 1
|
||||
this.getDataList()
|
||||
},
|
||||
// 当前页
|
||||
currentChangeHandle (val) {
|
||||
this.pageIndex = val
|
||||
this.getDataList()
|
||||
},
|
||||
// 多选
|
||||
selectionChangeHandle (val) {
|
||||
this.dataListSelections = val
|
||||
},
|
||||
// 新增
|
||||
addOrUpdateHandle (id) {
|
||||
this.addOrUpdateVisible = true
|
||||
this.$nextTick(() => {
|
||||
this.$refs.addOrUpdate.init(id)
|
||||
})
|
||||
},
|
||||
assignHandle (id) {}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@@ -2,8 +2,9 @@
|
||||
<el-dialog
|
||||
:title="dataForm.deptId === null ? '新增部门信息' : '修改部门信息'"
|
||||
:close-on-click-modal="false"
|
||||
:visible.sync="visible">
|
||||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
:visible.sync="visible"
|
||||
width="500px">
|
||||
<el-form :model="dataForm" :rules="dataRule" size="mini" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
<el-form-item label="部门编码" prop="code">
|
||||
<el-input v-model="dataForm.code" placeholder="部门编码"></el-input>
|
||||
</el-form-item>
|
||||
@@ -48,8 +49,8 @@
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="visible = false">取消</el-button>
|
||||
<el-button type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
<el-button size="mini" @click="visible = false">取消</el-button>
|
||||
<el-button size="mini" type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="dept-menu">
|
||||
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
|
||||
<el-form :inline="true" :model="dataForm" size="mini" @keyup.enter.native="getDataList()">
|
||||
<el-form-item>
|
||||
<el-input
|
||||
v-model="dataForm.name"
|
||||
@@ -25,6 +25,7 @@
|
||||
<el-table
|
||||
v-loading="dataListLoading"
|
||||
border
|
||||
size="mini"
|
||||
lazy
|
||||
:load="getDeptDatas"
|
||||
:default-sort="{prop: 'deptSort', order: 'ascending'}"
|
||||
|
||||
@@ -2,8 +2,9 @@
|
||||
<el-dialog
|
||||
:title="dataForm.dictId === null ? '新增字典' : '修改字典'"
|
||||
:close-on-click-modal="false"
|
||||
:visible.sync="visible">
|
||||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
:visible.sync="visible"
|
||||
width="500px">
|
||||
<el-form :model="dataForm" :rules="dataRule" size="mini" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
<el-form-item label="字典编码" prop="code">
|
||||
<el-input v-model="dataForm.code" placeholder="字典编码"></el-input>
|
||||
</el-form-item>
|
||||
@@ -12,8 +13,8 @@
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="visible = false">取消</el-button>
|
||||
<el-button type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
<el-button size="mini" @click="visible = false">取消</el-button>
|
||||
<el-button size="mini" type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<el-row :gutter="10">
|
||||
<el-col :xs="13" :sm="13" :md="13" :lg="13" :xl="13" style="margin-bottom: 10px">
|
||||
<el-card>
|
||||
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
|
||||
<el-form :inline="true" :model="dataForm" size="mini" @keyup.enter.native="getDataList()">
|
||||
<el-form-item>
|
||||
<el-input v-model="dataForm.blurry" placeholder="输入名称或者描述搜索" clearable></el-input>
|
||||
</el-form-item>
|
||||
@@ -16,6 +16,7 @@
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
size="mini"
|
||||
v-loading="dataListLoading"
|
||||
highlight-current-row
|
||||
style="width: 100%;"
|
||||
@@ -66,7 +67,7 @@
|
||||
<el-card>
|
||||
<div slot="header" class="card-title">
|
||||
<span>字典详情</span>
|
||||
<el-button v-if="isAuth('sys:dict:add')" style="float: right;" type="primary" @click="detailAddOrUpdateHandle()">新增</el-button>
|
||||
<el-button size="mini" v-if="isAuth('sys:dict:add')" style="float: right;" type="primary" @click="detailAddOrUpdateHandle()">新增</el-button>
|
||||
</div>
|
||||
<div v-if="query.code === ''">
|
||||
<div class="my-code">点击字典查看详情</div>
|
||||
@@ -75,6 +76,7 @@
|
||||
<el-table
|
||||
:data="detailList"
|
||||
border
|
||||
size="mini"
|
||||
v-loading="detailListLoading"
|
||||
highlight-current-row
|
||||
style="width: 100%;">
|
||||
|
||||
@@ -2,8 +2,9 @@
|
||||
<el-dialog
|
||||
:title="dataForm.dict_id === null ? '新增字典详情' : '修改字典详情'"
|
||||
:close-on-click-modal="false"
|
||||
:visible.sync="visible">
|
||||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
:visible.sync="visible"
|
||||
width="500px">
|
||||
<el-form :model="dataForm" :rules="dataRule" size="mini" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
<el-form-item label="字典标签" prop="label">
|
||||
<el-input v-model="dataForm.label" placeholder="字典标签"></el-input>
|
||||
</el-form-item>
|
||||
@@ -29,8 +30,8 @@
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="visible = false">取消</el-button>
|
||||
<el-button type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
<el-button size="mini" @click="visible = false">取消</el-button>
|
||||
<el-button size="mini" type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="mod-log">
|
||||
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
|
||||
<el-form :inline="true" :model="dataForm" size="mini" @keyup.enter.native="getDataList()">
|
||||
<el-form-item>
|
||||
<el-input v-model="dataForm.key" placeholder="用户名/用户操作" clearable></el-input>
|
||||
</el-form-item>
|
||||
@@ -11,6 +11,7 @@
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
size="mini"
|
||||
v-loading="dataListLoading"
|
||||
style="width: 100%">
|
||||
<el-table-column
|
||||
|
||||
@@ -2,8 +2,9 @@
|
||||
<el-dialog
|
||||
:title="!dataForm.id ? '新增' : '修改'"
|
||||
:close-on-click-modal="false"
|
||||
:visible.sync="visible">
|
||||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
:visible.sync="visible"
|
||||
width="500px">
|
||||
<el-form :model="dataForm" :rules="dataRule" size="mini" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
<el-form-item label="类型" prop="type">
|
||||
<el-radio-group v-model="dataForm.type">
|
||||
<el-radio v-for="(type, index) in dataForm.typeList" :label="index" :key="index">{{ type }}</el-radio>
|
||||
@@ -71,8 +72,8 @@
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="visible = false">取消</el-button>
|
||||
<el-button type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
<el-button size="mini" @click="visible = false">取消</el-button>
|
||||
<el-button size="mini" type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="mod-menu">
|
||||
<el-form :inline="true" :model="dataForm">
|
||||
<el-form :inline="true" :model="dataForm" size="mini">
|
||||
<el-form-item>
|
||||
<el-button v-if="isAuth('sys:menu:save')" type="primary" @click="addOrUpdateHandle()">新增</el-button>
|
||||
</el-form-item>
|
||||
@@ -10,6 +10,7 @@
|
||||
:data="dataList"
|
||||
row-key="menuId"
|
||||
border
|
||||
size="mini"
|
||||
style="width: 100%; ">
|
||||
<el-table-column
|
||||
prop="name"
|
||||
|
||||
@@ -2,8 +2,9 @@
|
||||
<el-dialog
|
||||
:title="!dataForm.id ? '新增' : '修改'"
|
||||
:close-on-click-modal="false"
|
||||
:visible.sync="visible">
|
||||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
:visible.sync="visible"
|
||||
width="500px">
|
||||
<el-form :model="dataForm" :rules="dataRule" size="mini" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
<el-form-item label="标题" prop="name">
|
||||
<el-input v-model="dataForm.name" placeholder="标题"></el-input>
|
||||
</el-form-item>
|
||||
@@ -23,8 +24,8 @@
|
||||
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="visible = false">取消</el-button>
|
||||
<el-button type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
<el-button size="mini" @click="visible = false">取消</el-button>
|
||||
<el-button size="mini" type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="mod-config">
|
||||
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
|
||||
<el-form :inline="true" :model="dataForm" size="mini" @keyup.enter.native="getDataList()">
|
||||
<el-form-item>
|
||||
<el-input v-model="dataForm.key" placeholder="参数名" clearable></el-input>
|
||||
</el-form-item>
|
||||
@@ -13,6 +13,7 @@
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
size="mini"
|
||||
v-loading="dataListLoading"
|
||||
@selection-change="selectionChangeHandle"
|
||||
style="width: 100%;">
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
<template>
|
||||
<div class="wrapper">
|
||||
<div style="height: 60px; line-height: 60px; font-size: 20px; padding-left: 50px; color: white;
|
||||
background-color: rgba(0,0,0,0.2)">Flowable流程设计管理系统</div>
|
||||
background-color: rgba(0,0,0,0.2)">诺力售后管理平台</div>
|
||||
<div style="margin: 150px auto; background-color: #fff; width: 350px; height: 340px; padding: 20px; border-radius: 10px">
|
||||
<div style="margin: 20px 0; text-align: center; font-size: 24px"><b>注 册</b></div>
|
||||
<el-form :model="user" :rules="rules" ref="userForm">
|
||||
|
||||
@@ -2,15 +2,16 @@
|
||||
<el-dialog
|
||||
:title="!dataForm.id ? '新增' : '修改'"
|
||||
:close-on-click-modal="false"
|
||||
:visible.sync="visible">
|
||||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
:visible.sync="visible"
|
||||
width="500px">
|
||||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" size="mini" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
<el-form-item label="角色名称" prop="roleName">
|
||||
<el-input v-model="dataForm.roleName" placeholder="角色名称"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="备注" prop="remark">
|
||||
<el-input v-model="dataForm.remark" placeholder="备注"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item size="mini" label="授权">
|
||||
<el-form-item label="授权">
|
||||
<el-tree
|
||||
:data="menuList"
|
||||
:props="menuListTreeProps"
|
||||
@@ -22,8 +23,8 @@
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="visible = false">取消</el-button>
|
||||
<el-button type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
<el-button size="mini" @click="visible = false">取消</el-button>
|
||||
<el-button size="mini" type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="mod-role">
|
||||
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
|
||||
<el-form :inline="true" :model="dataForm" size="mini" @keyup.enter.native="getDataList()">
|
||||
<el-form-item>
|
||||
<el-input v-model="dataForm.roleName" placeholder="角色名称" clearable></el-input>
|
||||
</el-form-item>
|
||||
@@ -13,6 +13,7 @@
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
size="mini"
|
||||
v-loading="dataListLoading"
|
||||
@selection-change="selectionChangeHandle"
|
||||
style="width: 100%;">
|
||||
|
||||
@@ -2,8 +2,9 @@
|
||||
<el-dialog
|
||||
:title="!dataForm.id ? '新增' : '修改'"
|
||||
:close-on-click-modal="false"
|
||||
:visible.sync="visible">
|
||||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
:visible.sync="visible"
|
||||
width="500px">
|
||||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" size="mini" @keyup.enter.native="dataFormSubmit()" label-width="80px">
|
||||
<el-form-item label="用户名" prop="userName">
|
||||
<el-input v-model="dataForm.userName" placeholder="登录帐号"></el-input>
|
||||
</el-form-item>
|
||||
@@ -58,8 +59,8 @@
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="visible = false">取消</el-button>
|
||||
<el-button type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
<el-button size="mini" @click="visible = false">取消</el-button>
|
||||
<el-button size="mini" type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</template>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="mod-user">
|
||||
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
|
||||
<el-form :inline="true" :model="dataForm" size="mini" @keyup.enter.native="getDataList()">
|
||||
<el-form-item>
|
||||
<el-input v-model="dataForm.userName" placeholder="用户名" clearable></el-input>
|
||||
</el-form-item>
|
||||
@@ -9,11 +9,12 @@
|
||||
<el-button v-if="isAuth('sys:user:save')" type="primary" @click="addOrUpdateHandle()">新增</el-button>
|
||||
<el-button v-if="isAuth('sys:user:delete')" type="danger" @click="deleteHandle()" :disabled="dataListSelections.length <= 0">批量删除</el-button>
|
||||
</el-form-item>
|
||||
<el-button @click="exp">导出<i class="el-icon-circle-plus-outline"></i></el-button>
|
||||
<el-button size="mini" @click="exp">导出<i class="el-icon-circle-plus-outline"></i></el-button>
|
||||
</el-form>
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
size="mini"
|
||||
v-loading="dataListLoading"
|
||||
@selection-change="selectionChangeHandle"
|
||||
style="width: 100%;">
|
||||
|
||||
@@ -2,12 +2,13 @@
|
||||
<el-dialog
|
||||
:title="!dataForm.ticketsId ? '新增' : '修改'"
|
||||
:close-on-click-modal="false"
|
||||
:visible.sync="visible">
|
||||
<el-form :model="dataForm" :rules="dataRule" ref="dataForm" @keyup.enter.native="dataFormSubmit()" label-width="120px">
|
||||
:visible.sync="visible"
|
||||
width="500px">
|
||||
<el-form :model="dataForm" :rules="dataRule" label-width="100px" size="mini" ref="dataForm" @keyup.enter.native="dataFormSubmit()">
|
||||
<el-form-item label="小车类型" prop="carType">
|
||||
<el-select v-model="dataForm.carType" placeholder="小车类型">
|
||||
<el-option
|
||||
v-for="item in carTypeOpt"
|
||||
v-for="item in dictsOpt['car_type']"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value">
|
||||
@@ -15,9 +16,9 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="异常类型" prop="errorType">
|
||||
<el-select v-model="dataForm.carType" placeholder="小车类型">
|
||||
<el-select v-model="dataForm.carType" placeholder="异常类型">
|
||||
<el-option
|
||||
v-for="item in errorTypeOpt"
|
||||
v-for="item in dictsOpt['error_type']"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value">
|
||||
@@ -25,24 +26,35 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="合同编号" prop="contractNumber">
|
||||
<el-input v-model="dataForm.contractNumber" placeholder="合同编号"></el-input>
|
||||
<el-select v-model="dataForm.contractNumber" placeholder="合同编号">
|
||||
<el-option
|
||||
v-for="item in contractOpt"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="客户" prop="clientId">
|
||||
<el-input v-model="dataForm.clientId" placeholder="客户id"></el-input>
|
||||
<el-select v-model="dataForm.clientId" placeholder="客户">
|
||||
<el-option
|
||||
v-for="item in clientIdOpt"
|
||||
:key="item.value"
|
||||
:label="item.label"
|
||||
:value="item.value">
|
||||
</el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="故障描述" prop="description">
|
||||
<el-input v-model="dataForm.description" placeholder="故障描述"></el-input>
|
||||
<el-input type="textarea" :rows="2" placeholder="故障描述" v-model="dataForm.description"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="客户联系电话" prop="deptPhone">
|
||||
<el-input v-model="dataForm.deptPhone" placeholder="客户联系电话"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item v-show="dataForm.ticketsId" label="是否验收" prop="isCheck">
|
||||
<el-input v-model="dataForm.isCheck" placeholder="是否验收"></el-input>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<span slot="footer" class="dialog-footer">
|
||||
<el-button @click="visible = false">取消</el-button>
|
||||
<el-button type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
<el-button size="mini" @click="visible = false">取消</el-button>
|
||||
<el-button size="mini" type="primary" @click="dataFormSubmit()">确定</el-button>
|
||||
</span>
|
||||
</el-dialog>
|
||||
</template>
|
||||
@@ -61,8 +73,7 @@
|
||||
contractNumber: '',
|
||||
clientId: '',
|
||||
description: '',
|
||||
deptPhone: '',
|
||||
isCheck: ''
|
||||
deptPhone: ''
|
||||
},
|
||||
dataRule: {
|
||||
carType: [
|
||||
@@ -73,31 +84,16 @@
|
||||
],
|
||||
clientId: [
|
||||
{ required: true, message: '客户id不能为空', trigger: 'blur' }
|
||||
],
|
||||
description: [
|
||||
{ required: true, message: '故障描述不能为空', trigger: 'blur' }
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
created () {
|
||||
this.getDictDetail()
|
||||
props: {
|
||||
contractOpt: Array,
|
||||
clientIdOpt: Array,
|
||||
dictsOpt: Object
|
||||
},
|
||||
methods: {
|
||||
getDictDetail () {
|
||||
this.$http({
|
||||
url: this.$http.adornUrl('/api/dict/dictDetail?code=car_type&page=0&size=9999'),
|
||||
method: 'get'
|
||||
}).then(({data}) => {
|
||||
this.carTypeOpt = [...data.content]
|
||||
})
|
||||
this.$http({
|
||||
url: this.$http.adornUrl('/api/dict/dictDetail?code=error_type&page=0&size=9999'),
|
||||
method: 'get'
|
||||
}).then(({data}) => {
|
||||
this.errorTypeOpt = [...data.content]
|
||||
})
|
||||
},
|
||||
init (id) {
|
||||
this.dataForm.ticketsId = id || 0
|
||||
this.visible = true
|
||||
@@ -116,7 +112,6 @@
|
||||
this.dataForm.clientId = data.tickets.clientId
|
||||
this.dataForm.description = data.tickets.description
|
||||
this.dataForm.deptPhone = data.tickets.deptPhone
|
||||
this.dataForm.isCheck = data.tickets.isCheck
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<template>
|
||||
<div class="mod-config">
|
||||
<el-form :inline="true" :model="dataForm" @keyup.enter.native="getDataList()">
|
||||
<el-form :inline="true" :model="dataForm" size="mini" @keyup.enter.native="getDataList()">
|
||||
<el-form-item>
|
||||
<el-input v-model="dataForm.key" placeholder="参数名" clearable></el-input>
|
||||
</el-form-item>
|
||||
@@ -13,6 +13,7 @@
|
||||
<el-table
|
||||
:data="dataList"
|
||||
border
|
||||
size="mini"
|
||||
v-loading="dataListLoading"
|
||||
@selection-change="selectionChangeHandle"
|
||||
style="width: 100%;">
|
||||
@@ -26,7 +27,7 @@
|
||||
prop="ticketsId"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="工单id">
|
||||
label="工单ID">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="carType"
|
||||
@@ -50,7 +51,7 @@
|
||||
prop="clientId"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="客户id">
|
||||
label="客户">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="description"
|
||||
@@ -62,24 +63,27 @@
|
||||
prop="deptPeople"
|
||||
header-align="center"
|
||||
align="center"
|
||||
min-width="90px"
|
||||
label="部门对接人">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="deptPhone"
|
||||
header-align="center"
|
||||
align="center"
|
||||
min-width="100px"
|
||||
label="客户联系电话">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createUserId"
|
||||
header-align="center"
|
||||
align="center"
|
||||
label="创建者ID">
|
||||
label="创建者">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
prop="createTime"
|
||||
header-align="center"
|
||||
align="center"
|
||||
min-width="90px"
|
||||
label="创建时间">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
@@ -98,6 +102,7 @@
|
||||
prop="updateTime"
|
||||
header-align="center"
|
||||
align="center"
|
||||
min-width="100px"
|
||||
label="工单关闭时间">
|
||||
</el-table-column>
|
||||
<el-table-column
|
||||
@@ -122,12 +127,13 @@
|
||||
layout="total, sizes, prev, pager, next, jumper">
|
||||
</el-pagination>
|
||||
<!-- 弹窗, 新增 / 修改 -->
|
||||
<add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" @refreshDataList="getDataList"></add-or-update>
|
||||
<add-or-update v-if="addOrUpdateVisible" ref="addOrUpdate" :contractOpt="contractOpt" :clientIdOpt="clientIdOpt" :dictsOpt="dictsOpt" @refreshDataList="getDataList"></add-or-update>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import AddOrUpdate from './tickets-add-or-update'
|
||||
import { dictDetail } from '@/utils/dict'
|
||||
export default {
|
||||
data () {
|
||||
return {
|
||||
@@ -140,16 +146,42 @@
|
||||
totalPage: 0,
|
||||
dataListLoading: false,
|
||||
dataListSelections: [],
|
||||
addOrUpdateVisible: false
|
||||
addOrUpdateVisible: false,
|
||||
contractOpt: [],
|
||||
clientIdOpt: []
|
||||
}
|
||||
},
|
||||
mixins: [dictDetail(['car_type', 'error_type'])],
|
||||
components: {
|
||||
AddOrUpdate
|
||||
},
|
||||
activated () {
|
||||
this.getDataList()
|
||||
this.getDictDetail()
|
||||
},
|
||||
methods: {
|
||||
getDictDetail () {
|
||||
this.$http({
|
||||
url: this.$http.adornUrl('/flow/contract/list?page=0&limit=9999'),
|
||||
method: 'get'
|
||||
}).then(({data}) => {
|
||||
this.contractOpt = data.page.list
|
||||
this.contractOpt.map(el => {
|
||||
this.$set(el, 'value', el.contractId)
|
||||
this.$set(el, 'label', el.contractNumber)
|
||||
})
|
||||
})
|
||||
this.$http({
|
||||
url: this.$http.adornUrl('/client/client/list?page=0&limit=9999'),
|
||||
method: 'get'
|
||||
}).then(({data}) => {
|
||||
this.clientIdOpt = data.page.list
|
||||
this.clientIdOpt.map(el => {
|
||||
this.$set(el, 'value', el.clientId)
|
||||
this.$set(el, 'label', el.clientName)
|
||||
})
|
||||
})
|
||||
},
|
||||
// 获取数据列表
|
||||
getDataList () {
|
||||
this.dataListLoading = true
|
||||
|
||||
Reference in New Issue
Block a user