Commit 96dc17bb by weix

修改bug、提测工单部分

parent 31e1b6b1
......@@ -2,6 +2,7 @@
<div>
<span>{{ selectName }}</span>
<el-select
:size="sizeType"
v-model="selectList"
filterable
multiple
......@@ -33,6 +34,10 @@ export default {
type: Array,
required: true
},
sizeType: {
type: String,
default: 'small'
},
selectName: {
type: String,
default: ""
......
......@@ -4,6 +4,7 @@
*/
const dataSource = {
'localOrgId': [],
'localTransportId': [],
'operateList': [],
'Typecities': [
{
......@@ -515,8 +516,27 @@ const dataSource = {
},
],
driverTypeList: [
{id: 1, name: '专职司机'},
{id: 2, name: '兼职司机'}
{
id: 1, name: '专职司机'
},
{
id: 2, name: '兼职司机'
}
],
carTypeList: [
{
id: '1',
name: "客车",
},
{
id: '2',
name: "货车",
},
{
id: '3',
name: "巴士型",
}
]
}
......
......@@ -666,5 +666,18 @@ export default {
return '/'
}
},
carTypeListText(val) {
let type = Number(val)
switch (type) {
case 1:
return '客车'
case 2:
return '货车'
case 3:
return '巴士型'
default:
return '/'
}
}
}
}
import {get, post, put, deletes} from '@/request/http'
/** 基础车型增删改查接口 **/
export function modelsQuery(data) {
const url = process.env.VUE_APP_BASE_API7+'/models/query';
return post(url, data)
}
export function modelsAdd(data) {
const url = process.env.VUE_APP_BASE_API7+'/models/add';
return post(url, data)
}
export function modelsUpdate(data) {
const url = process.env.VUE_APP_BASE_API7+'/models/update';
return post(url, data)
}
export function modelsDelete(data, id) {
const url = process.env.VUE_APP_BASE_API7+`/models/delete/${id}`;
return get(url, data)
}
/** 品牌车型增删改查接口 **/
export function carTypeQuery(data) {
const url = process.env.VUE_APP_BASE_API7+'/carType/query';
return post(url, data)
}
export function carTypeAdd(data) {
const url = process.env.VUE_APP_BASE_API7+'/carType';
return post(url, data)
}
export function carTypeDelete(data, id) {
const url = process.env.VUE_APP_BASE_API7+`/carType/${id}`;
return get(url, data)
}
import {get, post, put, deletes} from '@/request/http'
export function carQuery(data) {
const url = process.env.VUE_APP_BASE_API6+'/vehicle/manage/query';
return post(url, data)
}
export function driverQuery(data) {
const url = process.env.VUE_APP_BASE_API6+'/driver/manage/query';
return post(url, data)
}
export function getAllTransport(data) {
const url = process.env.VUE_APP_BASE_API6+'/part/search?transportName=';
return get(url, data)
}
......@@ -173,6 +173,39 @@ export const routes = [
]
},
{
path: '/business',
name: 'business',
component: Layout,
redirect: '/business',
meta: {
icon: 'el-icon-setting',
title: '业务单管理'
},
children: [
{
path: 'complaint-list',
name: 'complaintList',
component: () =>
import('@/views/business/complaintList/index.vue'),
meta: {
icon: 'el-icon-service',
title: '工单列表'
}
},
{
path: 'complaint-detail',
name: 'complaintDetail',
component: () =>
import('@/views/business/complaintList/complaintDetail.vue'),
meta: {
icon: 'el-icon-service',
title: '工单详情'
},
hidden: true
},
]
},
{
path: '/transports',
name: 'transports',
component: Layout,
......
......@@ -95,6 +95,7 @@
</div>
<div class="OrderSection" v-if="listname != '待审核'">
<el-table
stripe
:header-cell-style="{ background: '#eef1f6', color: '#606266' }"
:data="tableData"
style="width: 100%; margin-bottom: 20px"
......@@ -211,6 +212,7 @@
<div class="OrderSection" v-else>
<el-table
stripe
:header-cell-style="{ background: '#eef1f6', color: '#606266' }"
:data="arrlist"
style="width: 100%; margin-bottom: 20px"
......@@ -924,6 +926,10 @@ export default {
this.dialogVisible = true;
},
confirmBtn() {
if (!/^[\u4e00-\u9fa5]+$/.test(this.form.name)) {
this.$message.error("部门名称只能为中文");
return false;
}
if (!util.STRATEGIES.isNonEmpty(this.form.name)) {
this.$message.error("请输入部门名称");
return false;
......
<template>
<el-form :inline="true" v-model="form">
<el-row class="row-d">
<el-col :span="8">
<el-input style="max-width: 300px;" placeholder="请输入手机号/运单编号/订单编号" v-model="form.orderInfo"></el-input>
</el-col>
<el-col :span="8">
<!-- <Selects v-if="dataSource.localOrgId.length > 0" :options="dataSource.localOrgId"-->
<!-- :selectName="'品牌方:'"-->
<!-- :type="'transportIdList'"-->
<!-- @changeList="handlechangeList"></Selects>-->
发单品牌:
<el-select v-model="form.platformId" style="margin-left: 11px;">
<el-option
v-for="(item, index) in dataSource.localOrgId"
:label="item.name"
:value="item.id"
:key="'localOrgId'+index"
>
</el-option>
</el-select>
</el-col>
<el-col :span="8">
<Selects :options="dataSource.localTransportId" v-if="dataSource.localTransportId.length > 0"
:selectName="'承接运力:'"
:type="'transportIds'"
@changeList="handlechangeList"></Selects>
</el-col>
</el-row>
<el-row class="row-d">
<el-col :span="8">
控诉时间:
<el-date-picker
style="max-width: 218px;margin-left: 11px;"
v-model="form.dateTime"
type="daterange"
value-format="yyyy-MM-dd"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期">
</el-date-picker>
</el-col>
<el-col :span="8">
<Selects :options="dataSource.complainCategory"
:selectName="'控诉类别:'"
:type="'complainCategory'"
@changeList="handlechangeList"></Selects>
</el-col>
<el-col :span="8">
<Selects :options="dataSource.complainWay"
:selectName="'控诉方式:'"
:type="'complainWay'"
@changeList="handlechangeList"></Selects>
</el-col>
</el-row>
<el-row class="row-d">
<el-col :span="8">
<Selects :options="dataSource.orderSourceList"
:selectName="'订单来源:'"
:type="'orderSourceList'"
@changeList="handlechangeList"></Selects>
</el-col>
<el-col :span="8">
<Selects :options="dataSource.processingStatus"
:selectName="'处理状态:'"
:type="'processingStatus'"
@changeList="handlechangeList"></Selects>
</el-col>
<el-col :span="8">
<el-button style="padding: 8px 20px;" type="primary" @click="searchByInfo">查询</el-button>
<el-button style="padding: 8px 20px;" type="primary" @click="exportB">批量导出excel</el-button>
</el-col>
</el-row>
</el-form>
</template>
<script>
import Selects from '@/components/Selects'
import dataSource from '@/libs/screen'
import {getAllTransport} from "@/port/carOrDriver/carOrDriver";
import {platformInfosList} from "@/port/platfrom/setting";
import {mapGetters} from 'vuex'
import JudgeType from '@/mixins/judgeType'
import bus from "@/utils/bus";
import {exportComplaint} from "@/port/complaint/complaint";
import {Loading} from "element-ui";
export default {
name: "searchItem",
props: ['runType'],
components: {
Selects
},
computed: {
...mapGetters(['transportId']),
},
mixins: [JudgeType],
data() {
return {
dataSource: dataSource,
form: {
orderInfo: '',
dateTime: [],
platformId: '',
orderSourceList: ['4', '6', '7', '9', '10'],
complainWay: ['1', '2'],
complainCategory: ['1', '2'],
processingStatus: ['0', '1', '2'],
transportIds: []
}
}
},
async created() {
await this.getPlatformFun();
await this.getTransport();
bus.$emit('complaint', this.form);
},
methods:{
async getTransport() {
await getAllTransport({})
.then((res) => {
if (res.status == 200) {
let data = res.data;
let transportIdList = [];
let transportIdListArr = [];
data.forEach((item, index) => {
transportIdListArr.push({
id: String(item.transportId),
name: item.transportName,
});
transportIdList.push(String(item.transportId));
});
this.form.transportIds = transportIdList;
this.dataSource.localTransportId = transportIdListArr;
}
})
},
async exportB() {
let search = this.form;
let params = {
platformId: search.platformId,
transportIds: [this.transportId],
complaintLabel: search.complainCategory, // 投诉类别:1客户投诉2司机投诉
complaintType: search.complainWay, // 投诉类型:1线上投诉2电话投诉3建议
orderSource: search.orderSourceList,
status: search.processingStatus,
page: 1,
rows: 9999,
runType: [this.runType],
queryParam: search.orderInfo,
startTime: search.dateTime.length === 0 ? '' : search.dateTime[0],
endTime: search.dateTime.length === 0 ? '' : search.dateTime[1],
};
let loadingInstance = Loading.service({fullscreen: true});
let res = await exportComplaint(params)
let blob = new Blob([res], {type: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet;charset=utf-8"});
let link = document.createElement('a');
link.href = window.URL.createObjectURL(blob);
loadingInstance.close();
link.download = `工单列表.xlsx`;
link.click();
},
searchByInfo() {
if(!this.form.dateTime) {
this.form.dateTime = []
}
this.$emit('searchByInfo');
},
handlechangeList(val) {
let source = JSON.parse(JSON.stringify(val))
let type = source.type
let data = this.filftersFun(source.data);
this.form[type] = data;
},
async getPlatformFun() {
await platformInfosList({}).then(res => {
if (res.status == 200) {
let transportIdListArr = [];
res.data.forEach((item, index) => {
transportIdListArr.push({id: String(item.platformId), name: item.brandName})
})
this.dataSource.localOrgId = transportIdListArr;
this.form.platformId = transportIdListArr.length > 0 ? transportIdListArr[0].id : '';
}
})
.catch(() => {
})
},
}
}
</script>
<style scoped lang="scss">
.row-d {
.el-col {
padding: 5px 10px;
}
}
</style>
<template>
<el-card style="padding-left: 5px;border-radius: 5px;position:relative;background-color: #ffffff;">
<el-tabs v-model="activeName" type="card" @tab-click="handleClick">
<el-tab-pane
style="padding: 5px 10px;"
v-for="(item, index) in tabs"
:key="index"
:label="item.label"
:name="item.runType">
</el-tab-pane>
</el-tabs>
<searchItem ref="searchItem" :runType="activeName" @searchByInfo="searchByInfo"></searchItem>
<itemList ref="itemList" :runType="activeName" :searchInfo="$refs.searchItem"></itemList>
</el-card>
</template>
<script>
import searchItem from "./components/searchItem";
import itemList from "./components/item"
export default {
name: "index",
components: {
searchItem,
itemList
},
data() {
return {
activeName: '1',
tabs: [
{label: '同城打车', runType: '1'},
{label: '跨城约车', runType: '2'},
{label: '接送用车', runType: '3'},
{label: '包车', runType: '6'},
{label: '货运', runType: '5'}
],
}
},
methods: {
handleClick() {
this.$refs.itemList.initTable({...this.$refs.searchItem.form, ...{runType: [this.activeName]}});
},
searchByInfo() {
this.$refs.itemList.initTable({...this.$refs.searchItem.form, ...{runType: [this.activeName]}});
}
}
}
</script>
<style scoped>
</style>
......@@ -18,7 +18,7 @@
placeholder="请输入车型名称"
>
</el-input>
<el-button type="primary" size="mini" style="margin-left: 10px">
<el-button type="primary" size="mini" style="margin-left: 10px" @click="searchInfo">
查询
</el-button>
</el-form-item>
......@@ -26,36 +26,41 @@
<el-col
style="display: flex; align-items: center; justify-content: end"
>
<el-button type="primary" size="mini"> 添加品牌类型 </el-button>
<el-button type="primary" size="mini" @click="$refs.addDialog.showDialog({})"> 添加品牌类型</el-button>
</el-col>
</el-row>
</el-form>
<el-table
:data="data"
stripe
border
v-loading="tableLoading"
style="margin-top: 10px"
:row-style="tableRowStyle"
:header-cell-style="tableHeaderColor"
>
<el-table-column label="序号" align="center" type="index" width="50">
</el-table-column>
<el-table-column label="车型类别" align="center" prop="type">
<template slot-scope="{row}">
{{carTypeListText(row.type)}}
</template>
</el-table-column>
<el-table-column label="车型名称" align="center" prop="typeName">
<el-table-column label="车型名称" align="center" prop="vehicleName">
</el-table-column>
<el-table-column label="车型标识" align="center" prop="identification">
<el-table-column label="车型标识" align="center" prop="vehicleFlag">
</el-table-column>
<el-table-column label="核载人数" align="center" prop="numpeo">
<el-table-column label="核载人数" align="center" prop="seat">
</el-table-column>
<el-table-column label="操作" align="center" fixed="right" width="120">
<template slot-scope="scope">
<el-button
size="small"
type="text"
@click="$refs.addDialog.showDialog(scope.row)"
>
编辑
</el-button>
<el-button size="small" type="text" style="color: red">
<el-button size="small" type="text" style="color: red" @click="delRow(scope.row)">
删除
</el-button>
</template>
......@@ -66,55 +71,114 @@
background
layout="prev, pager, next, jumper, total"
:total="total"
@current-change="current_change"
>
</el-pagination>
</div>
<addDialog ref="addDialog" @reLoadTable="reLoadTable"></addDialog>
</div>
</template>
<script>
import addDialog from "./componenets/basicsCarType/addDialog";
import JudgeType from "@/mixins/judgeType";
import {
modelsQuery,
modelsDelete
} from "@/port/carModel/carModel";
export default {
name: "BasicsCartype",
mixins: [JudgeType],
components: {
addDialog
},
data() {
return {
activeName: "first",
total:15,
data: [
{
type: "客车",
typeName: "经济型",
identification: "A",
numpeo: 5,
},
{
type: "客车",
typeName: "经济型",
identification: "A",
numpeo: 5,
},
{
type: "客车",
typeName: "经济型",
identification: "A",
numpeo: 5,
},
],
total: 15,
data: [],
form: {
CarModelName: "",
},
tableLoading: false,
page: 1,
size: 10
};
},
created() {},
created() {
this.initTable();
},
methods: {
searchInfo() {
this.page = 1;
this.initTable();
},
current_change(page) {
this.page = page;
this.initTable();
},
delRow(row) {
this.$confirm('删除后不可撤回', '删除提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
})
.then(() => {
modelsDelete({}, row.id)
.then((res) => {
if(res.status === 200) {
this.$message.success('删除成功')
this.initTable();
}else if(res.status === 204) {
this.$confirm('该车型与品牌车型关联,不可删除', '删除提示', {
cancelButtonText: '我知道了',
type: 'warning'
})
}else {
this.$message.error(res.msg);
}
})
})
.catch(() => {
})
},
reLoadTable() {
this.initTable();
},
initTable() {
this.tableLoading = true;
let params = {
vehicleName: this.form.CarModelName,
pageVo:{
page: this.page,
rows: this.size
}
}
modelsQuery(params)
.then((res) => {
if(res.status === 200) {
this.data = res.data.content;
this.total = res.data.total;
}else {
this.$message.error(res.msg);
}
this.tableLoading = false;
})
.catch(() => {
this.tableLoading = false;
})
},
// table变色,行
tableRowStyle({ row, rowIndex }) {
tableRowStyle({row, rowIndex}) {
if (rowIndex % 2 !== 0) {
return { "background-color": "#e3f4ff" };
return {"background-color": "#e3f4ff"};
}
},
// table变色,头
tableHeaderColor({ row, column, rowIndex, columnIndex }) {
return { "background-color": "#0099ff", color: "#ffffff" };
tableHeaderColor({row, column, rowIndex, columnIndex}) {
return {"background-color": "#0099ff", color: "#ffffff"};
},
},
};
......
<template>
<el-dialog
:visible.sync="dialogVisible"
:title="title"
width="40%"
class="form-dialog"
@close="clearInfo"
:close-on-click-modal="false"
:close-on-press-escape="false"
>
<el-form
ref="form"
:model="form"
:rules="rules"
label-position="right"
label-width="150px"
>
<el-form-item label="车型类别:" prop="type">
<el-select v-model="form.type">
<el-option
v-for="(item, index) in dataSource.carTypeList"
:label="item.name"
:value="item.id"
:key="'carTypeList' + index"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="车型名称:" prop="vehicleName">
<el-input v-model="form.vehicleName" placeholder="请输入车辆类型,不超10字" style="width: 221px;">
</el-input>
</el-form-item>
<el-form-item label="车型标识:" prop="vehicleFlag">
<el-input v-model="form.vehicleFlag" oninput="value=value.replace(/[^\d]/g,'')" placeholder="仅可输入数字,不可重复" style="width: 221px;">
</el-input>
</el-form-item>
<el-form-item label="核载人数:" prop="seat" class="seat-form-item">
<div style="display: flex;" class="operation-div">
<el-input
@blur="blurPoint"
oninput="value=value.replace(/[^\d]/g,'')"
maxLength="5"
style="width: 80px;" size="mini" v-model="form.seat"></el-input>
<div class="i-d" @click="changePoint(1)"><i class="el-icon-minus"></i></div>
<div class="i-d" @click="changePoint(0)"><i class="el-icon-plus"></i></div>
</div>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" @click="clearInfo">取 消</el-button>
<el-button :loading="saveLoading" size="small" type="primary" @click="saveInfo">确 定</el-button>
</span>
</el-dialog>
</template>
<script>
import dataSource from "@/libs/screen";
import {
modelsAdd,
modelsUpdate
} from "@/port/carModel/carModel";
export default {
name: "addDialog",
data() {
return {
saveLoading: false,
imageUrl: "",
dialogVisible: false,
dataSource: dataSource,
form: {
type: '1',
vehicleName: '',
vehicleFlag: '',
seat: 5
},
rules: {
type: [
{required: true, message: '请选择车型类别', trigger: 'change'}
],
vehicleName: [
{required: true, message: '请输入车型名称', trigger: 'blur'},
{max: 10, message: '最多可输入十个字'}
],
vehicleFlag: [
{required: true, message: '请输入车型标识', trigger: 'blur'}
],
seat: [
{required: true, message: '请输入核载人数', trigger: 'blur'}
],
},
title: "添加基础车型",
polygonData: [],
};
},
created() {
},
methods: {
blurPoint() {
if(parseInt(this.form.seat) < 5) {
this.$message.info('可输入的最小值为5')
this.form.seat = 5;
}
},
changePoint(type) {
if(type === 0) {
this.addPoint();
}else {
this.delPoint();
}
},
addPoint() {
this.form.seat = parseInt(this.form.seat) + 1;
},
delPoint() {
if(parseInt(this.form.seat) - 1 < 5) {
this.$message.info(`核载数量最小值为5`)
}else {
this.form.seat = parseInt(this.form.seat) - 1;
}
},
handleAvatarSuccess(res, file) {
this.imageUrl = URL.createObjectURL(file.raw);
},
clearInfo() {
this.form.vehicleName = '';
this.form.vehicleFlag = '';
this.$refs.form.resetFields();
this.dialogVisible = false;
},
saveInfo() {
this.$refs.form.validate((valid) => {
if(valid) {
if(this.form.hasOwnProperty('id')) {
modelsUpdate(this.form)
.then((res) => {
if(res.status === 200) {
this.$message.success('修改成功');
this.$emit('reLoadTable');
delete this.form['id'];
this.clearInfo();
}else {
this.$message.error(res.msg);
}
})
.catch(() => {
})
}else {
modelsAdd(this.form)
.then((res) => {
if(res.status === 200) {
this.$message.success('添加成功');
this.$emit('reLoadTable');
this.clearInfo();
}else {
this.$message.error(res.msg);
}
})
.catch(() => {
})
}
}
})
},
showDialog(row) {
console.log(JSON.stringify(row))
if (Object.keys(row).length > 0) {
this.title = "修改基础车型";
this.form = JSON.parse(JSON.stringify(row));
} else {
this.title = "添加基础车型";
}
this.dialogVisible = true;
},
},
};
</script>
<style scoped lang="scss">
::v-deep.avatar-uploader .el-upload {
border: 1px dashed #d9d9d9;
border-radius: 6px;
cursor: pointer;
position: relative;
overflow: hidden;
}
::v-deep.avatar-uploader .el-upload:hover {
border-color: #409eff;
}
.avatar-uploader-icon {
font-size: 28px;
color: #8c939d;
width: 50px;
height: 50px;
line-height: 50px;
text-align: center;
}
::v-deep {
.operation-div {
border: 1px solid #DCDFE6;
border-radius: 5px;
.el-input__inner {
border: none !important;
}
}
}
.i-d {
border-left: 1px solid #DCDFE6;
display: flex;
align-items: center;
padding: 0 7px;
cursor: pointer;
}
::v-deep.seat-form-item {
.el-form-item__content {
display: flex !important;
}
}
.avatar {
width: 50px;
height: 50px;
display: block;
}
</style>
......@@ -21,7 +21,7 @@
</el-select>
</el-form-item>
<el-form-item label="站点所属区域:" prop="penCity">
<el-cascader v-if="dialogVisible" v-model="form.penCity" :show-all-levels="false" :props="props"></el-cascader>
<el-cascader v-if="isShowCas" v-model="form.penCity" :show-all-levels="false" :props="props"></el-cascader>
</el-form-item>
<el-form-item label="关联电子围栏:" prop="polygonInfo">
<el-select v-model="form.polygonInfo">
......@@ -36,6 +36,7 @@
</el-form-item>
<el-form-item label="站点专线:" prop="stationList">
<el-table
stripe
:data="form.stationList"
border
class="table-row"
......@@ -101,6 +102,7 @@ export default {
}
return {
dialogVisible: false,
isShowCas: true,
saveLoading: false,
props: {
lazy: true,
......@@ -232,7 +234,6 @@ export default {
this.saveLoading = false;
})
}else {
form['id'] = '';
addSite(form)
.then((res) => {
if(res.status === 200) {
......@@ -291,6 +292,10 @@ export default {
}
this.dialogVisible = true;
this.isShowCas = false;
setTimeout(() => {
this.isShowCas = true;
}, 500)
},
// table变色,行
tableRowStyle({row, rowIndex}) {
......
......@@ -24,7 +24,8 @@
</div>
<el-button type="text" style="padding: 0 5px" @click="Datalistinit()"
>重置</el-button
>重置
</el-button
>
</div>
......@@ -82,6 +83,7 @@
<div style="text-align: center">
<el-pagination
small
:current-page="page"
layout="prev, pager, next"
@current-change="current_change"
:total="total"
......@@ -241,7 +243,7 @@
<script>
import VueAMap from "vue-amap";
import { CodeToText } from "element-china-area-data";
import {CodeToText} from "element-china-area-data";
import {
getAllFenceList,
getAllprovinceAndCity,
......@@ -249,6 +251,7 @@ import {
updatefence,
deletefence,
} from "@/port/set-request";
let amapManager = new VueAMap.AMapManager();
export default {
name: "enclosure",
......@@ -339,7 +342,8 @@ export default {
position: "LT",
noIpLocate: true,
events: {
init(instance) {},
init(instance) {
},
},
},
{
......@@ -378,7 +382,8 @@ export default {
currentCityList: {},
events: {
init: (o) => {
o.getCity((result) => {});
o.getCity((result) => {
});
this.loading = false;
},
moveend: (e) => {
......@@ -389,7 +394,7 @@ export default {
this.zoom = this.$refs.map.$$getInstance().getZoom();
},
click: (e) => {
let { lng, lat } = e.lnglat;
let {lng, lat} = e.lnglat;
vm.lng = lng;
vm.lat = lat;
......@@ -413,7 +418,7 @@ export default {
checkStrictly: true,
lazy: true,
lazyLoad(node, resolve) {
const { level } = node;
const {level} = node;
console.log(node);
//
let parent;
......@@ -442,7 +447,7 @@ export default {
lazy: true,
checkStrictly: true,
lazyLoad(node, resolve) {
const { level } = node;
const {level} = node;
let parent;
if (level == 0) {
parent = 100000;
......@@ -676,7 +681,7 @@ export default {
let lngSum = 0;
if (pois.length > 0) {
pois.forEach((poi) => {
let { lng, lat } = poi;
let {lng, lat} = poi;
lngSum += lng;
latSum += lat;
});
......@@ -718,6 +723,7 @@ export default {
this.EnclosureForm.edit = false;
this.polygons = [];
this.EnclosureVisible = true;
this.editPolygonFlag = false;
},
EnclosureClick() {
if (!!this.EnclosureForm.edit) {
......@@ -886,8 +892,11 @@ export default {
this.EnclosureVisible = false;
}
this.page = 1;
this.listinit(json.cityCode);
if(this.leftpenCity.length === 0) {
this.listinit();
}else {
this.currentCity(json.cityCode, json.id);
}
} else {
this.$message.error(res.data.msg);
}
......@@ -984,6 +993,7 @@ export default {
width: 100%;
height: calc(100vh - 70px);
}
.mapBox {
display: flex;
padding: 10px 0;
......@@ -992,10 +1002,12 @@ export default {
.enclosurelist {
margin-top: 8px;
}
.enclosurelist > ul {
height: calc(100vh - 225px);
overflow: auto;
}
.enclosurelist > ul > li {
padding: 0.8rem;
border: 1px solid #ccc;
......@@ -1003,24 +1015,29 @@ export default {
position: relative;
margin-bottom: 0.3rem;
}
.mapBox > div:nth-child(1) {
margin-right: 20px;
transition: width 0.1s linear;
overflow: hidden;
}
.enclosurelist > ul > li > div {
font-size: 14px;
display: flex;
align-items: center;
.el-tag {
height: 24px;
padding: 0 5px;
line-height: 24px;
}
}
.mapBox .el-input {
position: static;
}
.piblic-header .left-icon {
width: 50px;
-webkit-box-pack: justify;
......@@ -1029,16 +1046,20 @@ export default {
font-size: 20px;
display: flex;
}
.piblic-header .left-icon span:first-child {
color: #e6a23c;
}
.piblic-header .left-icon span:nth-child(2) {
color: #f56c6c;
}
.amap-box {
width: 100%;
height: 100%;
}
.btn-list {
width: 100%;
position: absolute;
......@@ -1047,12 +1068,15 @@ export default {
display: flex;
z-index: 999;
}
.el-button + .el-button {
margin-right: 10px;
}
.amap-box {
position: relative;
}
.title-left::before {
content: '';
position: absolute;
......
......@@ -38,12 +38,12 @@
</el-row>
</el-form>
<el-table
stripe
:data="data"
v-loading="tableLoading"
border
style="margin-top: 10px;"
:row-style="tableRowStyle"
@row-dblclick="handledbClick"
:header-cell-style="tableHeaderColor"
>
<el-table-column label="序号" align="center" type="index" width="50">
......
<template>
<div>
<!-- 基本信息 -->
<el-card style="margin-bottom: 10px;">
<el-row class="title-row" type="flex" justify="space-between" align="center">
......@@ -30,21 +29,21 @@
<div>
<p>
<span>企业简称</span>
<span>:</span>
<span></span>
<span>{{ platformForm ? platformForm.org.orgForShort : ''}}</span>
</p>
</div>
<div>
<p>
<span>信用代码</span>
<span>:</span>
<span></span>
<span>{{ platformForm ? platformForm.org.usci : ''}}</span>
</p>
</div>
<div>
<p>
<span>办公地址</span>
<span>:</span>
<span></span>
<span>{{ platformForm ? platformForm.org.address : ''}}</span>
</p>
</div>
......@@ -63,7 +62,7 @@
</el-button>
</div>
</el-row>
<el-row style="padding-top: 10px;">
<el-row style="padding-top: 10px;font-size: 16px;">
{{ platformForm ? platformForm.org.orgInfo ? platformForm.org.orgInfo.info : platformForm.org.scode : ''}}
</el-row>
</el-card>
......@@ -75,7 +74,7 @@
管理员
</div>
</el-row>
<el-row style="padding: 0 0 0 17px;">
<el-row style="padding: 0 0 0 17px;font-size: 16px;">
管理员:
{{
platformForm ?
......@@ -233,6 +232,7 @@ import axios from "axios";
export default {
data() {
return {
isChangeMember: false, // 点击改变过管理员,默认为false,未改变过
activeName: "enterprise",
dialogReplace: false,
centerDialogVisible: false,
......@@ -367,6 +367,7 @@ export default {
},
updateInfo(val) {
console.log(val);
this.isChangeMember = true;
let res = this.options.filter((item) => {
return item.userid == val;
});
......@@ -400,6 +401,11 @@ export default {
// this.ReplaceForm.newId = data.userId;
},
onSubmitAdministrator() {
if(!this.isChangeMember) {
this.$message.success("修改成功");
this.administratorDialogVisible = false;
return;
}
let id = JSON.parse(sessionStorage.getItem("ManPlatformData")).org
.organizeid;
let json = {
......@@ -409,6 +415,7 @@ export default {
if (res.status == 200) {
this.$message.success("修改成功");
this.mustFun();
this.isChangeMember = false;
this.administratorDialogVisible = false;
} else {
this.$message.error(res.msg);
......@@ -519,6 +526,9 @@ export default {
</script>
<style scoped lang="scss">
p {
font-size: 16px;
}
.title-row {
padding-bottom: 5px;
border-bottom: 1px solid #e4e7ed;
......
......@@ -13,9 +13,9 @@
<el-table
:data="data"
v-loading="tableLoading"
stripe
border
style="margin-top: 10px;"
:row-style="tableRowStyle"
@row-dblclick="handledbClick"
:header-cell-style="tableHeaderColor"
>
......
......@@ -71,9 +71,9 @@
<el-table
:data="data"
stripe
v-loading="tableLoading"
:header-cell-style="tableHeaderColor"
:row-style="tableRowStyle"
@row-dblclick="carDetail"
style="width: 100%">
<el-table-column
......@@ -197,10 +197,12 @@ import Selects from '@/components/Selects';
import dataSource from "@/libs/screen";
import JudgeType from "@/mixins/judgeType";
import {
getAllTransport,
getAllprovinceAndCity,
getAllAreaCar
} from "@/port/set-request";
import {
carQuery,
getAllTransport
} from "@/port/carOrDriver/carOrDriver";
export default {
name: "car",
......@@ -212,6 +214,7 @@ export default {
return {
dataSource: dataSource,
props: {
checkStrictly: true,
lazy: true,
lazyLoad(node, resolve) {
const {level} = node
......@@ -229,7 +232,8 @@ export default {
return {
value: item.id,
label: item.fullname,
leaf: level >= 2
leaf: level >= 2,
disabled: parent == 100000 ? true : false,
}
})
resolve(nodes)
......@@ -254,7 +258,7 @@ export default {
positiveImageUrl: '',
reverseImageUrl: '',
carPositiveImageUrl: '',
areaCodeList: [],
areaCodeList: '',
warrantStatus: '0',
searchStr: ''
},
......@@ -279,16 +283,11 @@ export default {
this.selectResult[type] = data
},
async getTransport() {
let json = {
platformId: '',
page: 1,
rows: 999
}
await getAllTransport(json)
await getAllTransport({})
.then((res) => {
if (res.status == 200) {
let data = res.data.content;
let data = res.data;
let transportIdList = [];
let transportIdListArr = [];
data.forEach((item, index) => {
......@@ -320,12 +319,11 @@ export default {
rows: this.size
},
platformId: this.$store.getters.platformId,
operateCodeList: this.selectResult.areaCodeList.length > 0 ? this.selectResult.areaCodeList[2] : [],
regionCode: this.selectResult.areaCodeList.length > 0 ? this.selectResult.areaCodeList[this.selectResult.areaCodeList.length - 1] : '',
warrantStatus: this.selectResult.warrantStatus,
};
this.tableLoading = true;
await getAllAreaCar(json).then(res => {
await carQuery(json).then(res => {
if (res.status == 200) {
res.data.content.forEach(item => {
if (item.carStatus == '5') {
......@@ -338,10 +336,13 @@ export default {
this.total = res.data.total
}else {
this.$message.error(res.msg);
// this.$message.error(res.msg);
}
this.tableLoading = false;
})
// .catch(() => {
//
// })
},
tableRowStyle({row, rowIndex}) {
if (rowIndex % 2 !== 0) {
......
......@@ -107,6 +107,7 @@
:data="serviceProduct"
size="small"
border
stripe
:header-cell-style="{'background-color': '#0099ff', color: '#ffffff'}"
style="width: 99%; margin: 0 auto 10px;"
>
......
......@@ -2,7 +2,7 @@
<el-card>
<el-row>
<div class="title-left" style="padding-left: 10px;font-weight: 800;">
车辆管理
司机管理
</div>
</el-row>
<el-form class="search-form">
......@@ -51,8 +51,8 @@
</el-row>
<el-row>
<el-col :span="8">
网络运输证:
<el-select v-model="selectResult.warrantStatus">
网络驾驶证:
<el-select v-model="selectResult.networkPaperStatus">
<el-option label="全部" value="0"></el-option>
<el-option label="已上传" value="1"></el-option>
<el-option label="未上传" value="2"></el-option>
......@@ -66,9 +66,9 @@
<el-table
:data="data"
stripe
v-loading="tableLoading"
:header-cell-style="tableHeaderColor"
:row-style="tableRowStyle"
@row-dblclick="carDetail"
style="width: 100%">
<el-table-column
......@@ -138,7 +138,7 @@
align="center"
width="100">
<template slot-scope="{row}">
<span>{{ row.operatingStatus }}</span>
<span>{{ runStatusText(row.serviceStatus) }}</span>
</template>
</el-table-column>
<!-- <el-table-column-->
......@@ -178,10 +178,12 @@ import Selects from '@/components/Selects';
import dataSource from "@/libs/screen";
import JudgeType from "@/mixins/judgeType";
import {
getAllTransport,
getAllprovinceAndCity,
getThisAreaOperationDriver
} from "@/port/set-request";
import {
driverQuery,
getAllTransport
} from "@/port/carOrDriver/carOrDriver";
export default {
name: "driver",
......@@ -193,6 +195,7 @@ export default {
return {
dataSource: dataSource,
props: {
checkStrictly: true,
lazy: true,
lazyLoad(node, resolve) {
const {level} = node
......@@ -210,7 +213,8 @@ export default {
return {
value: item.id,
label: item.fullname,
leaf: level >= 2
leaf: level >= 2,
disabled: parent == 100000 ? true : false,
}
})
resolve(nodes)
......@@ -235,8 +239,8 @@ export default {
positiveImageUrl: '',
reverseImageUrl: '',
carPositiveImageUrl: '',
areaCodeList: [],
warrantStatus: '0',
areaCodeList: '',
networkPaperStatus: '0',
searchStr: ''
},
}
......@@ -261,16 +265,10 @@ export default {
this.selectResult[type] = data
},
async getTransport() {
let json = {
platformId: '',
page: 1,
rows: 999
}
await getAllTransport(json)
await getAllTransport({})
.then((res) => {
if (res.status == 200) {
let data = res.data.content;
let data = res.data;
let transportIdList = [];
let transportIdListArr = [];
data.forEach((item, index) => {
......@@ -302,16 +300,17 @@ export default {
rows: this.size
},
platformId: this.$store.getters.platformId,
operateCodeList: this.selectResult.areaCodeList.length > 0 ? this.selectResult.areaCodeList[2] : [],
warrantStatus: this.selectResult.warrantStatus,
operateCode: this.selectResult.areaCodeList.length > 0 ? this.selectResult.areaCodeList[this.selectResult.areaCodeList.length - 1] : '',
networkPaperStatus: this.selectResult.networkPaperStatus,
};
this.tableLoading = true;
await getThisAreaOperationDriver(json).then(res => {
await driverQuery(json).then(res => {
if (res.status == 200) {
if (!!res.data) {
res.data.content.forEach(item => {
if (item.status == '5' || item.status == '1') {
debugger
return item.operatingStatus = '停运'
} else return item.operatingStatus = '上线'
})
......
......@@ -83,6 +83,7 @@
:data="productData"
size="small"
border
stripe
:header-cell-style="{'background-color': '#0099ff', color: '#ffffff'}"
style="width: 99%; margin: 0 auto 10px"
>
......
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