|
@@ -0,0 +1,146 @@
|
|
|
|
+<template>
|
|
|
|
+ <div class="performance">
|
|
|
|
+ <div class="title-box">
|
|
|
|
+ <h3>图片库</h3>
|
|
|
|
+ </div>
|
|
|
|
+ <div class="padding-box">
|
|
|
|
+ <div class="search-box"></div>
|
|
|
|
+ </div>
|
|
|
|
+ </div>
|
|
|
|
+</template>
|
|
|
|
+
|
|
|
|
+<script lang="ts">
|
|
|
|
+import usePagination from "@/hooks/usePagination";
|
|
|
|
+import { defineComponent, reactive, toRefs, ref } from "vue";
|
|
|
|
+import { onBeforeRouteUpdate } from "vue-router";
|
|
|
|
+// import { TableColumnOfYuewen } from "../_pageOptions/table_yuewen";
|
|
|
|
+//getPromotionList
|
|
|
|
+import {
|
|
|
|
+ getPromotionList,
|
|
|
|
+ addPromotionLInk,
|
|
|
|
+ updateReportConfig,
|
|
|
|
+ deletePromotion,
|
|
|
|
+} from "@/api";
|
|
|
|
+import { message } from "ant-design-vue";
|
|
|
|
+const PictureLibrary = defineComponent({
|
|
|
|
+ components: {},
|
|
|
|
+ setup() {
|
|
|
|
+ let { tablePageOptions } = usePagination();
|
|
|
|
+ const formRef = ref();
|
|
|
|
+ const state = reactive({
|
|
|
|
+ search: {
|
|
|
|
+ name: "", // 推广员名称
|
|
|
|
+ days: "", // 自定义天数 1~30天 无默认
|
|
|
|
+ months: "", // 自定义月数 默认一个月
|
|
|
|
+ dateType: "month", // 按月查询month/按天查询date
|
|
|
|
+ month_range: "", // 按月查询 月范围
|
|
|
|
+ date_range: "", // 按天查询 日期范围
|
|
|
|
+ },
|
|
|
|
+ addLink: {
|
|
|
|
+ channel_id: "", // 推广链接id
|
|
|
|
+ channel_name: "", // 渠道名
|
|
|
|
+ book_name: "", // 作品名
|
|
|
|
+ },
|
|
|
|
+ list: ref<any[]>([]),
|
|
|
|
+ visible: false, // 添加派单链接dialog
|
|
|
|
+ rateVisible: false, // 添加派单链接dialog
|
|
|
|
+ drawerVisible: false,
|
|
|
|
+ confirmLoading: false, // 提交链接loading
|
|
|
|
+ // columns: TableColumnOfYuewen,
|
|
|
|
+ rate: 0, // 设置回传配置
|
|
|
|
+ channelId: "",
|
|
|
|
+ loading: false,
|
|
|
|
+ });
|
|
|
|
+ return { ...toRefs(state), formRef, tablePageOptions };
|
|
|
|
+ },
|
|
|
|
+ mounted() {
|
|
|
|
+ this.getList({ current: 1 });
|
|
|
|
+ },
|
|
|
|
+ methods: {
|
|
|
|
+ // 重置搜索条件
|
|
|
|
+ resetSearch() {
|
|
|
|
+ // this.search.book_name = "";
|
|
|
|
+ // this.search.channel_name = "";
|
|
|
|
+ // this.search.channel_id = "";
|
|
|
|
+ },
|
|
|
|
+ // 获取推广链接数据
|
|
|
|
+ async getList(page?: any) {
|
|
|
|
+ // this.loading = true;
|
|
|
|
+ // let { data } = await getPromotionList({
|
|
|
|
+ // page: page ? page.current : 1,
|
|
|
|
+ // ...this.search,
|
|
|
|
+ // });
|
|
|
|
+ // this.loading = false;
|
|
|
|
+ // this.list = data.list;
|
|
|
|
+ },
|
|
|
|
+ // 点击添加链接
|
|
|
|
+ onAddLink() {
|
|
|
|
+ this.addLink.channel_id = "";
|
|
|
|
+ this.addLink.channel_name = "";
|
|
|
|
+ this.addLink.book_name = "";
|
|
|
|
+ this.visible = true;
|
|
|
|
+ },
|
|
|
|
+ // 确认增加派单链接
|
|
|
|
+ async onEmitLink() {
|
|
|
|
+ this.formRef.validate().then(() => {});
|
|
|
|
+ if (!this.addLink.channel_name) return message.warn("请输入渠道名称");
|
|
|
|
+ if (!this.addLink.channel_id) return message.warn("请输入链接ID");
|
|
|
|
+ if (!this.addLink.book_name) return message.warn("请输入推广作品");
|
|
|
|
+ try {
|
|
|
|
+ await addPromotionLInk(this.addLink);
|
|
|
|
+ message.success("新增成功");
|
|
|
|
+ this.getList({ current: 1 });
|
|
|
|
+ this.visible = false;
|
|
|
|
+ } catch (err) {
|
|
|
|
+ console.log("ERROR:", err);
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ // 删除
|
|
|
|
+ async onDelete(val: any) {
|
|
|
|
+ try {
|
|
|
|
+ await deletePromotion({ channel_id: val.channel_id });
|
|
|
|
+ this.getList({ current: 1 });
|
|
|
|
+ message.success("删除成功");
|
|
|
|
+ } catch (err) {
|
|
|
|
+ console.log(err);
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ // 点击回传配置
|
|
|
|
+ onRateConfig(val: any) {
|
|
|
|
+ this.channelId = val.channel_id;
|
|
|
|
+ this.rateVisible = true;
|
|
|
|
+ this.rate = val.rate;
|
|
|
|
+ },
|
|
|
|
+ // 提交回传配置
|
|
|
|
+ async onEmitRate() {
|
|
|
|
+ if (this.rate > 100 || this.rate < 0)
|
|
|
|
+ return message.error("回传比例应在0~100之间");
|
|
|
|
+ if (parseInt(this.rate) !== parseFloat(this.rate))
|
|
|
|
+ return message.warn("请输入整数");
|
|
|
|
+ try {
|
|
|
|
+ await updateReportConfig({
|
|
|
|
+ channel_id: this.channelId,
|
|
|
|
+ rate: this.rate,
|
|
|
|
+ });
|
|
|
|
+ message.success("修改成功");
|
|
|
|
+ this.getList({ current: 1 });
|
|
|
|
+ this.rateVisible = false;
|
|
|
|
+ } catch (err) {
|
|
|
|
+ console.log(err);
|
|
|
|
+ }
|
|
|
|
+ },
|
|
|
|
+ // 查看注册用户
|
|
|
|
+ openUserDrawer(val: any) {
|
|
|
|
+ this.channelId = val.channel_id;
|
|
|
|
+ this.drawerVisible = true;
|
|
|
|
+ },
|
|
|
|
+ },
|
|
|
|
+});
|
|
|
|
+
|
|
|
|
+export default PictureLibrary;
|
|
|
|
+</script>
|
|
|
|
+<style lang="scss" scoped>
|
|
|
|
+@import "@/assets/common-style/frame.scss";
|
|
|
|
+// .performance {
|
|
|
|
+// }
|
|
|
|
+</style>
|