Commit 25f5dce8 authored by your yuchenglong's avatar your yuchenglong

update:添加编辑营销活动,营销活动详情

parent 2e10f914
...@@ -89,6 +89,19 @@ exports.addMarketing = async ctx => { ...@@ -89,6 +89,19 @@ exports.addMarketing = async ctx => {
ctx.body = await req(ctx, opts); ctx.body = await req(ctx, opts);
}; };
// 编辑营销活动
exports.updateMarketing = async ctx => {
const url = `${ACTIVITY_URI}/marketing/background/update_marketing`;
const opts = {
url,
method: "POST",
json: true,
body: ctx.request.body
};
ctx.body = await req(ctx, opts);
};
// 营销活动详情 // 营销活动详情
exports.marketingInfo = async ctx => { exports.marketingInfo = async ctx => {
const url = `${ACTIVITY_URI}/marketing/background/marketing_info`; const url = `${ACTIVITY_URI}/marketing/background/marketing_info`;
......
...@@ -71,14 +71,14 @@ router.post(`${API_VERSION}/marketing/background/marketing_info`, activity.check ...@@ -71,14 +71,14 @@ router.post(`${API_VERSION}/marketing/background/marketing_info`, activity.check
router.get(`${API_VERSION}/marketing/background/take_place_list`, activity.getPlaceList) router.get(`${API_VERSION}/marketing/background/take_place_list`, activity.getPlaceList)
router.post(`${API_VERSION}/marketing/background/add_take_place`, activity.addPlace) router.post(`${API_VERSION}/marketing/background/add_take_place`, activity.addPlace)
router.post(`${API_VERSION}/marketing/background/delete_take_place`, activity.deletePlace) router.post(`${API_VERSION}/marketing/background/delete_take_place`, activity.deletePlace)
//活动管理
router.get(`${API_VERSION}/goods/background/ota_list`, activity.getBusinessList); router.get(`${API_VERSION}/goods/background/ota_list`, activity.getBusinessList);
router.post(`${API_VERSION}/goods/background/add_goods`, activity.addGoods); router.post(`${API_VERSION}/goods/background/add_goods`, activity.addGoods);
router.get(`${API_VERSION}/goods/background/pindan_goods`, activity.pindanGoods); router.get(`${API_VERSION}/goods/background/pindan_goods`, activity.pindanGoods);
router.get(`${API_VERSION}/goods/background/marketing_goods_info`, activity.markGoodsInfo); router.get(`${API_VERSION}/goods/background/marketing_goods_info`, activity.markGoodsInfo);
router.post(`${API_VERSION}/goods/background/edit_goods`, activity.editGoods); router.post(`${API_VERSION}/goods/background/edit_goods`, activity.editGoods);
router.post(`${API_VERSION}/marketing/background/add_marketing`, activity.addMarketing); router.post(`${API_VERSION}/marketing/background/add_marketing`, activity.addMarketing);
router.post(`${API_VERSION}/marketing/background/marketing_info`, activity.marketingInfo);
router.post(`${API_VERSION}/marketing/background/update_marketing`, activity.updateMarketing);
......
...@@ -236,6 +236,7 @@ import { ...@@ -236,6 +236,7 @@ import {
pindanGoods, pindanGoods,
markGoodsInfo, markGoodsInfo,
editGoods, editGoods,
marketingInfo,
} from "../../../../service/Activity/index"; } from "../../../../service/Activity/index";
export default { export default {
...@@ -336,8 +337,10 @@ export default { ...@@ -336,8 +337,10 @@ export default {
let params = { ota_name: "", offset: "", limit: "" }; let params = { ota_name: "", offset: "", limit: "" };
try { try {
const res = await getBusinessList(params); const res = await getBusinessList(params);
this.businessOpt = [{ ota_id: "", ota_name: "全部" }, ...res.data.list]; this.businessOpt = [
console.log(this.businessOpt); { ota_id: "", ota_name: "全部" },
...res.result.list,
];
} catch (error) { } catch (error) {
this.$message.error("发生未知错误,请稍后再试一下吧~~~"); this.$message.error("发生未知错误,请稍后再试一下吧~~~");
console.error(error); console.error(error);
...@@ -351,7 +354,6 @@ export default { ...@@ -351,7 +354,6 @@ export default {
this.commodityForm = res.result.goods_info; this.commodityForm = res.result.goods_info;
this.commodityForm.business1 = res.result.goods_info.ota_id; this.commodityForm.business1 = res.result.goods_info.ota_id;
this.commodityForm.picUrlList = res.result.goods_info.desc_pic_url_list; this.commodityForm.picUrlList = res.result.goods_info.desc_pic_url_list;
console.log(this.commodityForm.picUrlList);
}, },
// 编辑商品详情 // 编辑商品详情
...@@ -363,11 +365,11 @@ export default { ...@@ -363,11 +365,11 @@ export default {
inventory_add: this.commodityForm.inventory_total, inventory_add: this.commodityForm.inventory_total,
original_price: this.commodityForm.original_price, original_price: this.commodityForm.original_price,
price: this.commodityForm.price, price: this.commodityForm.price,
marketing_name: this.editInfo[0].title, marketing_name:this.editInfo.title,
marketing_type: "4", marketing_type: "4",
ota_id: this.commodityForm.business1, ota_id: this.commodityForm.business1,
op_cur_user: store.state.userInfo.email, op_cur_user: store.state.userInfo.email,
goods_sku_id:goodsSkuID, goods_sku_id: goodsSkuID,
}); });
if (res.code == 0) { if (res.code == 0) {
ElMessage.success({ ElMessage.success({
...@@ -379,7 +381,6 @@ export default { ...@@ -379,7 +381,6 @@ export default {
} else { } else {
ElMessage.error(res.reason); ElMessage.error(res.reason);
} }
console.log(res);
}, },
// 获取商品库列表 // 获取商品库列表
...@@ -395,7 +396,6 @@ export default { ...@@ -395,7 +396,6 @@ export default {
this.commodityForm = {}; this.commodityForm = {};
if (type == "add") { if (type == "add") {
this.commodityForm.total_amount_order = 0; this.commodityForm.total_amount_order = 0;
console.log(this.commodityForm.total_amount_order);
this.addCommodityTitle = "商品添加"; this.addCommodityTitle = "商品添加";
} else { } else {
this.addCommodityTitle = "商品编辑"; this.addCommodityTitle = "商品编辑";
...@@ -407,7 +407,7 @@ export default { ...@@ -407,7 +407,7 @@ export default {
// 添加商品 // 添加商品
async addGoodsMet() { async addGoodsMet() {
const res = await addGoods({ const res = await addGoods({
marketing_name: this.editInfo[0].title, marketing_name:this.editInfo.title,
goods_name: this.commodityForm.goods_name, goods_name: this.commodityForm.goods_name,
desc_pic_url: this.picUploadList.join(","), desc_pic_url: this.picUploadList.join(","),
desc: "", desc: "",
...@@ -481,9 +481,23 @@ export default { ...@@ -481,9 +481,23 @@ export default {
} }
} }
}, },
// 获取营销活动详情
async marketingInfoMet() {
let marketingId = this.$route.query.marketing_id;
if (marketingId == undefined) {
return;
}
let params = {
marketing_id: marketingId,
marketing_type: "4",
};
const res = await marketingInfo(params);
this.comTableData = res.result.goods_list;
},
}, },
created() { created() {
this.getBusinessListMet(); this.getBusinessListMet();
this.marketingInfoMet();
}, },
}; };
</script> </script>
......
...@@ -46,8 +46,8 @@ ...@@ -46,8 +46,8 @@
<script> <script>
import { GOODS_URI } from "../../../../../server/config"; import { GOODS_URI } from "../../../../../server/config";
import { marketingInfo } from "../../../../service/Activity/index";
export default { export default {
props: ["editInfo"],
data() { data() {
return { return {
infoEditForm: { infoEditForm: {
...@@ -82,16 +82,31 @@ export default { ...@@ -82,16 +82,31 @@ export default {
} }
} }
}, },
}, // 获取营销活动详情
created(){ async marketingInfoMet() {
console.log(this.editInfo); let marketingId = this.$route.query.marketing_id;
if (marketingId == undefined) {
return;
} }
let params = {
marketing_id: marketingId,
marketing_type: "4",
};
const res = await marketingInfo(params);
this.infoEditForm.title = res.result.marketing_info.marketing_name;
this.infoEditForm.desc = res.result.marketing_info.pindan_desc;
this.infoEditForm.picUploadList = res.result.marketing_info.pindan_pic_url;
},
},
created() {
this.marketingInfoMet();
},
}; };
</script> </script>
<style scoped> <style scoped>
.infoEditing{ .infoEditing {
width: 64%; width: 64%;
margin: 0 auto; margin: 0 auto;
} }
</style> </style>
\ No newline at end of file
...@@ -13,17 +13,13 @@ ...@@ -13,17 +13,13 @@
<el-step title="拼单设置"></el-step> <el-step title="拼单设置"></el-step>
</el-steps> </el-steps>
<div class="content"> <div class="content">
<<<<<<< Updated upstream
<infoEditing ref="infoEdit" v-if="active === 1" /> <infoEditing ref="infoEdit" v-if="active === 1" />
=======
<infoEditing ref="infoEdit" v-if="active === 1" :editInfo="infoEditArr"/>
>>>>>>> Stashed changes
<addProduc <addProduc
ref="addProduc" ref="addProduc"
v-else-if="active === 2" v-else-if="active === 2"
:editInfo="infoEditArr" :editInfo="infoEditArr"
/> />
<spellOrderSet v-else /> <spellOrderSet ref="spellOrderSet" v-else />
</div> </div>
<div class="stepsBtn"> <div class="stepsBtn">
<el-button @click="prev" v-show="active >= 2" style="margin-right: 20px" <el-button @click="prev" v-show="active >= 2" style="margin-right: 20px"
...@@ -41,21 +37,28 @@ ...@@ -41,21 +37,28 @@
</template> </template>
<script> <script>
import store from "../../../store/index";
import { ElMessage } from "element-plus"; import { ElMessage } from "element-plus";
import infoEditing from "./components/infoEditing.vue"; import infoEditing from "./components/infoEditing.vue";
import addProduc from "./components/addProduc.vue"; import addProduc from "./components/addProduc.vue";
import spellOrderSet from "./components/spellOrderSet.vue"; import spellOrderSet from "./components/spellOrderSet.vue";
import { addMarketing, marketingInfo } from "../../../service/Activity/index"; // , marketingInfo
import { addMarketing, updateMarketing } from "../../../service/Activity/index";
export default { export default {
components: { components: {
infoEditing, infoEditing,
addProduc, addProduc,
spellOrderSet spellOrderSet,
}, },
data() { data() {
return { return {
active: 3, // 步骤条状态 active: 1, // 步骤条状态
infoEditArr: [] // 信息编辑数据 infoEditArr: [], // 信息编辑数据
addProducArr: [], // 添加商品
goodsSkuIDArr: [], // 接收goods_sku_id
// spellOrderSetArr:[]
startDate: "", // 开始时间
endDate: "", // 结束时间
}; };
}, },
...@@ -72,30 +75,38 @@ export default { ...@@ -72,30 +75,38 @@ export default {
ElMessage.error("请填写商品标题"); ElMessage.error("请填写商品标题");
return; return;
} }
// console.log(this.$refs.infoEdit.infoEditForm.picUploadList.join(",")); this.infoEditArr = {
this.infoEditArr.push(this.$refs.infoEdit.infoEditForm); title: this.$refs.infoEdit.infoEditForm.title,
desc: this.$refs.infoEdit.infoEditForm.desc,
picUploadList:
this.$refs.infoEdit.infoEditForm.picUploadList.join(","),
};
} else if (this.active === 2) { } else if (this.active === 2) {
if (this.$refs.addProduc.comTableData.length == 0) { if (this.$refs.addProduc.comTableData.length == 0) {
ElMessage.error("请至少选择一个商品"); ElMessage.error("请至少选择一个商品");
return; return;
} }
this.addProducArr = this.$refs.addProduc;
} else {
this.startDate = this.$refs.spellOrderSet.startDate;
this.endDate = this.$refs.spellOrderSet.endDate;
} }
this.active++; this.active++;
}, },
// 获取营销活动详情 // 获取营销活动详情
async marketingInfoMet() { // async marketingInfoMet() {
let marketingId = this.$route.query.marketing_id; // let marketingId = this.$route.query.marketing_id;
if (marketingId == undefined) { // if (marketingId == undefined) {
return; // return;
} // }
let params = { // let params = {
marketing_id: marketingId, // marketing_id: marketingId,
marketing_type: "4", // marketing_type: "4",
}; // };
const res = await marketingInfo(params); // const res = await marketingInfo(params);
this.infoEditArr = res.result.marketing_info; // this.infoEditArr = res.result.marketing_info;
}, // },
// 取消 // 取消
cancel() { cancel() {
...@@ -103,28 +114,51 @@ export default { ...@@ -103,28 +114,51 @@ export default {
}, },
// 确认发布 // 确认发布
async confirmRelease() { async confirmRelease() {
// this.$refs.addProduc.comTableData for (var i in this.addProducArr.comTableData) {
const res = await addMarketing({ this.goodsSkuIDArr.push(this.addProducArr.comTableData[i].goods_sku_id);
goods_sku_id: "", }
marketing_name: "", let params = {
marketing_id:
this.$route.query.marketing_id == undefined
? ""
: this.$route.query.marketing_id,
goods_sku_id: this.goodsSkuIDArr.join(","),
marketing_name: this.infoEditArr.title,
marketing_type: "4", marketing_type: "4",
op_cur_user: "", op_cur_user: store.state.userInfo.email,
start_time: "", start_time: this.startDate,
end_time: "", end_time: this.endDate,
pindan_pic: "", pindan_pic: this.infoEditArr.picUploadList,
pindan_desc: "", pindan_desc: this.infoEditArr.desc,
};
if (this.$route.query.marketing_id == undefined) {
const res = await addMarketing(params);
if (res.code === 0) {
ElMessage.success({
message: "添加成功",
type: "success",
}); });
console.log(res);
this.$router.push({ path: "/op/activity/manage" }); this.$router.push({ path: "/op/activity/manage" });
} else {
ElMessage.error(res.reason);
} }
} else {
const res = await updateMarketing(params);
if (res.code === 0) {
ElMessage.success({
message: "修改成功",
type: "success",
});
this.$router.push({ path: "/op/activity/manage" });
} else {
ElMessage.error(res.reason);
}
}
},
}, },
<<<<<<< Updated upstream
created() {}
=======
created() { created() {
this.marketingInfoMet(); // this.marketingInfoMet();
}, },
>>>>>>> Stashed changes
}; };
</script> </script>
......
...@@ -42,6 +42,12 @@ export async function addMarketing(params) { ...@@ -42,6 +42,12 @@ export async function addMarketing(params) {
return res; return res;
} }
// 编辑营销活动
export async function updateMarketing(params) {
const res = await axios.post("/api/v1/marketing/background/update_marketing",params);
return res;
}
// 营销活动详情 // 营销活动详情
export async function marketingInfo(params) { export async function marketingInfo(params) {
const res = await axios.post("/api/v1/marketing/background/marketing_info",params); const res = await axios.post("/api/v1/marketing/background/marketing_info",params);
......
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