Commit 4311a6d7 by 吕海涛

运维管理功能迭代

parent 30a06f86
...@@ -18,4 +18,4 @@ VUE_APP_BASE_API12 = 'https://payment.sdk.xoado.com' ...@@ -18,4 +18,4 @@ VUE_APP_BASE_API12 = 'https://payment.sdk.xoado.com'
VUE_APP_BASE_API13 = 'https://projects.xoado.com/invoice' VUE_APP_BASE_API13 = 'https://projects.xoado.com/invoice'
VUE_APP_BASE_API14 = 'https://projects.xoado.com/message' VUE_APP_BASE_API14 = 'https://projects.xoado.com/message'
VUE_APP_BASE_API15 = 'https://aitransport.xoado.com/smart' VUE_APP_BASE_API15 = 'https://aitransport.xoado.com/smart'
VUE_APP_BASE_API16 = 'http://xoado.tpddns.net:10001/anc' VUE_APP_BASE_API16 = 'http://proclamations.xoado.com/anc'
...@@ -17,4 +17,4 @@ VUE_APP_BASE_API12 = 'https://payment.sdk.xoado.com' ...@@ -17,4 +17,4 @@ VUE_APP_BASE_API12 = 'https://payment.sdk.xoado.com'
VUE_APP_BASE_API13 = 'https://projects.xoado.com/invoice' VUE_APP_BASE_API13 = 'https://projects.xoado.com/invoice'
VUE_APP_BASE_API14 = 'https://projects.xoado.com/message' VUE_APP_BASE_API14 = 'https://projects.xoado.com/message'
VUE_APP_BASE_API15 = 'https://aitransport.xoado.com/smart' VUE_APP_BASE_API15 = 'https://aitransport.xoado.com/smart'
VUE_APP_BASE_API16 = 'http://xoado.tpddns.net:10001/anc' VUE_APP_BASE_API16 = 'http://proclamations.xoado.com/anc'
\ No newline at end of file \ No newline at end of file
<template> <template>
<div class="breadDiv" id="domBread"> <div class="breadDiv" id="domBread">
<el-page-header @back="goBack"> </el-page-header>
<el-breadcrumb separator="/"> <el-breadcrumb separator="/">
<el-breadcrumb-item <el-breadcrumb-item
v-for="(item, index) in breadList" v-for="(item, index) in breadList"
...@@ -16,30 +17,48 @@ ...@@ -16,30 +17,48 @@
export default { export default {
data() { data() {
return { return {
breadList: [] breadList: [],
} };
}, },
watch: { watch: {
$route: { $route: {
handler(route) { handler(route) {
let allList = route.matched.filter(item => { let allList = route.matched.filter((item) => {
if (item.meta && item.meta.title) { if (item.meta && item.meta.title) {
if (item.redirect) { //如果存在则说明为一级路由 将path只为'' if (item.redirect) {
item.path = '' //如果存在则说明为一级路由 将path只为''
item.path = "";
} }
return true return true;
} }
}) });
if (allList[0].path !== '/' && allList[0].path !== '/dashbord') { if (allList[0].path !== "/" && allList[0].path !== "/dashbord") {
allList.unshift({path: '/', meta: {title: '首页'}}) allList.unshift({ path: "/", meta: { title: "首页" } });
} }
// console.log(allList) // console.log(allList)
this.breadList = allList this.breadList = allList;
}, },
immediate: true immediate: true,
} },
},
methods: {
goBack() {
if (window.history.length <= 1) {
this.$router.push({ path: "/" });
return false;
} else {
this.$router.go(-1);
} }
} },
},
};
</script> </script>
<style scoped>
.breadDiv {
display: flex;
align-items: center;
margin: 0 20px !important;
height: 100%;
}
</style>
...@@ -3,63 +3,111 @@ ...@@ -3,63 +3,111 @@
<div class="cardBox"> <div class="cardBox">
<div class="cardHead"> <div class="cardHead">
<p>消息中心</p> <p>消息中心</p>
<i <i class="el-icon-close" @click="closeMsgPage"></i>
class="el-icon-close" @click="closeMsgPage"
></i>
</div> </div>
<div style="height: calc(100vh - 100px); overflow-y: auto">
<ul class="conUl"> <ul class="conUl">
<li v-for="item in msgList" :key="item.id"> <li v-for="(item, index) in msgList" :key="item.id">
<router-link :to="item.link" class="conUl_link"> <div @click="toDetail(item, index)" class="conUl_link">
<span class="conUl_sp0">{{ item.content }}</span> <div class="conUl_sp0">{{ item.title }}</div>
<span class="conUl_sp1">{{ item.time }}</span> <div class="conUl_sp1">{{ item.publishTime }}</div>
</router-link> </div>
</li> </li>
</ul> </ul>
</div> </div>
</div> </div>
</div>
</template> </template>
<script> <script>
export default { import { listNotice, readNotice } from "@/port/notice/notice";
export default {
data() { data() {
return { return {
msgList: [ msgList: [
{ {
id: '1', id: "1",
content: '优惠券到期提醒', content: "优惠券到期提醒",
link: '', link: "",
time: '2019-06-01' time: "2019-06-01",
}, },
{ {
id: '2', id: "2",
content: '618大促,请查看活动具体信息', content: "618大促,请查看活动具体信息",
link: '', link: "",
time: '2019-06-02' time: "2019-06-02",
}, },
{ {
id: '3', id: "3",
content: '充值成功', content: "充值成功",
link: '', link: "",
time: '2019-07-02' time: "2019-07-02",
}, },
{ {
id: '4', id: "4",
content: '密码充值成功!', content: "密码充值成功!",
link: '', link: "",
time: '2019-07-02' time: "2019-07-02",
}
]
}
}, },
methods:{ ],
closeMsgPage(){ };
this.$store.commit('app/SET_MSGISOPEN') },
} created() {
listNotice('2075eb969356e8bf6f0efa33310e8870377992b2', { type: 1 }).then((res) => {
if (res.status === 200 && res.data.length > 0) {
this.msgList = res.data;
this.$store.commit("app/SET_MSGOPEN");
} }
});
},
methods: {
toDetail(item, index) {
if (!item.isRead) {
let params = {
ancId: item.ancId,
readerType: 1,
readerClientId: '2075eb969356e8bf6f0efa33310e8870377992b2',
readerId: this.$store.getters.nameInfo.userid,
};
readNotice(params).then(() => {
this.msgList.splice(index, 1);
});
} }
let json = {
ancId: item.ancId,
clientId: '2075eb969356e8bf6f0efa33310e8870377992b2',
clientType: 1,
searchStr: "",
publishTimeStart: "",
publishTimeEnd: "",
types: "",
issuerEndpoints: "",
isRead: "",
page: {
page: 1,
size: 10,
},
};
sessionStorage.removeItem("noticeinfo");
sessionStorage.setItem("noticeinfo", JSON.stringify(json));
this.$router.push({
path: "/notice/all-notice-detail",
// query:{id:222}
});
this.$store.commit("app/SET_MSGISOPEN");
},
closeMsgPage() {
this.$store.commit("app/SET_MSGISOPEN");
},
},
};
</script> </script>
<style lang="scss"> <style lang="scss">
.cardBox { .notificatBar {
height: calc(100vh - 50px) !important;
top: 50px;
}
.cardBox {
width: 100%; width: 100%;
.cardHead { .cardHead {
height: 50px; height: 50px;
...@@ -83,25 +131,30 @@ ...@@ -83,25 +131,30 @@
} }
} }
} }
} }
.conUl { .conUl {
li { li {
height: 50px; height: 50px;
line-height: 50px;
.conUl_link { .conUl_link {
display: block; display: flex;
margin: 0 20px; margin: 0 20px;
height: 100%; height: 100%;
align-items: center;
justify-content: space-between;
border-bottom: 1px solid #e4e4e4; border-bottom: 1px solid #e4e4e4;
} }
.conUl_sp0 { .conUl_sp0 {
font-size: 14px; font-size: 14px;
flex: 1;
overflow: hidden;
} }
.conUl_sp1 { .conUl_sp1 {
font-size: 12px; font-size: 12px;
color: #b3b3b3; color: #b3b3b3;
float: right; // flex: 1;
}
} }
} }
}
</style> </style>
...@@ -404,7 +404,11 @@ export function getThisorderInfo(data, u, platformId) { ...@@ -404,7 +404,11 @@ export function getThisorderInfo(data, u, platformId) {
const url = (u ? u : targetBaseUrl) + '/xoado/order/select' const url = (u ? u : targetBaseUrl) + '/xoado/order/select'
return post(url, data, platformId) return post(url, data, platformId)
} }
/* 多条件查询订单列表 */
export function againGenerateOrder(data, u, platformId) {
const url = (u ? u : targetBaseUrl) + `/xoado/order/againGenerate/${data}`
return get(url)
}
/* 多条件导出订单列表 */ /* 多条件导出订单列表 */
export function exportAllOrderList(data, u, platformId) { export function exportAllOrderList(data, u, platformId) {
const url = (u ? u : targetBaseUrl) + '/xoado/order/export' const url = (u ? u : targetBaseUrl) + '/xoado/order/export'
......
...@@ -6,13 +6,13 @@ ...@@ -6,13 +6,13 @@
*/ */
const state = { const state = {
opened: sessionStorage.getItem('open') opened: sessionStorage.getItem('open') ?
? sessionStorage.getItem('open') sessionStorage.getItem('open') :
: 'false', 'false',
msgIsShow: false, msgIsShow: false,
showDriver: localStorage.getItem('driver') showDriver: localStorage.getItem('driver') ?
? localStorage.getItem('driver') localStorage.getItem('driver') :
: 'yes' 'yes'
} }
const mutations = { const mutations = {
SET_OPENED(state, payload) { SET_OPENED(state, payload) {
...@@ -22,6 +22,9 @@ const mutations = { ...@@ -22,6 +22,9 @@ const mutations = {
SET_MSGISOPEN(state) { SET_MSGISOPEN(state) {
state.msgIsShow = !state.msgIsShow state.msgIsShow = !state.msgIsShow
}, },
SET_MSGOPEN(state) {
state.msgIsShow = true;
},
SET_DRIVER(state, payload) { SET_DRIVER(state, payload) {
state.showDriver = payload state.showDriver = payload
localStorage.setItem('driver', payload) localStorage.setItem('driver', payload)
......
...@@ -275,7 +275,7 @@ export default { ...@@ -275,7 +275,7 @@ export default {
this.$message.error('请选择公告类型'); this.$message.error('请选择公告类型');
return {}; return {};
} }
if(form1.objType === 0) { if(form1.objType === "") {
this.$message.error('请选择通知对象类别'); this.$message.error('请选择通知对象类别');
return {} return {}
} }
......
...@@ -102,7 +102,6 @@ ...@@ -102,7 +102,6 @@
</div> </div>
<div> <div>
<editor <editor
:disabled="form2.content.radio === '1'"
v-model="form2.content.htl" v-model="form2.content.htl"
apiKey="5c2abaeq2ka05zdkugo4mkr0gq63ykd1e6d99csrwohn9xlz" apiKey="5c2abaeq2ka05zdkugo4mkr0gq63ykd1e6d99csrwohn9xlz"
:init="{ :init="{
...@@ -329,7 +328,12 @@ export default { ...@@ -329,7 +328,12 @@ export default {
}, },
successUpload(response, file, fileList) { successUpload(response, file, fileList) {
if (file.response.status === 200) { if (file.response.status === 200) {
this.form2.enclosure.push(file); var arr = {
fileName: file.response.data[0].name,
fileUrl: file.response.data[0].url,
};
this.form2.enclosure.push(arr);
} }
}, },
changeObjType() { changeObjType() {
...@@ -356,6 +360,7 @@ export default { ...@@ -356,6 +360,7 @@ export default {
preParams(flag) { preParams(flag) {
let form1 = this.form1; let form1 = this.form1;
let form2 = this.form2; let form2 = this.form2;
if (form1.dateData.length === 0) { if (form1.dateData.length === 0) {
this.$message.error("请选择有效时间段"); this.$message.error("请选择有效时间段");
return {}; return {};
...@@ -427,7 +432,7 @@ export default { ...@@ -427,7 +432,7 @@ export default {
if (this.form2.enclosure.length > 0) { if (this.form2.enclosure.length > 0) {
params["attachments"] = this.form2.enclosure.map((item) => { params["attachments"] = this.form2.enclosure.map((item) => {
return { fileName: item.name, fileUrl: item.response.data[0].url }; return { fileName: item.fileName, fileUrl: item.fileUrl };
}); });
} else { } else {
params["attachments"] = []; params["attachments"] = [];
...@@ -459,12 +464,12 @@ export default { ...@@ -459,12 +464,12 @@ export default {
params["isDraft"] = flag; params["isDraft"] = flag;
editNotice(params).then((res) => { editNotice(params).then((res) => {
if (res.status === 200) { if (res.status === 200) {
if (flag) { if (!flag) {
this.$message.success("发布成功"); this.$message.success("发布成功");
this.$router.go(-1); this.$router.push("/notice/push-notice-list");
} else { } else {
this.$message.success("已存为草稿"); this.$message.success("已存为草稿");
this.$router.push("/notice/push-notice-list"); this.$router.go(-1);
} }
} else { } else {
this.$message.error(res.msg); this.$message.error(res.msg);
......
...@@ -24,7 +24,7 @@ ...@@ -24,7 +24,7 @@
start-placeholder="起始时间" start-placeholder="起始时间"
:picker-options="pickerOptions" :picker-options="pickerOptions"
end-placeholder="终止时间" end-placeholder="终止时间"
@change="DateChange($event)"
> >
</el-date-picker> </el-date-picker>
</el-col> </el-col>
...@@ -257,9 +257,30 @@ export default { ...@@ -257,9 +257,30 @@ export default {
}); });
}, },
handledbClick(item) { handledbClick(item) {
let time = this.selectInfo.timeList || [];
let json = {
ancId: item.ancId,
clientId: '2075eb969356e8bf6f0efa33310e8870377992b2',
clientType: 1,
searchStr: this.selectInfo.searchName,
publishTimeStart: time.length > 0 ? time[0] : "",
publishTimeEnd: time.length > 0 ? time[1] : "",
types: this.selectInfo.selectType,
issuerEndpoints: this.selectInfo.issuerEndpoints,
isRead: this.selectInfo.isRead,
page: {
page: this.page,
size: this.size,
},
};
sessionStorage.setItem("noticeinfo", JSON.stringify(json));
this.$router.push({
path: "/notice/push-notice-detail",
});
this.$router.push({ this.$router.push({
path: "/notice/push-notice-detail", path: "/notice/push-notice-detail",
query: { ancId: item.ancId }, // query: { ancId: item.ancId },
}); });
}, },
getTypeNameByType(id) { getTypeNameByType(id) {
...@@ -279,6 +300,7 @@ export default { ...@@ -279,6 +300,7 @@ export default {
}, },
searchInfo() { searchInfo() {
this.page = 1; this.page = 1;
this.total=0;
this.getTableList(); this.getTableList();
}, },
pushNotice() { pushNotice() {
...@@ -304,7 +326,7 @@ export default { ...@@ -304,7 +326,7 @@ export default {
}; };
this.tableLoading = true; this.tableLoading = true;
this.data = []; this.data = [];
this.total = 0;
listManage(params) listManage(params)
.then((res) => { .then((res) => {
if (res.status === 200) { if (res.status === 200) {
......
...@@ -39,8 +39,55 @@ ...@@ -39,8 +39,55 @@
</div> </div>
</el-card> </el-card>
</div> </div>
<el-card
class="box-card"
style="margin-top: 10px; display: flex"
v-if="inputStatus"
>
<div class="clearfix">
<span class="title">订单运维管理</span>
<div>
<el-button type="danger" size="mini" @click="cancelOrder()"
>取消订单
</el-button>
<!-- v-if="dataSource.status * 1 < 3" -->
<el-button
type="primary"
size="mini"
@click="driverInfo()"
v-if="!!dataSource.driverId"
>同步司机信息
</el-button>
<!-- v-if="
dataSource.status * 1 == 2 || dataSource.status * 1 == 1
" -->
<el-button type="warning" size="mini" @click="finishOrder()"
>强制完单
</el-button>
<!-- v-if="
dataSource.status * 1 < 6 && dataSource.status * 1 >= 1
" -->
<el-button type="warning" size="mini" @click="setpaystatus"
>更改支付状态
</el-button>
<el-button type="warning" size="mini" @click="againGenerate"
>重新生成账单
</el-button>
<!-- v-if="
dataSource.status * 1 >= 6 &&
(dataSource.orderSource * 1 == 6 ||
dataSource.orderSource * 1 == 4 ||
dataSource.orderSource * 1 == 7)
" -->
<!-- orderSource=6 4 7 -->
<!-- 完单 未支付 自营 -->
<!-- <span v-html="renderfun(dataSource)"></span> -->
</div>
</div>
</el-card>
<div v-if="inputStatus"> <div v-if="inputStatus">
<el-row style="padding: 10px 10px 0"> <el-row>
<el-button <el-button
type="primary" type="primary"
@click="() => (dialogVisible = true)" @click="() => (dialogVisible = true)"
...@@ -362,40 +409,6 @@ ...@@ -362,40 +409,6 @@
<el-card class="box-card"> <el-card class="box-card">
<div class="clearfix"> <div class="clearfix">
<span class="title">订单详情</span> <span class="title">订单详情</span>
<div>
<el-button type="danger" size="mini" @click="cancelOrder()"
>取消订单
</el-button>
<!-- v-if="dataSource.status * 1 < 3" -->
<el-button
type="primary"
size="mini"
@click="driverInfo()"
v-if="!!dataSource.driverId"
>同步司机信息
</el-button>
<!-- v-if="
dataSource.status * 1 == 2 || dataSource.status * 1 == 1
" -->
<el-button type="warning" size="mini" @click="finishOrder()"
>强制完单
</el-button>
<!-- v-if="
dataSource.status * 1 < 6 && dataSource.status * 1 >= 1
" -->
<el-button type="warning" size="mini" @click="setpaystatus"
>更改支付状态
</el-button>
<!-- v-if="
dataSource.status * 1 >= 6 &&
(dataSource.orderSource * 1 == 6 ||
dataSource.orderSource * 1 == 4 ||
dataSource.orderSource * 1 == 7)
" -->
<!-- orderSource=6 4 7 -->
<!-- 完单 未支付 自营 -->
<!-- <span v-html="renderfun(dataSource)"></span> -->
</div>
</div> </div>
<div> <div>
<ul class="table-info"> <ul class="table-info">
...@@ -735,6 +748,7 @@ import { ...@@ -735,6 +748,7 @@ import {
deviceTrajectory, deviceTrajectory,
OrderDetailsSelect, OrderDetailsSelect,
soundRecording, soundRecording,
againGenerateOrder,
} from "@/port/set-request"; } from "@/port/set-request";
import { platformInfosList } from "@/port/platfrom/setting"; import { platformInfosList } from "@/port/platfrom/setting";
import { import {
...@@ -743,6 +757,7 @@ import { ...@@ -743,6 +757,7 @@ import {
pushDriver, pushDriver,
getpayInfo, getpayInfo,
paymentchannel, paymentchannel,
} from "@/port/orderOperation"; } from "@/port/orderOperation";
import maps from "./maps"; import maps from "./maps";
import CopyIcon from "./components/CopyIcon"; import CopyIcon from "./components/CopyIcon";
...@@ -834,8 +849,6 @@ export default { ...@@ -834,8 +849,6 @@ export default {
brandUrl: JSON.parse(this.platformInfo).brandUrl, brandUrl: JSON.parse(this.platformInfo).brandUrl,
platformId: JSON.parse(this.platformInfo).platformId, platformId: JSON.parse(this.platformInfo).platformId,
}; };
console.log(JSON.stringify(this.platformInfo));
console.log(json);
this.getOrderInfo(json); this.getOrderInfo(json);
this.seeLeftLog(json); this.seeLeftLog(json);
}, },
...@@ -844,9 +857,9 @@ export default { ...@@ -844,9 +857,9 @@ export default {
this.finishStatus = true; this.finishStatus = true;
}, },
updataBatch() { updataBatch() {
let brandUrl=JSON.parse(this.platformInfo).brandUrl; let brandUrl = JSON.parse(this.platformInfo).brandUrl;
let json = [{ orderid: this.finishdata.orderId, status: 6 }]; let json = [{ orderid: this.finishdata.orderId, status: 6 }];
updateBatchOrder(brandUrl,json).then((res) => { updateBatchOrder(brandUrl, json).then((res) => {
if (res.status == 200) { if (res.status == 200) {
this.finishStatus = false; this.finishStatus = false;
this.$message({ this.$message({
...@@ -866,6 +879,29 @@ export default { ...@@ -866,6 +879,29 @@ export default {
this.driverdata = this.dataSource; this.driverdata = this.dataSource;
this.driverStatus = true; this.driverStatus = true;
}, },
againGenerate(){
let obj = {
orderId: this.orderid,
brandUrl: JSON.parse(this.platformInfo).brandUrl,
platformId: JSON.parse(this.platformInfo).platformId,
}
againGenerateOrder([obj.orderId], obj.brandUrl, obj.platformId).then((res) => {
if (res.status == 200) {
this.finishStatus = false;
this.$message({
type: "success",
message: "操作成功!",
});
this.Inquire();
} else {
this.$message({
type: "error",
message: res.msg,
});
}
});
},
setpaystatusBtn() { setpaystatusBtn() {
var pattern = /^[A-Za-z0-9_]{32}/; var pattern = /^[A-Za-z0-9_]{32}/;
...@@ -942,8 +978,7 @@ export default { ...@@ -942,8 +978,7 @@ export default {
.then(() => { .then(() => {
// 取消订单 // 取消订单
let brandUrl = JSON.parse(this.platformInfo).brandUrl; let brandUrl = JSON.parse(this.platformInfo).brandUrl;
CancelOrder(brandUrl,this.orderid).then( CancelOrder(brandUrl, this.orderid).then((res) => {
(res) => {
if (res.status == 200) { if (res.status == 200) {
this.$message({ this.$message({
type: "success", type: "success",
...@@ -956,8 +991,7 @@ export default { ...@@ -956,8 +991,7 @@ export default {
message: res.msg, message: res.msg,
}); });
} }
} });
);
}) })
.catch(() => { .catch(() => {
this.$message({ this.$message({
...@@ -1012,7 +1046,6 @@ export default { ...@@ -1012,7 +1046,6 @@ export default {
}, },
getOrderInfo(obj) { getOrderInfo(obj) {
this.dataSource = null; this.dataSource = null;
console.log(obj);
getThisorderInfo([obj.orderId], obj.brandUrl, obj.platformId).then( getThisorderInfo([obj.orderId], obj.brandUrl, obj.platformId).then(
(res) => { (res) => {
if (res.status == 200) { if (res.status == 200) {
...@@ -1070,6 +1103,8 @@ export default { ...@@ -1070,6 +1103,8 @@ export default {
this.getTraceLine(); this.getTraceLine();
} }
this.driverInfoFun(obj); this.driverInfoFun(obj);
} else {
this.$message.error(res.msg);
} }
} }
); );
......
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