Browse Source

促销活动商品列表增加”取消上架“/”恢复上架“

qymljy 1 year ago
parent
commit
c01986e552

+ 36 - 20
src/HDrpManagement/promotion/modules/detail.vue

@@ -16,10 +16,10 @@
         @onEditSuccess="queryMainData($route.query.id)">
       <div slot="customOperation">
         <Edit class="inline-16" :data="mainData" v-if="tool.checkAuth($route.name,'update') && mainData.status == '新建'" @onSuccess="queryMainData"></Edit>
-        <Check 
-          :data="mainData" 
-          class="inline-16" 
-          @onSuccess="queryMainData" 
+        <Check
+          :data="mainData"
+          class="inline-16"
+          @onSuccess="queryMainData"
           v-if="mainData.status != '发布'"
         />
         <Send :data="mainData" class="inline-16" @onSuccess="queryMainData" v-if="mainData.status != '关闭' || mainData.status != '新建'"/>
@@ -34,22 +34,26 @@
                 </template>
               </promotion-price>
           </template>
-          <template v-slot:addProduct="scope">  
+          <template v-slot:addProduct="scope">
             <add-product :data="mainData" @onSuccess="$refs.productDetail.listData(scope.data.data.sa_promotion_itemgroupid)"></add-product>
-            <calcPrice 
-              class="inline-16" 
-              :data="scope.data.selectRow" 
+            <calcPrice
+              class="inline-16"
+              :data="scope.data.selectRow"
               @onSuccess="$refs.productDetail.$refs.selectTable.$refs.tables.clearSelection();$refs.productDetail.$refs.selectTable.allArr=[];$refs.productDetail.selectRow=[]"
             ></calcPrice>
-            <importFile 
-              ref="importFile" 
-              class="inline-16" 
-              :bindData="{ownertable:'sa_promotionid',ownerid:$route.query.id,usetype:'default'}" 
-              :errorUrl="errorUrl" 
-              @clearUrl="errorUrl = null" 
+            <importFile
+              ref="importFile"
+              class="inline-16"
+              :bindData="{ownertable:'sa_promotionid',ownerid:$route.query.id,usetype:'default'}"
+              :errorUrl="errorUrl"
+              @clearUrl="errorUrl = null"
               @onSuccess="bindImportOrder"
             ></importFile>
           </template>
+          <template v-slot:isOnSale="scope">
+            <el-button :disabled="!isEdit"   class="inline-16" type="text" size="mini" @click="productOnsale(scope.data)" v-if="scope.data.isonsale === 1">取 消 上 架</el-button>
+            <el-button :disabled="!isEdit"   class="inline-16" type="text" size="mini" @click="productOnsale(scope.data)" v-else>恢 复 上 架</el-button>
+          </template>
           <template v-slot:delProduct="scope">
             <el-button :disabled="!isEdit" type="text" size="mini" @click="productDel(scope.data)">删 除</el-button>
           </template>
@@ -65,8 +69,8 @@
                v-if="tool.checkAuth($route.name,'prowerArea')"
               message="确定删除当前授权吗?"
               class="inline-16"
-              :id="scope.data.sa_promotion_authid" 
-              nameId="20230102103003" 
+              :id="scope.data.sa_promotion_authid"
+              nameId="20230102103003"
               nameKey="sa_promotion_authids"
               @deleteSuccess="$refs.prowerArea.listData()"></delete-btn>
           </template>
@@ -150,7 +154,7 @@ export default {
         },
         {
           label:'活动开始时间',
-          value:this.mainData.begdate 
+          value:this.mainData.begdate
         },
         {
           label:'活动结束时间',
@@ -223,7 +227,7 @@ export default {
           },
           {
             label:'活动开始时间',
-            value:this.mainData.begdate 
+            value:this.mainData.begdate
           },
           {
             label:'活动结束时间',
@@ -287,7 +291,7 @@ export default {
       }
     },
     async productDel (data) {
-      
+
       let res = await this.$api.requested({
         "id":20230102142603,
         "content": {
@@ -298,6 +302,18 @@ export default {
         this.$refs.productDetail.listData(data.sa_promotion_itemgroupid)
       })
     },
+    async productOnsale (data){
+      let res = await this.$api.requested({
+        "id": 20230927135803,
+        "content": {
+          "sa_promotion_itemsids": [data.sa_promotion_itemsid],
+          "isonsale":data.isonsale === 1?0:1
+        }
+      })
+      this.tool.showMessage(res,() => {
+        this.$refs.productDetail.listData(data.sa_promotion_itemgroupid)
+      })
+    },
     async bindImportOrder (id) {
       const res = await this.$api.requested({
         "id": 20230510153504,
@@ -331,4 +347,4 @@ export default {
 
 <style scoped>
 
-</style>
+</style>

+ 2 - 1
src/HDrpManagement/promotion/modules/productModel/productDetail.vue

@@ -2,7 +2,7 @@
   <div>
     <div style="display:flex;align-items:center;">
       <el-input
-          placeholder="请输入搜索内容1"
+          placeholder="请输入搜索内容"
           suffix-icon="el-icon-search"
           v-model="params.content.where.condition"
           style="width:200px"
@@ -67,6 +67,7 @@
             type="text"
             @click="currentProduct=scope.data"
           >编 辑</el-button>
+          <slot name="isOnSale" :data="scope.data"></slot>
           <slot name="promotionPrice" :data="scope.data"></slot>
           <slot name="delProduct" :data="scope.data"></slot>
         </template>