merchapp/java-mall-app-shop-admin/store/modules/push.js
2025-08-11 09:02:27 +08:00

118 lines
2.9 KiB
JavaScript

import { GetOrderDetail } from "@/api/order";
const defaultState = () => {
return {
pushBase: {
unipush_version: "",
payload: {
orderId: "",
category: "",
},
title: "",
content: "",
},
orderDetail: {},
orderStatus: "",
appOpenStatus: false,
};
};
const state = defaultState();
const getters = {};
const mutations = {
SET_PUSH(state, pushBase) {
state.pushBase = pushBase;
},
SET_ORDER_DETAIL(state, orderDetail) {
state.orderDetail = orderDetail;
},
SET_ORDER_STATUS_API(state, orderStatus) {
state.orderStatus = orderStatus;
},
SET_APP_OPENT_STATUS(state, appOpenStatus) {
state.appOpenStatus = appOpenStatus;
},
};
const actions = {
async setPush({ commit }, pushBase) {
console.log(pushBase);
commit("SET_PUSH", pushBase);
// 判断唤醒
const pendingPushData = uni.getStorageSync("pendingPushData");
const AUDIO = uni.createInnerAudioContext();
AUDIO.stop();
switch (pushBase.payload.category) {
case "mchContract":
uni.navigateTo({ url: "/pages/audit/checkAudit" });
break;
// 订单详情
case "mchOrderDetail":
// AUDIO.src = "../../static/mp3/jinxingzhong.MP3";
// AUDIO.play();
let params = {
orderId: pushBase.payload.orderId,
};
let res = await GetOrderDetail(params);
console.log(res);
if (res && res.status == 200) {
commit("SET_ORDER_DETAIL", res.data);
if (pendingPushData) {
uni.removeStorageSync("pendingPushData");
uni.navigateTo({
url: "/pages/order/order",
});
}
}
break;
// 订单列表
case "mchOnLineOrderList":
AUDIO.src = "../../static/mp3/jinxingzhong.MP3";
AUDIO.play();
commit("SET_ORDER_STATUS_API", pushBase.payload.category);
if (pendingPushData) {
uni.removeStorageSync("pendingPushData");
uni.navigateTo({
url: "/pages/order/order",
});
}
break;
// 异常订单
case "mchAbnormalOrderList":
// AUDIO.src = require("@static/mp3/1.MP3");
commit("SET_ORDER_STATUS_API", pushBase.payload.category);
if (pendingPushData) {
uni.removeStorageSync("pendingPushData");
uni.navigateTo({
url: "/pages/order/order",
});
}
break;
// 退款订单
case "mchRetrunOrderList":
AUDIO.src = "../../static/mp3/tuihuo.MP3";
AUDIO.play();
commit("SET_ORDER_STATUS_API", pushBase.payload.category);
if (pendingPushData) {
uni.removeStorageSync("pendingPushData");
uni.navigateTo({
url: "/pages/order/order",
});
}
break;
}
},
};
export default {
namespaced: true,
state,
getters,
mutations,
actions,
};