增加订单反馈
This commit is contained in:
@@ -8,3 +8,6 @@ export const getOrderDetail = (id) => service.get(`/api/admin/order/${id}`);
|
|||||||
|
|
||||||
// 反馈
|
// 反馈
|
||||||
export const postFeedback = (id, data) => service.post(`/api/admin/order-done/${id}`, data);
|
export const postFeedback = (id, data) => service.post(`/api/admin/order-done/${id}`, data);
|
||||||
|
|
||||||
|
// 上传图片
|
||||||
|
export const uploadImage = (data) => service.post("/admin/api/upload", data);
|
||||||
|
|||||||
@@ -60,7 +60,7 @@ export default {
|
|||||||
mescrollInit(mescroll) {
|
mescrollInit(mescroll) {
|
||||||
this.mescroll = mescroll;
|
this.mescroll = mescroll;
|
||||||
},
|
},
|
||||||
upCallback(page, mescroll) {
|
upCallback(page) {
|
||||||
console.log("load", page);
|
console.log("load", page);
|
||||||
this.pagination.page = page.num;
|
this.pagination.page = page.num;
|
||||||
this.getOrderList();
|
this.getOrderList();
|
||||||
@@ -81,6 +81,7 @@ export default {
|
|||||||
name: "adminOrderProcess",
|
name: "adminOrderProcess",
|
||||||
query: {
|
query: {
|
||||||
id: item.id,
|
id: item.id,
|
||||||
|
name: item.goods_name,
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -1,16 +1,17 @@
|
|||||||
<template>
|
<template>
|
||||||
<van-form>
|
<van-form @submit="onSubmit">
|
||||||
<van-field name="uploader" label="善缘名称">
|
<van-field name="name" label="善缘名称">
|
||||||
<template #input>
|
<template #input>
|
||||||
<span>添砖加瓦!寺院全殿堂瓦片认供通启</span>
|
<span>{{ $route.query.name }}</span>
|
||||||
</template>
|
</template>
|
||||||
</van-field>
|
</van-field>
|
||||||
<van-field name="uploader" label="反馈照片">
|
<van-field name="feedback_pictures" label="反馈照片">
|
||||||
<template #input>
|
<template #input>
|
||||||
<van-uploader preview-size="76px" multiple v-model="uploader" :max-count="5" />
|
<van-uploader preview-size="76px" accept="image/*" multiple v-model="form.feedback_pictures" :max-count="5" :after-read="afterRead" />
|
||||||
</template>
|
</template>
|
||||||
<span style="font-size: 0.2rem; color: #999">最多5张</span>
|
<span style="font-size: 0.2rem; color: #999">最多5张</span>
|
||||||
</van-field>
|
</van-field>
|
||||||
|
<van-field name="feedback_content" label="反馈内容" v-model="form.feedback_content"> </van-field>
|
||||||
<div style="margin: 16px">
|
<div style="margin: 16px">
|
||||||
<van-button round block type="info" native-type="submit">提交</van-button>
|
<van-button round block type="info" native-type="submit">提交</van-button>
|
||||||
</div>
|
</div>
|
||||||
@@ -18,11 +19,60 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
import { uploadImage, postFeedback } from "@/api/admin";
|
||||||
export default {
|
export default {
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
uploader: [{ url: "https://img01.yzcdn.cn/vant/leaf.jpg" }],
|
form: {
|
||||||
|
feedback_pictures: [],
|
||||||
|
feedback_content: "",
|
||||||
|
},
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
|
methods: {
|
||||||
|
afterRead(file) {
|
||||||
|
console.log("file", file);
|
||||||
|
const files = Array.isArray(file) ? file : [file];
|
||||||
|
for (const item of files) {
|
||||||
|
item.status = "uploading";
|
||||||
|
item.message = "上传中...";
|
||||||
|
const formData = new FormData();
|
||||||
|
formData.append("photo", item.file);
|
||||||
|
uploadImage(formData)
|
||||||
|
.then((res) => {
|
||||||
|
console.log("res", res);
|
||||||
|
item.status = "success";
|
||||||
|
item.message = "上传成功";
|
||||||
|
item.url = res.url;
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
console.log("err", err);
|
||||||
|
item.status = "error";
|
||||||
|
item.message = "上传失败";
|
||||||
|
});
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onSubmit(values) {
|
||||||
|
if (values.feedback_pictures.some((item) => item.status == "uploading")) {
|
||||||
|
this.$toast("还有照片正在上传,请稍后");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
postFeedback(this.$route.query.id, {
|
||||||
|
feedback_content: values.feedback_content,
|
||||||
|
feedback_pictures: values.feedback_pictures.map((item) => item.url),
|
||||||
|
})
|
||||||
|
.then((res) => {
|
||||||
|
console.log("res", res);
|
||||||
|
this.$toast("反馈成功");
|
||||||
|
this.$router.replace({
|
||||||
|
name: "adminOrder",
|
||||||
|
});
|
||||||
|
})
|
||||||
|
.catch((err) => {
|
||||||
|
console.log("err", err);
|
||||||
|
this.$toast("反馈失败");
|
||||||
|
});
|
||||||
|
},
|
||||||
|
},
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
+1
-1
@@ -229,7 +229,7 @@ const routes = [
|
|||||||
component: { render: (h) => h("router-view") },
|
component: { render: (h) => h("router-view") },
|
||||||
children: [
|
children: [
|
||||||
{
|
{
|
||||||
path: "order",
|
path: "orders",
|
||||||
name: "adminOrder",
|
name: "adminOrder",
|
||||||
meta: { title: "订单列表", navBarBackgroundColor: "white", showNavBar: false },
|
meta: { title: "订单列表", navBarBackgroundColor: "white", showNavBar: false },
|
||||||
component: () => import("@/pages/admin/order/index.vue"),
|
component: () => import("@/pages/admin/order/index.vue"),
|
||||||
|
|||||||
Reference in New Issue
Block a user