소스 검색

修改广告列表bug

Jing 3 달 전
부모
커밋
9fc91a459c
2개의 변경된 파일162개의 추가작업 그리고 150개의 파일을 삭제
  1. 45 30
      src/views/advertise/adPlaceList.vue
  2. 117 120
      src/views/advertise/advertiseList.vue

+ 45 - 30
src/views/advertise/adPlaceList.vue

@@ -8,7 +8,7 @@
                     <div class="searchBox">
                     <div class="searchBox">
                         <div class="searchTitle">网站名称</div>
                         <div class="searchTitle">网站名称</div>
                         <el-select v-model="webSiteName_id" :multiple="false" :multiple-limit="1" filterable remote
                         <el-select v-model="webSiteName_id" :multiple="false" :multiple-limit="1" filterable remote
-                            reserve-keyword placeholder="请输入网站名称" :remote-method="getWebNavList"
+                            reserve-keyword placeholder="请输入网站名称" clearable :remote-method="getWebNavList"
                             :loading="webSiteLoading" @change="selectWebSite">
                             :loading="webSiteLoading" @change="selectWebSite">
                             <el-option v-for="item in webSiteList" :key="item.value" :label="item.label"
                             <el-option v-for="item in webSiteList" :key="item.value" :label="item.label"
                                 :value="item.value">
                                 :value="item.value">
@@ -19,7 +19,7 @@
                 <el-col :span="6" class="left">
                 <el-col :span="6" class="left">
                     <div class="searchBox">
                     <div class="searchBox">
                         <div class="searchTitle">广告位名称</div>
                         <div class="searchTitle">广告位名称</div>
-                        <el-input v-model="adPlaceName" class="input" placeholder="请输入广告位名称"></el-input>
+                        <el-input v-model="adPlaceName" class="input" clearable placeholder="请输入广告位名称"></el-input>
                     </div>
                     </div>
                 </el-col>
                 </el-col>
                 <el-col :span="8" class="right">
                 <el-col :span="8" class="right">
@@ -137,8 +137,7 @@
                     </el-form-item>
                     </el-form-item>
                     <el-form-item label="广告位大小:" prop="adSize">
                     <el-form-item label="广告位大小:" prop="adSize">
                         <el-select v-model="ruleForm.adSize" placeholder="请选择广告位大小" @change="change">
                         <el-select v-model="ruleForm.adSize" placeholder="请选择广告位大小" @change="change">
-                            <el-option v-for="item in options" :key="item.id" :label="item.size"
-                                :value="item.id" >
+                            <el-option v-for="item in options" :key="item.id" :label="item.size" :value="item.id">
                             </el-option>
                             </el-option>
                         </el-select>
                         </el-select>
                     </el-form-item>
                     </el-form-item>
@@ -168,7 +167,7 @@ import tableTitle from './components/tableTitle.vue';
 
 
 //引入公用样式
 //引入公用样式
 import '@/styles/global.less';
 import '@/styles/global.less';
