first commit

This commit is contained in:
编码猿
2024-09-27 02:06:13 +08:00
commit 852d94fbb9
36760 changed files with 3274413 additions and 0 deletions

View File

@@ -0,0 +1,165 @@
<template>
<view class="con">
<!-- 搜索栏 -->
<view class="floot">
<view class="inputs" @click="input">
<img
src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABsAAAAbCAYAAACN1PRVAAAC50lEQVRIS7WWz08TURDHv9OSkiYCCZqQKI0EjVExUePJsx5MvEAEPBhveJHuwtuiCKc9ISL7FrtbPejRU/EHJ/Xgv2DUBPyR+DOFAwmYdL0ISTvm2RYLlHZp4Z02b9/MZ2fmO/OWUGKZphlqbNzXycydRHQW4P0AVgHMM+MtEc143tKMaZpqz/eijSeldLsAngBwuIKXL0Q8LIT+zC9tDZZMJoOp1OIYEW7mjT8AeJTN4mUoxN/VXiYTbGfOXgDQB+C42mPGRCTSMtrb25upBF2DWZZzJw9aJSIjnV56YJpmdos0Bxoamq8RkQ0grICxmDbsC2bb8W5mmlZ1IeKLQuivKxmq95blniPiFwBCRNwjhP6knB3lxLD3K4BWAP2God33AyqcsW23n5ldAAuet9xeTjRk2/ErzPQYwFxra8tJP7kv/hhV6/n5xfcAOphxNRbTlK+Si6R0pwFWaRSxWHRqO1EVzlqWO0jEqn5PDUPrLgNzfgA4mM3i2NCQ9qka2OSkczQQwEcAPw1DaysH+wOg3vOW67fbpAWn+bqvKIEZhlZfLo0ewA21wBKJxJ6VlexvHzDnM4AjtaRRSrcD4FkfaaxdIFI6AwCUuMoLpCB9ZsxGIi2nqpF+KrX4jggnKkq/1qaW0rkOIKGauq6OD+m6roRSus9yY8fpIUKylnEF0GXDiCofW661QSylOwHwjRxwe4M4N/05YRiaRkRcNjL1Mj92VJGj+cNzAB4GAplX4XD4m+d5oWAw3AbweWb0qRqVcOoKEdW3Am66PC3LuUSEcZ+X5whz4DTAowUwMxzDiA6UAm6CKSMlmqam5h5m6gLoDMAHcs5oAeA3RPw8nf41XZg4tu2MMWPkf6QUF6J/cCOwJKya+SilcxvArSLbe0JERTFwx2AKYtvxcWYqvrHXAXcUlm+jwu9FLvHEU0Lo4t9zNSmrZFPURuuAuwLLR3iXCEPF0e0aTEGkdCeJssFdTeNWaf4LfE9oKz70n2kAAAAASUVORK5CYII="
draggable="true"
/>
<p>请输入药名/厂家</p>
</view>
<img
class="rightimg"
src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAArCAYAAAA65tviAAAEzElEQVRoQ+2ZW6hVVRSG/7HWGGvvE6UV2c2itOimZEQkpBGEJHUio/QhwUuRYCL1kF2eJHqK8hBJZAbRTbphYJGWhT1YPtRLKUYXwpIudhHRtNp7z7HWiLnbS6bLc99rn3OgM9/2vIzxf3OsveaYYxF6afV6/ZIoipYDuBHAeQAqvc0bwb46gL0AtmRZtr5SqXxd9E1hh5klqvo4gJUA4hEUOhRXKYCnmflBImrkC4+CtCDeATB3KFZHce5WZr4lhzkK4pxbA+D+URQ2HNc9IrLKL2yC1Gq1C+M4/goAB9Z+M7PVIrIZwD4iyobjqd01ZhYBOMs5101EjwI4I7CpaZpeWq1Wv2uCOOeeANAka7VfmflqIvqxXSFlrjezc1X1MwBnBnbXiMgDOchuANPyQTO7M0mSF8sUUZatRqOxlIheCOx9KSLTc5B/AFTzQWaeSER/luW8TDtmNkFVDwU2ayLSlYNYMHBERE4q03nZtpxzhwGcmNsVEeoN5JCInFy28zLtOecOApg4DlLmrrZjazwi7exeJ9aOR6QTu9qOzVIjYmZnq+pDAKaY2WYReY6IwvOoqVVVF5rZAiL63Tn3WFdX1/dFCOecz7iXmdlfZtZTqVR29QdaGoiZiap+AeCywOEqEekJBajqYjN7Kej7hZkvJqIjeZ9zbg6ArQB8cujbYWae1l+eVxpIo9HwCeWnhV3bJSIzwj7nnBd4Q9hHRN3MvCXvU9XnzeyucI6ZrUiSZF1fUSkNpF6vXx5F0c6Co+0icl0BZBOAeYV514rIJ0FEngJwbwF2ETNv6DiId+Cc2wjg9pYzf/28SUQ+KIBcA2BbkJB+xMxzwv9S6y7kU/NTWmt3t64QPpHttZUWEW/dzOI0TW/NsmyymX1YqVT8xey4VqvVLoiiqDuKov1xHL9JRFqc5F8czjkfubqIvE5Ef/cF0drE8Vyrvw0a8bFSH60RVx84HAcZzd3vzff/IiL+lZiXSI2ZhYj82TDmmpmxqvpSaV5cTEWE8zv7TwAmB6pni8iOMUfx30E8G8DHgbafReScJkij0XiViO4IBrcx89yxFhV/CKuqzx6uz7Wa2WtJkixsgqhqt5m9W4jARmZeQUR/jIXImNkkVX0GwPxQDxHdzMybwyK2T+RmFUT7Z9FnuQeI6ACA9+I43tjbvSNcZ2anq+oyAFcAkBI24lQAMwEkBVs7RMQ/akf/ML6QPTWOYy/6tAEcb2Lm+X09dqq6wMyeBeCdd7LtT9N0ZrVa3XMMiP9Rr9enx3H8tplN7U+Bmd2XJMnaQhQmOOfWEtGSTqpviibak6bpvEql4mvWzXbMFyvfYWYnqKr/TnKPL+f3IepzEbkyH3POzSKiV8xsSoch9gFYx8w9xQz5OJDgbRA552ZEUXR+lmWTiGh9IDLzhW4fRFV9BMDDwVU1n+a/p6w1s+IFbMisURQdyrLsBxHZ2dd3mj5Bit6cc98AuCgAXU5EdwO4qjjXzPYS0WIR2T5k1cNcMGiQRqPxMhEtGsiPmW0QkZVEFJb+B1rW9vigQVT1NjN7qx+PB4loOTO/0baqYRgYNIiZkaq+X6yKtHz6u/gSIvKpzqi0QYMEb7TVAJa2Pkp+a2ZPisj6gQ7JTtMNCaTTYtqx/y/2ZXxKzaQkWgAAAABJRU5ErkJggg=="
draggable="true"
/>
</view>
<!-- 轮播图 -->
<swiper
class="swiper"
:indicator-dots="indicatorDots"
:autoplay="autoplay"
:interval="interval"
:duration="duration"
:current="current"
:indicator-active-color="color"
>
<swiper-item v-for="(i, j) in list.banner" :key="j" @click="bann(j)">
<view class="swiper-item">
<img :src="'https://' + i.app_pic_url" draggable="true" />
</view>
</swiper-item>
</swiper>
<!-- 9宫格 -->
<view class="palaceGrid">
<view v-for="(i, j) in icons" :key="j" @click="newlist(j)">
<img :src="'https://' + i.cover_img" />
<p>{{ i.activity_name }}</p>
</view>
</view>
<!-- 通知栏 -->
<view class="notice">
<img src="/static/home/laba.png" class="noticeImg" />
<swiper :autoplay="autoplay" :interval="interval">
<swiper-item class="swp">
<p>医点医滴-中秋国庆放假通知</p>
</swiper-item>
<swiper-item class="swp">
<p>医点医滴APP上线拉!</p>
</swiper-item>
</swiper>
</view>
<!-- 新客特权 -->
<img src="/static/home/renzheng.jpg" class="prerog" />
<!-- 明星爆款 -->
<view>
<view
class="faddish"
v-for="(i, j) in list.activity_self_true"
:key="j"
@click="sous(j)"
>
<img src="/static/home/shu.png" alt="" />
<p>{{ i.activity_name }}</p>
</view>
<view>
<scroll-view scroll-x="true" class="scroll">
<view class="box" v-for="(i, j) in hot" :key="j" @click="sous(j)">
<img :src="'https://' + i.pc_thumb" alt="" />
<view class="info">
<p class="ling" v-if="i.retail_flag == 0">零</p>
<p class="hot" v-if="i.is_limit == 1">限</p>
<p class="jieshao">{{ i.goods_name }}</p>
</view>
<p class="gs">{{ i.manufacturer_name }}</p>
<p class="zhi">{{ i.spec_desc }}</p>
<p class="jiage">¥{{ i.sales_price }}</p>
</view>
</scroll-view>
</view>
<Tabs></Tabs>
</view>
</view>
</template>
<script>
import Tabs from "../../components/homeTabs";
export default {
data() {
return {
indicatorDots: true,
autoplay: true,
interval: 2000,
duration: 500,
current: 0,
color: "#fff",
//保存首页接口数据
list: [],
//保存明星爆款数据
hot: [],
//保存九宫格的数据
icons: [],
};
},
created() {
this.getIndex();
},
onLoad() {},
methods: {
//掉首页接口
async getIndex() {
let res = await this.$http.index.getIndex();
this.list = res;
// console.log("接口原数据", res);
this.icons = res.activity_icons;
// console.log("九宫格数据", this.icons);
this.list.activity_self_true.forEach((i) => {
this.hot = i.goods_list.data;
// console.log("明星爆款6条数据", i.goods_list.data);
});
},
//搜索点击跳转事件
input() {
uni.navigateTo({
url: `/pages/index/search`,
});
},
//点击明星爆款跳转到搜索页面
sous(j) {
// console.log(this.hot[j].keyword);
uni.navigateTo({
url: `/pages/index/search?key=${this.hot[j].keyword}`,
});
},
//点击九宫格跳转到搜索页面
newlist(el) {
uni.navigateTo({
url: `/pages/index/search?newlist=${this.icons[el].id}`,
});
},
//轮播图点击跳转进搜索页面
bann(el){
uni.navigateTo({
url: `/pages/index/search?banner=${this.list.banner[el].id}`,
});
},
},
components: {
Tabs
}
};
</script>
<style scoped lang="less">
@import "../../common/less/page/index.less";
</style>

