fuwei 6 anni fa
parent
commit
42bad95f68

+ 28 - 4
store/src/admin/ad/list.vue

@@ -5,7 +5,11 @@
 			<block v-if="!$util.isEmpty(list.data)">
 				<div class="list" v-for="(item, index) in list.data" :key="index">
 					<div class="list-img">
-						<app-img :src="item.adImgUrl | default_img" alt="广告图片" mode="center" />
+						<app-img
+							height="100%"
+							mode=""
+							:src="item.adImgUrl | default_img" 
+							alt="广告图片" />
 					</div>
 					<div class="list-right">
 						<div class="app-size-28 app-color-0">{{ item.adName }}</div>
@@ -27,7 +31,12 @@
 					</div>
 				</div>
 				<!-- 操作 -->
-				<operate-module v-show="operateShow" :top="operateTop" :right="30" :btnData="btnData" />
+				<operate-module
+					@clickFn="operateList"
+					v-if="operateShow" 
+					:top="operateTop" 
+					:right="30" 
+					:btnData="btnData" />
 			</block>
 			<block v-else>
 				<app-wrapper-empty title="暂无数据" :is-empty="$util.isEmpty(list.data)" />
@@ -138,6 +147,21 @@ export default {
 		// this.init()
 	},
 	methods: {
+		operateList(index){
+			if(index === 0) {
+				this.$util.pageTo({
+							url: '/admin/ad/add',
+							query: {
+								type: this.tabIndex,
+								id: this.operateData.id
+							}
+						})
+			}else if(index ===1){
+				this.changeStatusFn()
+			}else if(index === 2) {
+				this.delModal = true
+			}
+		},
 		async init() {
 			this._list()
 		},
@@ -220,8 +244,8 @@ export default {
 			.list-img {
 				width: 300px;
 				height: 168px;
-				img {
-					height: 100%;
+				& img {
+					height: 100%!important;
 				}
 			}
 			.list-right {

+ 23 - 1
store/src/admin/goodsManage/category.vue

@@ -26,7 +26,12 @@
 					</div>
 				</div>
 				<!-- operate -->
-				<operate-module v-show="operateShow" :top="operateTop" :right="30" :btnData="btnData" />
+				<operate-module 
+					v-if="operateShow" 
+					:top="operateTop" 
+					:right="30"
+					@clickFn="operateList"
+					:btnData="btnData" />
 			</block>
 			<block v-else>
 				<app-wrapper-empty title="暂无数据" :is-empty="$util.isEmpty(list.data)" />
@@ -172,6 +177,23 @@ export default {
 		// this.init()
 	},
 	methods: {
+		operateList(index){
+			if(index === 0){
+				this.modifyModal = true
+				this.modifyTitle = '编辑'
+
+				this.modifyForm = {
+					categoryName: this.operateData.categoryName,
+					img: [this.operateData.img],
+					inTurn: this.operateData.inTurn,
+					status: this.operateData.status
+				}
+			}else if(index === 1) {
+				this.changeStatusFn()
+			}else if(index === 2) {
+				this.delModal = true
+			}
+		},
 		async init() {
 			this._list()
 		},

+ 28 - 1
store/src/admin/goodsManage/img-store.vue

@@ -52,10 +52,11 @@
         </div>
         <!-- 操作 -->
         <operate-module
-          v-show="operateShow"
+          v-if="operateShow"
           :top="operateTop"
           :right="operateRight"
           :btnData="btnData"
+          @clickFn="operateList"
         />
       </block>
       <block v-else>
@@ -238,6 +239,32 @@ export default {
     // this.init()
   },
   methods: {
+    // 关闭操作按钮
+		operateCloseFn() {
+			this.operateData = {}
+			this.operateIndex = null
+			this.operateShow = false
+		},
+    operateList(index){
+      if(index === 0) {
+        this.modalCancel();
+        this.form.picIdList = [this.operateData.id];
+        this.settingModal = true;
+      }else if(index ===1) {
+        picTop({ id: this.operateData.id }).then(res => {
+              this.operateCloseFn();
+              this.$msg("置顶成功!");
+              setTimeout(() => {
+                this.resetList();
+                this._list();
+              }, 1000);
+            });
+      }else if(index === 2) {
+          this.delModal = true;
+      }else if(index ===3 ) {
+        this.delModal = true;
+      }
+    },
     // 获取高度
     getListHei(dom) {
       let listDom = uni.createSelectorQuery().select(dom);

+ 57 - 6
store/src/admin/goodsManage/list.vue

@@ -1,6 +1,11 @@
 <template>
 	<div class="app-content" @click="operateBottomShow = false">
-		<app-tabs :tabs="tabs" :isFixed="true" :currentTab="tabIndex" @change="change" itemWidth="50%" />
+		<app-tabs 
+			:tabs="tabs" 
+			:isFixed="true" 
+			:currentTab="tabIndex" 
+			@change="change" 
+			itemWidth="50%" />
 		<!-- 中间 -->
 		<div class="app-middle">
 			<scroll-view scroll-y scroll-with-animation class="tab-view" :scroll-top="scrollTop" :style="{height:height+'px'}">
@@ -42,10 +47,17 @@
 							</div>
 						</div>
 						<!-- 操作 -->
-						<operate-module v-show="operateShow" :top="operateTop" :right="30" :btnData="btnData" />
+						<operate-module
+							@clickFn="operateList"
+							v-if="operateShow" 
+							:top="operateTop" 
+							:right="30" 
+							:btnData="btnData" />
 					</block>
 					<block v-else>
-						<app-wrapper-empty title="暂无数据" :is-empty="$util.isEmpty(list.data)" />
+						<app-wrapper-empty 
+							title="暂无数据" 
+							:is-empty="$util.isEmpty(list.data)" />
 					</block>
 					<!--内容部分 end -->
 				</scroll-view>
@@ -65,9 +77,23 @@
 			</div>
 		</div>
 		<!-- 操作弹窗 -->
-		<operate-line-module v-if="operateBottomShow" :btnData="btnBottomData" :bottom="120" :right="528" />
+		<operate-line-module 
+			v-if="operateBottomShow" 
+			:btnData="btnBottomData"
+			@clickFn="operateLine" 
+			:bottom="120" 
+			:right="528" />
 		<!-- 删除提示 -->
-		<modal-module :show="delModal" :maskClosable="false" @cancel="modalCancel" @click="delModalClick" content="确定删除该商品吗?" color="#333" :size="32" padding="30rpx 30rpx"></modal-module>
+		<modal-module 
+			:show="delModal" 
+			:maskClosable="false"
+			 @cancel="modalCancel" 
+			 @click="delModalClick" 
+			 content="确定删除该商品吗?" 
+			 color="#333" 
+			 :size="32" 
+			 padding="30rpx 30rpx">
+		</modal-module>
 	</div>
 </template>
 
@@ -131,6 +157,7 @@
 					{
 						name: '通用简介',
 						click: () => {
+							console.log(780)
 							// alert('请在电脑端进行设置!')
 							this.$msg('请在电脑端进行设置!')
 						}
@@ -155,7 +182,7 @@
 					{
 						text: '编辑',
 						icon: 'iconbianji',
-						click: () => {
+						click: function() {
 							this.$util.pageTo({
 								url: '/admin/goodsManage/add',
 								query: {
@@ -202,6 +229,30 @@
 			}
 		},
 		methods: {
+			operateLine(index){
+				if(index === 0){
+					this.$util.pageTo('/admin/goodsManage/freight')
+				}else if(index ===1 ){
+					this.$msg('请在电脑端进行设置!')
+				}else if(index ===2 ){
+					this.$util.pageTo('/admin/goodsManage/price-increase')
+				}
+			},
+			operateList(index){
+				if(index === 0){
+					this.$util.pageTo({
+								url: '/admin/goodsManage/add',
+								query: {
+									type: this.tabIndex,
+									id: this.operateData.id
+								}
+							})
+				}else if(index === 1){
+					this.changeStatusFn()
+				}else if(index === 2){
+					this.delModal = true
+				}
+			},
 			async sInit() {
 				this._getClass()
 				this._list()

+ 15 - 3
store/src/admin/home/components/module/operate-line.vue

@@ -1,12 +1,24 @@
 <template>
 	<div class="operate-line-module" :class="[isModify ? 'witer' : 'back']" :style="{bottom: bottom + 'rpx', left: left + 'rpx'}">
-		<div class="operate-list" :style="{height: listHei + 'rpx'}" v-for="(item, index) in btnData" :key="index" @click="clickFn(item, index)">
-			<div v-if="isModify" class="icon-del" @click.stop="delFn(index)">
+		<div 
+			class="operate-list" 
+			:style="{height: listHei + 'rpx'}" 
+			v-for="(item, index) in btnData" 
+			:key="index" 
+			@click="clickFn(item, index)">
+			<div 
+				v-if="isModify" 
+				class="icon-del" 
+				@click.stop="delFn(index)">
 				<i class="iconfont iconguanbi"></i>
 			</div>
 			<div class="btn-text">{{ item.name }}</div>
 		</div>
-		<div v-if="isModify" class="operate-list" :style="{height: listHei + 'rpx'}" @click="addFn">
+		<div 
+			v-if="isModify" 
+			class="operate-list" 
+			:style="{height: listHei + 'rpx'}" 
+			@click="addFn">
 			<i class="iconfont icontupiantianjia icon-add"></i>
 		</div>
 	</div>

+ 25 - 3
store/src/admin/home/components/module/operate.vue

@@ -1,11 +1,17 @@
 <template>
-	<div class="operate-module" :style="{top: top + 'rpx', right: right + 'rpx'}">
+	<div 
+		class="operate-module" 
+		:style="{top: top + 'rpx', right: right + 'rpx'}">
 		<!-- <div class="operate-icon">
 			<i class="iconfont" :class="[ isShow ? 'iconcaozuojihuo' : 'iconcaozuo']"></i>
 		</div>-->
 		<!-- 弹窗 -->
 		<!-- <div class="operate-wrap" :style="{top: top + 'rpx', right: right + 'rpx'}" > -->
-			<div class="operate-list" v-for="(item, index) in btnData" :key="index" @click="item.click()">
+			<div 
+				class="operate-list" 
+				v-for="(item, index) in btnData" 
+				:key="index" 
+				@click="clickFn(item, index)">
 				<i class="iconfont" :class="[item.icon]"></i>
 				<div class="btn-text">{{ item.text }}</div>
                 <!-- <span>{{item.click}}</span> -->
@@ -35,7 +41,23 @@ export default {
 			default: () => []
 		}
 	},
-	methods: {}
+	methods: {
+		clickFn(item,index){
+			if (item.click) {
+				item.click()
+				return false
+			}
+			this.$emit('clickFn', index)
+		}
+	},
+	mounted() {
+		console.log(this.btnData)
+	},
+	watch: {
+		btnData(val){
+			console.log()
+		}	
+	}
 }
 </script>
 

+ 20 - 4
store/src/components/app-img.vue

@@ -4,7 +4,14 @@
 		<img class="app-img" v-lazy="src" :alt="alt" :title="title" :mode="mode" />
 		<!-- #endif -->
 		<!-- #ifndef H5 -->
-		<image class="app-img" :src="src" :alt="alt" :title="title"  :lazy-load="true" :mode="mode" :style="{height: height + 'rpx'}" ></image>
+		<image 
+			class="app-img" 
+			:src="src" 
+			:alt="alt" 
+			:title="title"  
+			:lazy-load="true" 
+			:mode="mode" 
+			:style="{height:setHeight}" ></image>
 		<!-- #endif -->
 	</block>
 </template>
@@ -28,7 +35,7 @@ export default {
 			type: String,
 			default: ''
 		},
-		// #ifdef H5
+		// #ifdef MP-WEIXIN
 		mode: {
 			type: String,
 			default: 'scaleToFill'
@@ -41,10 +48,19 @@ export default {
 		},
 		// #endif
 		height: {
-			type: Number,
+			type: [Number, String],
 			default: 346
 		}
-	}
+	},
+	computed: {
+		setHeight(){
+			if(typeof this.height === 'number') {
+				return this.height + 'rpx'
+			}else {
+				return this.height
+			}
+		}
+	},
 }
 </script>