-import { createAdPlace, getAdPlaceList, delAdPlace, updateAdPlace, getAdList, getAdPlaceInfo,getSize } from '@/api/advertise'
+import { createAdPlace, getAdPlaceList, delAdPlace, updateAdPlace, getAdList, getAdPlaceInfo, getSize } from '@/api/advertise'
 export default {
 export default {
     components: {
     components: {
         tableTitle,//表格标题-
         tableTitle,//表格标题-
@@ -185,7 +184,7 @@ export default {
             tableDivTitle: "广告列表",  //列表标题
             tableDivTitle: "广告列表",  //列表标题
             dialogTableVisible: false,      //编辑弹框
             dialogTableVisible: false,      //编辑弹框
             dialogName: '编辑', //编辑弹窗名称
             dialogName: '编辑', //编辑弹窗名称
-            loading:true, //加载中
+            loading: true, //加载中
 
 
             tableData: [],//表格数据
             tableData: [],//表格数据
 
 
@@ -243,36 +242,52 @@ export default {
         //1.列表和分页相关 start ------------------------------------------------------------>
         //1.列表和分页相关 start ------------------------------------------------------------>
         //1.1 开始请求列表信息方法
         //1.1 开始请求列表信息方法
         getData() {
         getData() {
-            getAdPlaceList({
-                page: this.page,
-                pageSize: this.pageSize
-            }).then(data => {
-                console.log(data.data.rows);
-                this.tableData = data.data.rows
-                this.total = data.data.count
-                if(data.code==200){
-                    this.loading=false
-                }
-                for (let item of this.tableData) {
-                    item.size = item.width + 'x' + item.height
-                }
-            })
+            if (this.adPlaceName !== '' || this.webSiteName_id !== '') {
+                getAdPlaceList({
+                    page: this.page,
+                    pageSize: this.pageSize,
+                    name: this.adPlaceName,
+                    website_id: this.webSiteName_id, //广告位名称 id
+                }).then(data => {
+                    console.log(data);
+                    this.tableData = data.data.rows
+                    this.total = data.data.count
+                    for (let item of this.tableData) {
+                        item.size = item.width + 'x' + item.height
+                    }
+                })
+            } else {
+                getAdPlaceList({
+                    page: this.page,
+                    pageSize: this.pageSize
+                }).then(data => {
+                    console.log(data.data.rows);
+                    this.tableData = data.data.rows
+                    this.total = data.data.count
+                    if (data.code == 200) {
+                        this.loading = false
+                    }
+                    for (let item of this.tableData) {
+                        item.size = item.width + 'x' + item.height
+                    }
+                })
+            }
+
         },
         },
 
 
         //获取广告尺寸
         //获取广告尺寸
-        getSize(){
-            getSize().then(data=>{
+        getSize() {
+            getSize().then(data => {
                 console.log(data.data);
                 console.log(data.data);
-                this.options=data.data
-                for(let item of this.options){
+                this.options = data.data
+                for (let item of this.options) {
                     item.size = item.width + 'x' + item.height
                     item.size = item.width + 'x' + item.height
                 }
                 }
                 console.log(this.options);
                 console.log(this.options);
-                
             })
             })
         },
         },
 
 
-        change(){
+        change() {
             console.log(this.ruleForm.adSize);
             console.log(this.ruleForm.adSize);
         },
         },
 
 
@@ -313,9 +328,9 @@ export default {
             });
             });
         },
         },
         //1.3 查看示例图
         //1.3 查看示例图
-        goGraph() {
-            this.dialogVisible = true
-        },
+        // goGraph() {
+        //     this.dialogVisible = true
+        // },
 
 
         //1.4 列表内容分页
         //1.4 列表内容分页
         //直接跳转
         //直接跳转
@@ -374,7 +389,7 @@ export default {
 
 
             if (val.ad_size_id == 1) {
             if (val.ad_size_id == 1) {
                 this.ruleForm.adSize = '1200x90'  //广告位大小
                 this.ruleForm.adSize = '1200x90'  //广告位大小
-            }else if (val.ad_size_id == 2) {
+            } else if (val.ad_size_id == 2) {
                 this.ruleForm.adSize = '420x560'  //广告位大小
                 this.ruleForm.adSize = '420x560'  //广告位大小
             }
             }
             if (val.typeid == 2) {
             if (val.typeid == 2) {

+ 117 - 120
src/views/advertise/advertiseList.vue

@@ -16,13 +16,13 @@
                 <el-col :span="6" class="left">
                 <el-col :span="6" class="left">
                     <div class="searchBox">
                     <div class="searchBox">
                         <div class="searchTitle">工单编号</div>
                         <div class="searchTitle">工单编号</div>
-                        <el-input class="input" v-model="order_code" placeholder="请输入工单编号"></el-input>
+                        <el-input class="input" v-model="order_code" clearable placeholder="请输入工单编号"></el-input>
                     </div>
                     </div>
                 </el-col>
                 </el-col>
                 <el-col :span="6" class="left">
                 <el-col :span="6" class="left">
                     <div class="searchBox">
                     <div class="searchBox">
                         <div class="searchTitle">订单状态</div>
                         <div class="searchTitle">订单状态</div>
-                        <el-select v-model="ad_status" placeholder="请选择订单状态">
+                        <el-select v-model="order_status" clearable placeholder="请选择订单状态">
                             <el-option v-for="item in order" :key="item.value" :label="item.label" :value="item.value">
                             <el-option v-for="item in order" :key="item.value" :label="item.label" :value="item.value">
                             </el-option>
                             </el-option>
                         </el-select>
                         </el-select>
@@ -44,11 +44,6 @@
                     <el-table class="my-table" :data="tableData" style="width: 100%">
                     <el-table class="my-table" :data="tableData" style="width: 100%">
                         <el-table-column fixed prop="id" label="编号" width="80">
                         <el-table-column fixed prop="id" label="编号" width="80">
                         </el-table-column>
                         </el-table-column>
-
-                        <el-table-column prop="order_num" label="工单编号" width="120">
-                        </el-table-column>
-                        <el-table-column prop="user_name" label="广告名称" width="255">
-                        </el-table-column>
                         <el-table-column prop="order_num" label="工单编号" width="175">
                         <el-table-column prop="order_num" label="工单编号" width="175">
                         </el-table-column>
                         </el-table-column>
                         <el-table-column prop="name" label="广告名称" width="160">
                         <el-table-column prop="name" label="广告名称" width="160">
@@ -105,7 +100,8 @@
                     </el-form-item>
                     </el-form-item>
                     <el-form-item label="广告图:" prop="">
                     <el-form-item label="广告图:" prop="">
                         <div class="adImage">
                         <div class="adImage">
-                            <img src="../../assets/advertise/404.png" alt="">
+                            <img :src="ruleForm.adImg" v-if="this.ruleForm.adImg" alt="">
+                            <img :src="'../../assets/advertise/404.png'" v-else-if="this.ruleForm.adImg=''" alt="">
                         </div>
                         </div>
                     </el-form-item>
                     </el-form-item>
                     <el-form-item label="持续时间:" prop="">
                     <el-form-item label="持续时间:" prop="">
@@ -151,7 +147,8 @@
                     <el-form-item label="广告位置:" prop="">
                     <el-form-item label="广告位置:" prop="">
                         <span class="example" @click="goGraph">查看示例图</span>
                         <span class="example" @click="goGraph">查看示例图</span>
                         <div>
                         <div>
-                            <el-button disabled v-for="item in 12" class="el_btnList">中农兴业网 一号广告位</el-button>
+                            <el-button disabled v-for="item in ruleForm.adPlace" class="el_btnList">{{ item
+                                }}</el-button>
                         </div>
                         </div>
                     </el-form-item>
                     </el-form-item>
                 </div>
                 </div>
@@ -230,24 +227,11 @@ export default {
 
 
             tableData: [],//表格数据
             tableData: [],//表格数据
 
 
+            ad_img: 'http://183.131.25.186:9501/image/20250102/1735810611310322.png', //广告图
+
             // 搜索框相关
             // 搜索框相关
             order_code: '', //工单编号 
             order_code: '', //工单编号 
-            status: '',//审核状态
-            ad_status: '',//广告状态
-            check: [ //审核状态数据
-                {
-                    value: 1,
-                    label: '已通过'
-                },
-                {
-                    value: 2,
-                    label: '已驳回'
-                },
-                {
-                    value: 6,
-                    label: '待审核'
-                },
-            ],
+            order_status: '',//订单状态
             order: [ //订单状态数据
             order: [ //订单状态数据
                 {
                 {
                     value: 1,
                     value: 1,
@@ -283,7 +267,7 @@ export default {
             pageSize: 10,
             pageSize: 10,
             total: 0,
             total: 0,
 
 
-            orderads:[],
+            orderads: [],
 
 
             // 审核弹窗相关
             // 审核弹窗相关
             status_radio: "",   //审核状态
             status_radio: "",   //审核状态
@@ -294,12 +278,14 @@ export default {
             ruleForm: {
             ruleForm: {
                 name: '', //广告名称
                 name: '', //广告名称
                 ad_url: '', //广告网址
                 ad_url: '', //广告网址
+                adImg: '', //广告图
                 radio: '',//广告尺寸
                 radio: '',//广告尺寸
                 startTime: '', //开始时间
                 startTime: '', //开始时间
                 endTime: '',   //结束时间
                 endTime: '',   //结束时间
                 price: '',  //价格
                 price: '',  //价格
                 days: '',   //天数
                 days: '',   //天数
                 num: '',   //个数
                 num: '',   //个数
+                adPlace: [] //广告位
             },
             },
             rules: {
             rules: {
                 name: [
                 name: [
@@ -311,50 +297,64 @@ export default {
             }
             }
         }
         }
     },
     },
-    // watch: {
-    //     status_radio: {
-    //         handler(newVal, oldVal) {
-    //             // console.log(newVal);
-    //         },
-    //         deep: true,
-    //         immediate: true
-    //     }
-    // },
     methods: {
     methods: {
         //1.列表和分页相关 start ------------------------------------------------------------>
         //1.列表和分页相关 start ------------------------------------------------------------>
         //1.1 开始请求列表信息方法
         //1.1 开始请求列表信息方法
         getData() {
         getData() {
-            // let data = new FormData()
-            // data.append('page', this.page)
-            // data.append('pageSize', this.pageSize)
-            // console.log(data);
-
-            getOrderList({
-                page: this.page,
-                pageSize: this.pageSize,
-            }).then(data => {
-                console.log("全部数据", data);
-                console.log(data.data.rows);
-                this.tableData = data.data.rows
-                this.total = data.data.count.all
-                for (let item of this.tableData) {
-                    if (item.status == 1) {
-                        item.orderStatus = '已通过'
-                    } else if (item.status == 7) {
-                        item.orderStatus = '已完成'
-                    } else if (item.status == 2) {
-                        item.orderStatus = '已驳回'
-                    } else if (item.status == 3) {
-                        item.orderStatus = '已取消'
-                    } else if (item.status == 5) {
-                        item.orderStatus = '已过期'
-                    } else if (item.status == 6) {
-                        item.orderStatus = '待审核'
-                    }
+            if (this.order_code == '' || this.order_status == '') {
+                let data = new FormData()
+                data.append('page', this.page)
+                data.append('pageSize', this.pageSize)
+                data.append('status', this.order_status)
+                data.append('order_num', this.order_code)
 
 
+                getOrderListAdmin(data).then(data => {
+                    console.log(data);
+                    this.tableData = data.data.rows
+                    this.total = data.data.count
+                    for (let item of this.tableData) {
+                        if (item.status == 1) {
+                            item.orderStatus = '已通过'
+                        } else if (item.status == 7) {
+                            item.orderStatus = '已完成'
+                        } else if (item.status == 2) {
+                            item.orderStatus = '已驳回'
+                        } else if (item.status == 3) {
+                            item.orderStatus = '已取消'
+                        } else if (item.status == 5) {
+                            item.orderStatus = '已过期'
+                        } else if (item.status == 6) {
+                            item.orderStatus = '待审核'
+                        }
+                    }
+                })
+            } else {
+                let data = new FormData()
+                data.append('page', this.page)
+                data.append('pageSize', this.pageSize)
+                console.log(data);
+                getOrderListAdmin(data).then(data => {
+                    console.log("getOrderListAdmin", data);
+                    this.tableData = data.data.rows
+                    this.total = data.data.count
+                    for (let item of this.tableData) {
+                        if (item.status == 1) {
+                            item.orderStatus = '已通过'
+                        } else if (item.status == 7) {
+                            item.orderStatus = '已完成'
+                        } else if (item.status == 2) {
+                            item.orderStatus = '已驳回'
+                        } else if (item.status == 3) {
+                            item.orderStatus = '已取消'
+                        } else if (item.status == 5) {
+                            item.orderStatus = '已过期'
+                        } else if (item.status == 6) {
+                            item.orderStatus = '待审核'
+                        }
+                    }
+                })
+            }
 
 
-                }
-            })
         },
         },
 
 
         //1.2 删除内容
         //1.2 删除内容
@@ -418,52 +418,37 @@ export default {
             let data = new FormData()
             let data = new FormData()
             data.append('page', this.page)
             data.append('page', this.page)
             data.append('pageSize', this.pageSize)
             data.append('pageSize', this.pageSize)
-            data.append('status', this.status)
-            data.append('ad_status', this.ad_status)
+            data.append('status', this.order_status)
             data.append('order_num', this.order_code)
             data.append('order_num', this.order_code)
-            data.append('sttime', "")
-            data.append('edtime', "")
             console.log(data);
             console.log(data);
 
 
-            // getOrderList(data).then(data => {
-            //     console.log(data);
-            //     console.log(data.data.rows);
-            //     this.tableData = data.data.rows
-            //     this.total = data.data.count
-            //     for (let item of this.tableData) {
-            //         if (item.status == 1) {
-            //             item.status = "已通过"
-            //         } else if (item.status == 2) {
-            //             item.status = "已驳回"
-            //         } else if (item.status == 6) {
-            //             item.status = "待审核"
-            //         }
-
-            //         if (item.ad_status == 1) {
-            //             item.ad_status = "待投放"
-            //         } else if (item.ad_status == 2) {
-            //             item.ad_status = "已驳回"
-            //         } else if (item.ad_status == 3) {
-            //             item.ad_status = "已撤回"
-            //         } else if (item.ad_status == 4) {
-            //             item.ad_status = "已修改"
-            //         } else if (item.ad_status == 5) {
-            //             item.ad_status = "已过期"
-            //         } else if (item.ad_status == 6) {
-            //             item.ad_status = "待审核"
-            //         } else if (item.ad_status == 7) {
-            //             item.ad_status = "已结束"
-            //         } else if (item.ad_status == 8) {
-            //             item.ad_status = "待投放"
-            //         }
-            //     }
-            // })
+            getOrderListAdmin(data).then(data => {
+                console.log(data);
+                this.tableData = data.data.rows
+                this.total = data.data.count
+                for (let item of this.tableData) {
+                    if (item.status == 1) {
+                        item.orderStatus = '已通过'
+                    } else if (item.status == 7) {
+                        item.orderStatus = '已完成'
+                    } else if (item.status == 2) {
+                        item.orderStatus = '已驳回'
+                    } else if (item.status == 3) {
+                        item.orderStatus = '已取消'
+                    } else if (item.status == 5) {
+                        item.orderStatus = '已过期'
+                    } else if (item.status == 6) {
+                        item.orderStatus = '待审核'
+                    }
+                }
+            })
         },
         },
         //1.7 重置按钮
         //1.7 重置按钮
         goReset() {
         goReset() {
             this.order_code = ''
             this.order_code = ''
-            this.status = ''
-            this.ad_status = ''
+            this.order_status = ''
+            this.page = 1
+            this.pageSize = 10
             this.getData();
             this.getData();
         },
         },
         //列表和分页相关 end ------------------------------------------------------------>
         //列表和分页相关 end ------------------------------------------------------------>
@@ -473,26 +458,37 @@ export default {
             console.log(id, val);
             console.log(id, val);
             this.activeid = id
             this.activeid = id
             this.dialogTableVisible = true
             this.dialogTableVisible = true
-
             this.ruleForm.name = val.name
             this.ruleForm.name = val.name
-            // this.ruleForm.ad_url = val.ad_url
-            // this.ruleForm.radio = val.width
+            if (val.width == 1200) {
+                this.ruleForm.radio = '1'
+            } else {
+                this.ruleForm.radio = '2'
+            }
             this.ruleForm.startTime = val.sttime
             this.ruleForm.startTime = val.sttime
             this.ruleForm.endTime = val.edtime
             this.ruleForm.endTime = val.edtime
-            this.ruleForm.price = val.price
             this.ruleForm.days = val.days
             this.ruleForm.days = val.days
-            this.ruleForm.num = val.num
 
 
-            getOrderDetail({
-                order_id: id,
-                pageSize: this.pageSize,
-                page: this.page,
-            }).then(data => {
-                console.log('详情', data.data);
-                console.log('详情', data.data.orderads[0]?.image_url);
+            let data = new FormData()
+            data.append('id', id)
+
+            //查看列表详情
+            getOrderDetailAdmin(data).then(data => {
+                // console.log('详情', data);
+                console.log('详情', data.data.ad[0]?.image_url);
 
 
-                this.ruleForm.ad_url = data.data.orderads[0]?.image_url
+                this.ruleForm.ad_url = data.data.ad[0]?.image_url //广告链接
+                this.ruleForm.adImg = data.data.ad[0]?.image_src //广告图
+                this.ruleForm.num = data.data.ad.length //广告个数
+                this.ruleForm.price = val.price / val.days / this.ruleForm.num //广告价格
 
 
+                let adPlace = data.data.ad
+
+                this.ruleForm.adPlace = []
+
+                for (let item of adPlace) {
+                    this.ruleForm.adPlace.push(item.ad_name)//广告位名称
+                }
+                console.log(this.ruleForm.adPlace);
             })
             })
         },
         },
 
 
@@ -552,9 +548,10 @@ export default {
         // 弹出层相关方法
         // 弹出层相关方法
         // 提交表单
         // 提交表单
         submitForm() {
         submitForm() {
+            let total = this.ruleForm.price * this.ruleForm.days * this.ruleForm.num
             let data = new FormData()
             let data = new FormData()
             data.append('id', this.activeid)
             data.append('id', this.activeid)
-            data.append('price', this.ruleForm.price)
+            data.append('price', total.toFixed(2))
             editOrderAdmin(data).then(data => {
             editOrderAdmin(data).then(data => {
                 console.log(data);
                 console.log(data);
                 if (data.code == 200) {
                 if (data.code == 200) {
@@ -563,13 +560,13 @@ export default {
                         message: '修改成功',
                         message: '修改成功',
                         type: 'success'
                         type: 'success'
                     })
                     })
+                    this.getData()
                 }
                 }
                 if (data.code == 0) {
                 if (data.code == 0) {
                     this.$message({
                     this.$message({
                         message: data.message + ',需要保留两位小数',
                         message: data.message + ',需要保留两位小数',
                         type: 'error'
                         type: 'error'
                     })
                     })
-                    this.dialogTableVisible = true
                 }
                 }
             })
             })
         },
         },
@@ -757,13 +754,13 @@ export default {
     .adImage {
     .adImage {
         width: 140px;
         width: 140px;
         height: 140px;
         height: 140px;
-        line-height: 210px;
+        // line-height: 210px;
         border-radius: 12px;
         border-radius: 12px;
         border: 1px solid rgba(85, 112, 241, 0.11);
         border: 1px solid rgba(85, 112, 241, 0.11);
 
 
         img {
         img {
             width: 140px;
             width: 140px;
-            height: 80px;
+            // height: 80px;
         }
         }
     }
     }