View File

@@ -0,0 +1,256 @@
<template>
<view>
<!-- 头部 -->
<view class="flood">
<img
@click="back"
class="jiantou"
src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABMAAAAfCAYAAAAFkva3AAAA9ElEQVRIS63UIW5CQRSF4f8YXFeAKHtgBU3qWlPRlWBqcDgSdoCoq6G+qhXV3Q6quWQIkCG8ee/emTd+vsxJ5hzRcMzsHvgA7oBX1Von6AeYnYx1FdYB7YGHMFaAXiR9hTAzS5G+s2jpRUcoRXVjQ5Ab80AuzAsNYhGoF4tCRawG6sRqoRusBbrCWqELNgZ0xMxsCvxmFfkHns4ViaxKwibAZwKyiytJywiUxxwFvBR9jBderUYreDNBLWDnntWCxXGsAXuXNgoOznYEHMTSZ/SCLiwDd8BzqSluzAOGsB5wIWkTxgrgn6R5FZaBW+AReJP0fgD6yKcB+KwshwAAAABJRU5ErkJggg=="
draggable="true"
/>
<view class="input">
<img
src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABsAAAAbCAYAAACN1PRVAAAC50lEQVRIS7WWz08TURDHv9OSkiYCCZqQKI0EjVExUePJsx5MvEAEPBhveJHuwtuiCKc9ISL7FrtbPejRU/EHJ/Xgv2DUBPyR+DOFAwmYdL0ISTvm2RYLlHZp4Z02b9/MZ2fmO/OWUGKZphlqbNzXycydRHQW4P0AVgHMM+MtEc143tKMaZpqz/eijSeldLsAngBwuIKXL0Q8LIT+zC9tDZZMJoOp1OIYEW7mjT8AeJTN4mUoxN/VXiYTbGfOXgDQB+C42mPGRCTSMtrb25upBF2DWZZzJw9aJSIjnV56YJpmdos0Bxoamq8RkQ0grICxmDbsC2bb8W5mmlZ1IeKLQuivKxmq95blniPiFwBCRNwjhP6knB3lxLD3K4BWAP2God33AyqcsW23n5ldAAuet9xeTjRk2/ErzPQYwFxra8tJP7kv/hhV6/n5xfcAOphxNRbTlK+Si6R0pwFWaRSxWHRqO1EVzlqWO0jEqn5PDUPrLgNzfgA4mM3i2NCQ9qka2OSkczQQwEcAPw1DaysH+wOg3vOW67fbpAWn+bqvKIEZhlZfLo0ewA21wBKJxJ6VlexvHzDnM4AjtaRRSrcD4FkfaaxdIFI6AwCUuMoLpCB9ZsxGIi2nqpF+KrX4jggnKkq/1qaW0rkOIKGauq6OD+m6roRSus9yY8fpIUKylnEF0GXDiCofW661QSylOwHwjRxwe4M4N/05YRiaRkRcNjL1Mj92VJGj+cNzAB4GAplX4XD4m+d5oWAw3AbweWb0qRqVcOoKEdW3Am66PC3LuUSEcZ+X5whz4DTAowUwMxzDiA6UAm6CKSMlmqam5h5m6gLoDMAHcs5oAeA3RPw8nf41XZg4tu2MMWPkf6QUF6J/cCOwJKya+SilcxvArSLbe0JERTFwx2AKYtvxcWYqvrHXAXcUlm+jwu9FLvHEU0Lo4t9zNSmrZFPURuuAuwLLR3iXCEPF0e0aTEGkdCeJssFdTeNWaf4LfE9oKz70n2kAAAAASUVORK5CYII="
/>
<input
type="text"
placeholder="请输入药名/厂家"
v-model="value"
@keydown.enter="onenter"
@input="onInput"
/>
</view>
<img
src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADIAAAArCAYAAAA65tviAAAEzElEQVRoQ+2ZW6hVVRSG/7HWGGvvE6UV2c2itOimZEQkpBGEJHUio/QhwUuRYCL1kF2eJHqK8hBJZAbRTbphYJGWhT1YPtRLKUYXwpIudhHRtNp7z7HWiLnbS6bLc99rn3OgM9/2vIzxf3OsveaYYxF6afV6/ZIoipYDuBHAeQAqvc0bwb46gL0AtmRZtr5SqXxd9E1hh5klqvo4gJUA4hEUOhRXKYCnmflBImrkC4+CtCDeATB3KFZHce5WZr4lhzkK4pxbA+D+URQ2HNc9IrLKL2yC1Gq1C+M4/goAB9Z+M7PVIrIZwD4iyobjqd01ZhYBOMs5101EjwI4I7CpaZpeWq1Wv2uCOOeeANAka7VfmflqIvqxXSFlrjezc1X1MwBnBnbXiMgDOchuANPyQTO7M0mSF8sUUZatRqOxlIheCOx9KSLTc5B/AFTzQWaeSER/luW8TDtmNkFVDwU2ayLSlYNYMHBERE4q03nZtpxzhwGcmNsVEeoN5JCInFy28zLtOecOApg4DlLmrrZjazwi7exeJ9aOR6QTu9qOzVIjYmZnq+pDAKaY2WYReY6IwvOoqVVVF5rZAiL63Tn3WFdX1/dFCOecz7iXmdlfZtZTqVR29QdaGoiZiap+AeCywOEqEekJBajqYjN7Kej7hZkvJqIjeZ9zbg6ArQB8cujbYWae1l+eVxpIo9HwCeWnhV3bJSIzwj7nnBd4Q9hHRN3MvCXvU9XnzeyucI6ZrUiSZF1fUSkNpF6vXx5F0c6Co+0icl0BZBOAeYV514rIJ0FEngJwbwF2ETNv6DiId+Cc2wjg9pYzf/28SUQ+KIBcA2BbkJB+xMxzwv9S6y7kU/NTWmt3t64QPpHttZUWEW/dzOI0TW/NsmyymX1YqVT8xey4VqvVLoiiqDuKov1xHL9JRFqc5F8czjkfubqIvE5Ef/cF0drE8Vyrvw0a8bFSH60RVx84HAcZzd3vzff/IiL+lZiXSI2ZhYj82TDmmpmxqvpSaV5cTEWE8zv7TwAmB6pni8iOMUfx30E8G8DHgbafReScJkij0XiViO4IBrcx89yxFhV/CKuqzx6uz7Wa2WtJkixsgqhqt5m9W4jARmZeQUR/jIXImNkkVX0GwPxQDxHdzMybwyK2T+RmFUT7Z9FnuQeI6ACA9+I43tjbvSNcZ2anq+oyAFcAkBI24lQAMwEkBVs7RMQ/akf/ML6QPTWOYy/6tAEcb2Lm+X09dqq6wMyeBeCdd7LtT9N0ZrVa3XMMiP9Rr9enx3H8tplN7U+Bmd2XJMnaQhQmOOfWEtGSTqpviibak6bpvEql4mvWzXbMFyvfYWYnqKr/TnKPL+f3IepzEbkyH3POzSKiV8xsSoch9gFYx8w9xQz5OJDgbRA552ZEUXR+lmWTiGh9IDLzhW4fRFV9BMDDwVU1n+a/p6w1s+IFbMisURQdyrLsBxHZ2dd3mj5Bit6cc98AuCgAXU5EdwO4qjjXzPYS0WIR2T5k1cNcMGiQRqPxMhEtGsiPmW0QkZVEFJb+B1rW9vigQVT1NjN7qx+PB4loOTO/0baqYRgYNIiZkaq+X6yKtHz6u/gSIvKpzqi0QYMEb7TVAJa2Pkp+a2ZPisj6gQ7JTtMNCaTTYtqx/y/2ZXxKzaQkWgAAAABJRU5ErkJggg=="
draggable="true"
/>
</view>
<view class="zhan"></view>
<!-- 搜索框下面的排序栏 -->
<view v-if="tanchu">
<view class="end-title tablist">
  <view @click="change(0);sort('goods_id')" :class="{ btna: btnnum == 0 }">综合</view>
 <view
:class="{ btna: btnnum == 1 }"
class="shops"
@click="
change(1);
sort('sale_num');
"
>
<p>销量</p>
<view class="shopsimgs">
<img
v-if="!xiaoliangarr"
src="/static/home/shangxia_hui.png"
alt=""
/>
<img
v-if="xiaoliangarr && xiaolianglist"
src="/static/home/down_paixu.png"
alt=""
/>
<img
v-if="xiaoliangarr && !xiaolianglist"
src="/static/home/up_paixu.png"
alt=""
/>
</view>
</view>
 <view
:class="{ btna: btnnum == 2 }"
class="shops"
@click="
change(2);
sort('price');
"
>
<p>价格</p>
<view class="shopsimgs">
<img v-if="!jiagearr" src="/static/home/shangxia_hui.png" alt="" />
<img
v-if="jiagearr && jiagelist"
src="/static/home/down_paixu.png"
alt=""
/>
<img
v-if="jiagearr && !jiagelist"
src="/static/home/up_paixu.png"
alt=""
/>
</view>
</view>
</view>
<view class="end-cont" :class="{ dis: btnnum == 0 }">
<shoplist :shop="list" class="comm"></shoplist>
</view>
<view class="end-cont" :class="{ dis: btnnum == 1 }">
<shoplist :shop="list" class="comm"></shoplist>
</view>
<view class="end-cont" :class="{ dis: btnnum == 2 }">
<shoplist :shop="list" class="comm"></shoplist>
</view>
</view>
<!-- 搜索不到内容给的提示 -->
<view class="sousuo" v-if="kon">
<img src="/static/home/nopic.png" draggable="true" />
<p>暂无数据</p>
</view>
</view>
</template>
<script>
import shoplist from "../../components/shoplist.vue";
export default {
data() {
return {
//判断搜索内容是否为空
kong: [],
//判断搜索内容标志位
kon: false,
value: "",
list: [],
//标准位,取消重复发生ajax请求
flag: false,
//保存明星爆款传来的值
hots: [],
//保存九宫格传来的id
newlist: [],
//保存轮播图传来的id
bann: [],
//tab栏切换
btnnum: 0,
//判断tab切换是否出现
tanchu: false,
//判断是否点击了销量
xiaoliangarr: false,
//判断是否点击了价格
jiagearr: false,
//销量
xiaolianglist: false,
//价格
jiagelist: false,
//排序
order: false,
sortType: null,
};
},
onLoad(el) {
this.hots = el.key;
this.newlist = el.newlist;
this.bann = el.banner;
},
created() {
//判断明星爆款是否传来了值
if (this.hots != null || this.newlist != null || this.bann != null) {
this.getsearch();
}
},
methods: {
//搜索接口
async getsearch() {
let res = await this.$http.index.search({
//根据关键字搜索
search_words: this.value || this.hots,
//根据id搜索
activity_id: this.newlist || this.bann,
});
//这里写true的原因就是首页点进来进入搜索页面tab栏切换也要打开
this.tanchu = true;
//price 是价格-----------------sale_num 是销售数量
console.log(res.data.data);
this.list = res.data.data;
//判断搜索内容是否为空
if (this.list.length == 0) {
this.kon = !this.kon;
}
},
//键盘确认键按下事件
onenter() {
if (this.value.length != 0) {
if (this.flag == true) {
this.getsearch();
this.flag = false;
this.tanchu = true;
}
} else {
uni.showToast({
title: "关键词不能为空",
icon: "none",
duration: 2000,
});
//当输入框内的值为0,清空搜索内容
this.list = "";
this.tanchu = false;
}
},
//输入框事件
onInput() {
this.flag = true;
},
//点击返回上一层
back() {
uni.navigateBack();
},
//tab栏切换事件 0-综合 1-销量 2-价格
change(e) {
//判断当前点击位置是否是综合
if (e == 0) {
}
//当前点击的位置等于销量
if (e == 1) {
this.xiaoliangarr = true;
this.jiagearr = false;
this.xiaolianglist = !this.xiaolianglist;
}
//当前点击的位置等于价格
if (e == 2) {
this.xiaoliangarr = false;
this.jiagearr = true;
this.jiagelist = !this.jiagelist;
}
this.btnnum = e;
console.log("当前点击的下标", e);
},
//实现排序
sort(type) {
this.order = !this.order; // 更改为 升序或降序
this.sortType = type;
this.list.sort(this.compare(type));
},
// 排序方法
compare(attr) {
let that = this;
return function (a, b) {
let val1 = a[attr];
let val2 = b[attr];
if (that.order) {
return val1 - val2;
} else {
return val2 - val1;
}
};
},
},
components: {
shoplist,
},
computed: {},
};
</script>
<style lang="less" scoped>
@import "../../common/less/page/search.less";
/deep/.shoplist {
margin-top: 20rpx;
}
/deep/.shoplist:first-child {
margin-top: 100rpx;
}
</style>