穴位检索

This commit is contained in:
徐哼唧L
2024-01-17 17:15:05 +08:00
parent c86ccf46c4
commit 31ff846431
10 changed files with 588 additions and 420 deletions

View File

@@ -12,8 +12,8 @@
"src" : "图片路径"
}
],
"versionName" : "1.2.26",
"versionCode" : 1226,
"versionName" : "1.2.29",
"versionCode" : 1229,
"app-plus" : {
"compatible" : {
"ignoreVersion" : true

View File

@@ -505,7 +505,7 @@
{
"path": "pages/prescript/prescript",
"style": {
"navigationBarTitleText": "方检索",
"navigationBarTitleText": "方检索",
"enablePullDownRefresh": false
}
},

View File

@@ -7,9 +7,8 @@
@cancel="cancel" @clear="clear">
</uni-search-bar> -->
<view class="search_box" v-if="oneCateList.length > 0">
<u-search :disabled="userMes.pointPower == 0 && oneCateList[curOneCateIndex].id == 3 || userMes
.pointPower == 0 && oneCateList[curOneCateIndex].id == 6 ? true : false" @click="checkDisable" placeholder="请输入穴位名" @focus="focus" @clear="clear"
v-model="searchValue" @input="input" @blur="blur" @search="search"></u-search>
<u-search placeholder="请输入穴位名" @focus="focus" @clear="clear" v-model="searchValue" @input="input"
@blur="blur" @search="search"></u-search>
</view>
<view class="searchList" v-show="showSearchList">
<view class="itemBox" v-if="searchList.length > 0">
@@ -72,7 +71,7 @@
oneCateList: [], // 一级分类标题1
twoCateList: [], // 二级分类标题
titleList: [], // 穴位标题
curOneCateIndex: 0, // 当前选中的一级分类
curOneCateIndex: 1, // 当前选中的一级分类
curTwoCateIndex: 0, // 当前选中的二级分类
searchList: [], // 搜索结果数组
showSearchList: false,
@@ -94,29 +93,7 @@
...mapState(['userInfo']),
},
methods: {
// 检查是有权限使用搜索功能
checkDisable() {
console.log('点击了')
if (this.userMes.pointPower == 0 && this.oneCateList[this.curOneCateIndex].id == 3 || this.userMes
.pointPower == 0 && this.oneCateList[this.curOneCateIndex].id == 6) { // 等于0 就是没有权限
this.showNoRights()
}
},
// 显示无权限弹窗
showNoRights() {
let that = this
uni.showModal({
content: "购买 手模 或 脚模 后方可使用此功能",
confirmText: '好的',
showCancel: false,
success: function(res) {
if (res.confirm) {
// console.log('用户点击确定');
that.clear()
}
}
})
},
// 获取用户详情
getUserInfo() {
// 用户详情
@@ -133,15 +110,9 @@
// 穴位详情
gotoDetail(item) {
if (this.userMes.pointPower == 0 && this.oneCateList[this.curOneCateIndex].id == 3 || this.userMes
.pointPower == 0 && this.oneCateList[this.curOneCateIndex].id == 6) { // 等于0 就是没有权限
this.showNoRights()
} else {
// 等于1 就是有权限
uni.navigateTo({
url: "./acupointDetail?id=" + item.id
})
}
},
// 获取穴位名称
@@ -174,10 +145,11 @@
this.getTitles(id)
},
setOneCateIndex(item, index) {
if(this.userMes.tgdzPower == 0){
console.log(item)
if (item.id == 3 && this.userMes.pointPower == 0) {
let that = this
uni.showModal({
content: "购买 针灸六经法要上册和下册 后方可使用此功能",
content: '购买 手模 或 脚模 后方可使用此功能',
confirmText: '好的',
showCancel: false,
success: function(res) {
@@ -188,7 +160,21 @@
})
return
}
if(item.title == "时辰取穴"){
if (item.id == 6 && this.userMes.tgdzPower == 0) {
let that = this
uni.showModal({
content: '购买 针灸六经法要上册和下册 后方可使用此功能',
confirmText: '好的',
showCancel: false,
success: function(res) {
if (res.confirm) {
// console.log('用户点击确定');
}
}
})
return
}
if (item.title == "时辰取穴") {
uni.navigateTo({
url: "../timeAcupoint/timeAcupoint"
})
@@ -244,7 +230,7 @@
console.log(res, '脉穴分类获取成功')
if (res.code == 0 && res.category.length > 0) {
this.oneCateList = res.category
this.getTowCateList(this.oneCateList[0].id)
this.getTowCateList(this.oneCateList[1].id)
} else {
this.oneCateList = []
}

View File

@@ -33,7 +33,7 @@
<view>
<view class="flexbox yigoumaiList">
<view class="info">
<view class="videoBox demo-layout bg-purple">
<view class="videoBox demo-layout bg-purple" @click="goDetail(item)">
<image v-if="item.images != '' && item.images != null" :src="item.images"
mode="scaleToFill"></image>
<image v-else src="../../static/icon/wufeng.jpg" mode="scaleToFill"></image>
@@ -41,7 +41,7 @@
</view>
<view class="btns">
<view class="text">
<view class="bookName">{{item.name}}</view>
<view class="bookName" @click="goDetail(item)">{{item.name}}</view>
<!-- <view class="author">
作者<text v-if="item.authorName == null || item.authorName == ''">暂无</text>
<text v-else>{{item.authorName}}</text>
@@ -286,6 +286,12 @@
url: "../listen/listen?bookid=" + item.id // 前台播放版本
});
},
// 跳转详情页
goDetail(item) {
uni.navigateTo({
url: '../eBook/bookContent?Id=' + item.id
});
},
// 点不过去的
noOp(){
uni.showToast({

View File

@@ -10,7 +10,7 @@
<view style="font-weight: bold;margin-bottom: 30rpx;">
{{bookMessage.name}}
</view>
<view v-if="bookMessage.bookType==0" style="color: #9b9b9b;font-size: 28rpx;margin:20rpx 0 0 0;max-width: 400rpx;line-height: 38rpx;">
<view v-if="bookMessage.bookType==0&&bookMessage.author" style="color: #9b9b9b;font-size: 28rpx;margin:20rpx 0 0 0;max-width: 400rpx;line-height: 38rpx;">
<p @click="onAuCHJump(bookMessage.author.id,1)" style="margin-bottom: 20rpx;">
{{bookMessage.author.authorName}} [] >
</p>
@@ -37,7 +37,7 @@
<uni-tag @click="onPageJump('../talkBook/talkBookML?bookid='+ bookId)" v-if="bookMessage.teachIn == 1" class="tag" :inverted="true"
text="讲书" type="error"></uni-tag>
</view> -->
<view class="buy" v-if="!bookMessage.isBuy&&bookMessage.bookType==0">
<view class="buy" v-if="!bookMessage.isBuy&&bookMessage.bookType==0&&bookMessage.productId">
<view class="btn" @click="goBuy">
立即购买
</view>

View File

@@ -191,7 +191,6 @@
scroll: function(e) {},
// 获取五运六气
getYun(date) {
console.log(this.data + '1111111111111111111')
let that = this
$http.request({
url: "book/point/WYLQForYear",

View File

@@ -173,7 +173,8 @@
console.log('this.curTwoCateIndex',this.curTwoCateIndex)
if(this.curOneCateIndex==0){
uni.navigateTo({
url: '../bookShop/commodityDetail?id=' + item.id
// url: '../bookShop/commodityDetail?id=' + item.id
url: '../eBook/bookContent?Id=' + item.id
})
return
}

View File

@@ -13,12 +13,12 @@
<view class="fiveIcon flexbox" style="justify-content: space-around;">
<div class="item item1" @click="onPageJump('../acupoint/acupoint')">
<image src="../../static/icon/five1.png" mode="aspectFit" ></image>
<image src="../../static/icon/five1.png" mode="aspectFit"></image>
<text>经穴检索</text>
</div>
<div class="item item1" @click="onPageJump('../prescript/prescript')">
<image src="../../static/icon/five2.png" mode="aspectFit"></image>
<text>检索</text>
<text>检索</text>
</div>
<div class="item item1" @click="onPageJump('../classic/classic')">
<image src="../../static/icon/five7.png" mode="aspectFit"></image>
@@ -31,25 +31,17 @@
</div>
</div>
<div class="item item1" @click="onPageJump('../peanut/searchFor')">
<!-- <div class="item item1" @click="onPageJump('../peanut/searchFor')">
<image src="../../static/icon/five3.png" mode="aspectFit"></image>
<text>书名检索</text>
</div>
</div> -->
<div class="item item1" @click="onPageJump('../medicaldes/medicaldes')">
<image src="../../static/icon/five5.png" mode="aspectFit"></image>
<text>吴门医述</text>
</div>
</view>
<!-- <view class="search_box flexbox" @click="onPageJump('../peanut/searchFor')">
<view class="search">
<text class="icon_search"></text>
<text class="prompt">请输入书名</text>
</view>
</view> -->
<!-- <view class="searBtn flexbox">
<text>搜索</text>
</view> -->
</view>
<!-- <view class="home_lunbo">
-
@@ -226,26 +218,44 @@
<!-- <i @click="onShopMore('Hot')">查看更多 ></i> -->
<!-- <i @click="onPageJump('../bookShop/classify')">查看更多 ></i> -->
<!-- </view> -->
<view class="search_box flexbox" @click="onPageJump('../peanut/searchFor')">
<view class="search">
<text class="icon_search"></text>
<text class="prompt">请输入书名</text>
</view>
<view class="searBtn">
<text>书名检索</text>
</view>
</view>
<scroll-view class="scroll-view_H " scroll-x="true" scroll-left="0">
<view class="ProTabs">
<text v-for="item in tagList" :key="item.splId" :class="[tabsid == item.splId ? 'cur' :'']" @click="tabsChange(item)">{{item.labelName}}</text>
<text v-for="item in tagList" :key="item.splId" :class="[tabsid == item.splId ? 'cur' :'']"
@click="tabsChange(item)">{{item.labelName}}</text>
</view>
</scroll-view>
<scroll-view class="scroll-view_H " scroll-x="true" scroll-left="0" v-if="tabsid == 15">
<view class="ProTabs">
<text v-for="item in yxtaglist" :key="item.splId" :class="[wztabsid == item.splId ? 'cur' :'']" @click="wztabsChange(item)">{{item.labelName}}</text>
<text v-for="item in yxtaglist" :key="item.splId" :class="[wztabsid == item.splId ? 'cur' :'']"
@click="wztabsChange(item)">{{item.labelName}}</text>
</view>
</scroll-view>
<scroll-view class="scroll-view_H " scroll-x="true" scroll-left="0" v-if="tabsid == 16">
<view class="wzProTabs">
<text v-for="item in wztaglist" :key="item.splId" :class="[wztabsid == item.splId ? 'cur' :'']" @click="wztabsChange(item)">{{item.labelName}}</text>
<text v-for="item in wztaglist" :key="item.splId" :class="[wztabsid == item.splId ? 'cur' :'']"
@click="wztabsChange(item)">{{item.labelName}}</text>
</view>
</scroll-view>
<!-- 商品展示 -->
<view class="goods">
<!-- 精选 -->
<view class="" >
<view v-if="tjProList.length > 0" >
<view class="">
<view v-if="tjProList.length > 0">
<view class="flexbox" style="flex-wrap: wrap;">
<view class="goodsItem" v-for="(item,index) in tjProList" :key="index"
@click="goDetail(item.productId)">
@@ -255,7 +265,8 @@
{{item.productName}}
</view>
<view class="goodsPrice">
<span class="price" v-if="item.activityPrice && item.activityPrice > 0">{{item.activityPrice}}</span>
<span class="price"
v-if="item.activityPrice && item.activityPrice > 0">{{item.activityPrice}}</span>
<span class="price" v-else>{{item.price}}</span>
<span class="Salesnum">已售{{item.sumSales}} </span>
</view>
@@ -265,7 +276,8 @@
<view class="">
<view v-if="status==0" style="text-align: center;">
<u-loading-icon style="display: inline-block;"></u-loading-icon>
<font style='vertical-align: super;margin-left: 10px;font-size: 26rpx;color: #909399;'>努力加载中</font>
<font style='vertical-align: super;margin-left: 10px;font-size: 26rpx;color: #909399;'>努力加载中
</font>
</view>
<view v-if="status==1">
<u-divider text="全部加载完成"></u-divider>
@@ -295,23 +307,24 @@
import repciptData from '@/static/json/repcipt.json'
import $http from '@/config/requestConfig.js';
import {
mapState,mapMutations
mapState,
mapMutations
} from 'vuex';
export default {
data() {
return {
myList:[],
showEbook:false, // 显示电子书相关
myList: [],
showEbook: false, // 显示电子书相关
transaction: { // 成功回调
},
tabsNumber : null,
scrollLeft:0,
maxTimes:1, // 轮询最大次数
ComplateRequestInterval:null, // 轮询定时器
checking:false, // 正在检测
ComplateRequestArr:[],
iapChannel:null,
tabsNumber: null,
scrollLeft: 0,
maxTimes: 1, // 轮询最大次数
ComplateRequestInterval: null, // 轮询定时器
checking: false, // 正在检测
ComplateRequestArr: [],
iapChannel: null,
scrollTop: 0,
list3: [
// '../../static/icon/home_ban_1.jpg',
@@ -323,37 +336,59 @@
limiTist: [],
jingList: [],
seckillList: [],
offSaleList:[], // 折扣列表
offSaleList: [], // 折扣列表
goodsList: [],
bgiStyle: {
background: '#fff'
},
newBookList:[],
newBookList: [],
iconStyle: {
fontSize: '40rpx',
fontWeight: 'bold',
color: '#54a966',
},
tagList:[] ,// 推荐标签列表
wztaglist:[
{splId:"-1",labelName:"全部"},
{splId:"5",labelName:"文学"},
{splId:"6",labelName:"哲学"},
tagList: [], // 推荐标签列表
wztaglist: [{
splId: "-1",
labelName: "全部"
},
{
splId: "5",
labelName: "文学"
},
{
splId: "6",
labelName: "哲学"
},
],
yxtaglist:[
{splId:"0",labelName:"全部"},
{splId:"2",labelName:"中医经典"},
{splId:"1",labelName:"中医基础"},
{splId:"3",labelName:"各家学说"},
{splId:"4",labelName:"中医临床"},
yxtaglist: [{
splId: "0",
labelName: "全部"
},
{
splId: "2",
labelName: "中医经典"
},
{
splId: "1",
labelName: "中医基础"
},
{
splId: "3",
labelName: "各家学说"
},
{
splId: "4",
labelName: "中医临床"
},
],
wztabsid: '',
pageSize:10,
page:1,
totalPage:0,
tjProList:[],
status : 3,
userMsg:{}, // 用户信息
pageSize: 10,
page: 1,
totalPage: 0,
tjProList: [],
status: 3,
userMsg: {}, // 用户信息
};
},
onPageScroll(e) {
@@ -400,11 +435,11 @@
onReachBottom() {
this.loadingNow = true
console.log('到底了')
if(this.page+1 <= this.totalPage){
if (this.page + 1 <= this.totalPage) {
this.status = 0
this.page++
this.getJtData()
}else{
} else {
this.status = 1
}
@@ -426,7 +461,7 @@
computed: {
...mapState(['userInfo']),
},
components:{
components: {
musicPlay
},
//方法
@@ -450,41 +485,41 @@
this.$http
.post('book/label/getLabels')
.then(res => {
console.log(res,'标签列表')
if(res.code == 0 && res.result.labels.length > 0){
console.log(res, '标签列表')
if (res.code == 0 && res.result.labels.length > 0) {
this.tagList = res.result.labels
this.tabsid = this.tagList[0].splId
this.getJtData()
}
}).catch(e => {
console.log(e,'e')
console.log(e, 'e')
});
},
tabsChange(item){
tabsChange(item) {
this.tjProList = []
this.tabsid = item.splId
if(this.tabsid == 15){
if (this.tabsid == 15) {
this.wztabsid = '0'
}else if(this.tabsid == 16){
} else if (this.tabsid == 16) {
this.wztabsid = '-1'
}else{
} else {
this.wztabsid = ''
}
this.page = 1
// 获取推荐数据
this.getJtData()
},
wztabsChange(item){
wztabsChange(item) {
this.tjProList = []
this.wztabsid = item.splId
this.page = 1
// 获取推荐数据
this.getJtData()
},
getJtData(){
getJtData() {
this.$http
// .post('book/label/list',{
.post('book/label/getProductsByLabel',{
.post('book/label/getProductsByLabel', {
'splId': this.tabsid,
'limit': this.pageSize,
'page': this.page,
@@ -492,50 +527,50 @@
})
.then(res => {
if(res.code == 0 && res.page.records.length > 0){
if (res.code == 0 && res.page.records.length > 0) {
this.tjProList = this.tjProList.concat(res.page.records)
this.totalPage = res.page.pages
this.status = 3
console.log(this.tjProList,'按标签检索结果')
}else{
console.log(this.tjProList, '按标签检索结果')
} else {
this.tjProList = []
this.totalPage = 0
}
}).catch(e => {
console.log(e,'标签检索报错')
console.log(e, '标签检索报错')
});
},
// 获取折扣图书
getOffSale(){
getOffSale() {
this.$http
.post('book/shopproduct/listactivityprice?limit=10&page=1')
.then(res => {
console.log(res,'折扣')
if(res.code == 0 && res.page.list.length > 0){
console.log(res, '折扣')
if (res.code == 0 && res.page.list.length > 0) {
this.offSaleList = res.page.list
this.tabsNumber = 0
}
}).catch(e => {
console.log(e,'e')
console.log(e, 'e')
});
},
// 新书上市
getNewBook(){
getNewBook() {
this.$http
.post('book/shopproduct/getNewBook',{
.post('book/shopproduct/getNewBook', {
'limit': 4,
'page':1
'page': 1
})
.then(res => {
console.log(res,'xinshu')
console.log(res, 'xinshu')
this.newBookList = res.page.list
}).catch(e => {
console.log(e,'新书上市报错')
console.log(e, '新书上市报错')
});
},
// 检测未完成订单
requestIapOrder(){
requestIapOrder() {
console.log('检测支付环境...')
plus.payment.getChannels((channels) => {
console.log(channels, 'channels')
@@ -545,7 +580,7 @@
if (channels[i].id === 'appleiap') {
this.iapChannel = channels[i]
// console.log(this.userInfo.restoreFlag,'this.userInfo.restoreFlag')
if(this.userInfo.restoreFlag){ // 如果存在异常回调订单
if (this.userInfo.restoreFlag) { // 如果存在异常回调订单
this.restoreComplateRequest()
}
}
@@ -553,27 +588,27 @@
})
},
// 查询未关闭订单
restoreComplateRequest(){
restoreComplateRequest() {
let that = this
console.log('检测未完成订单')
console.log(this.iapChannel,'this.iapChannel')
console.log(this.iapChannel, 'this.iapChannel')
this.iapChannel.restoreComplateRequest({
manualFinishTransaction: true
}, function(results) {
if(!that.checking){
if (!that.checking) {
that.checking = true
// console.log(that.checking)
// results 格式为数组存放恢复的IAP商品交易信息对象 IAPTransaction通用需将返回的支付凭证传给后端进行二次认证
that.ComplateRequestArr = results
console.log(that.ComplateRequestArr,'未完成订单数组')
if(results && results.length>0){
console.log(that.ComplateRequestArr, '未完成订单数组')
if (results && results.length > 0) {
results.map((item,index)=>{
results.map((item, index) => {
// "0"为正在支付;"1"为支付成功;"2"为支付失败;"3"为支付已恢复。
if(item.transactionState == '1'){
if (item.transactionState == '1') {
// 已经支付,但是没有走逻辑的内购订单
that.iapCheck(item,index)
}else{
that.iapCheck(item, index)
} else {
// 其他状态的内购订单
that.finishTransaction(item)
@@ -586,12 +621,14 @@
},
// 关闭交易订单
finishTransaction(trans,index){
finishTransaction(trans, index) {
this.iapChannel.finishTransaction(trans, (success) => {
console.log('关闭订单成功',index);
console.log('关闭订单成功', index);
if(index == this.ComplateRequestArr.length-1){ // 最后一个支付订单
this.setUserInfo({restoreFlag:false});
if (index == this.ComplateRequestArr.length - 1) { // 最后一个支付订单
this.setUserInfo({
restoreFlag: false
});
// console.log(this.userInfo.restoreFlag,'this.ComplateRequestArr.length+++')
}
@@ -599,7 +636,7 @@
console.log('关闭订单失败');
});
},
iapCheck(result,index) {
iapCheck(result, index) {
const that = this
console.log('进入后台验证')
let data = {
@@ -607,10 +644,10 @@
customerOid: that.userInfo.id,
productId: result.payment.productid, // 产品id
orderId: result.payment.username, // 系统订单号
receiptData: result.transactionReceipt ,// 苹果返回收据
loadAnimate:'none', // 请求加载动画
receiptData: result.transactionReceipt, // 苹果返回收据
loadAnimate: 'none', // 请求加载动画
}
console.log(data,'data')
console.log(data, 'data')
$http.request({
url: "/Ipa/veri",
method: "POST", // POST、GET、PUT、DELETE具体说明查看官方文档
@@ -621,51 +658,51 @@
}).then(res => {
console.log(JSON.stringify(res))
console.log(res.code)
if(res.code == 0){
if (res.code == 0) {
// uni.hideLoading()
console.log('充值订单已处理,请留意账户金额变动....')
// 服务器验证票据有效后在客户端关闭订单
that.finishTransaction(result,index)
}else if(res.code == 200){ // 重复验证订单
that.finishTransaction(result, index)
} else if (res.code == 200) { // 重复验证订单
console.log('重复验证....')
that.finishTransaction(result,index)
that.finishTransaction(result, index)
}
}).catch(e => {
console.log('支付验证失败,进入轮询程序...')
that.getIapPayResult(result,index)
that.getIapPayResult(result, index)
})
console.log('--------------')
},
// 轮询验证支付结果
getIapPayResult(result,index){
getIapPayResult(result, index) {
// let interval = null
this.ComplateRequestInterval = setTimeout(() => {
if(this.maxTimes <= 3){
this.iapCheck(result,index)
console.log('执行1', this.maxTimes,this.ComplateRequestInterval)
if (this.maxTimes <= 3) {
this.iapCheck(result, index)
console.log('执行1', this.maxTimes, this.ComplateRequestInterval)
this.maxTimes += 1
}else{
} else {
this.maxTimes = 0
console.log('停止轮询', this.maxTimes,this.ComplateRequestInterval, this.maxTimes)
console.log('停止轮询', this.maxTimes, this.ComplateRequestInterval, this.maxTimes)
this.checking = false
this.saveErrorIapOrder(result,index)
this.saveErrorIapOrder(result, index)
clearTimeout(this.ComplateRequestInterval)
}
},10000)
}, 10000)
},
// 轮询失败接口
saveErrorIapOrder(result,index){
saveErrorIapOrder(result, index) {
console.log('提交到充值问题单里面...')
let data = {
transactionId : result.transactionIdentifier,
transactionId: result.transactionIdentifier,
failureflag: 1,
orderId:result.payment.username,
receiptData:result.transactionReceipt,
productId:result.payment.productid,
customerOid:this.userInfo.id
orderId: result.payment.username,
receiptData: result.transactionReceipt,
productId: result.payment.productid,
customerOid: this.userInfo.id
}
$http.request({
url: "Ipa/failure",
@@ -676,14 +713,14 @@
},
}).then(res => {
console.log(JSON.stringify(res))
if(res.code == 200){
if (res.code == 200) {
console.log('提交成功,关闭订单')
this.finishTransaction(result,index)
this.finishTransaction(result, index)
}
}).catch(e => {
console.log(e)
if(e.statusCode == 0){ // 重复提交,直接关闭订单
this.finishTransaction(result,index)
if (e.statusCode == 0) { // 重复提交,直接关闭订单
this.finishTransaction(result, index)
}
})
},
@@ -718,15 +755,14 @@
// 跳转
onPageJump(url) {
console.log(this.userMsg,'this.userMsg')
if(url == '../luck/luck' && this.userMsg.wylqPower == 0){
console.log(this.userMsg, 'this.userMsg')
if (url == '../luck/luck' && this.userMsg.wylqPower == 0) {
uni.showModal({
content: "购买 中医时间医学·火病原理 后方可使用此功能",
confirmText: '好的',
showCancel: false,
success: function(res) {
if (res.confirm) {
}
if (res.confirm) {}
}
})
return
@@ -790,55 +826,137 @@
</script>
<style lang="scss" scoped>
@import '@/style/mixin.scss';
.fiveIcon{justify-content: space-between; text-align: center;
text{
font-size: 28rpx; color: #11a669;
.fiveIcon {
justify-content: space-between;
text-align: center;
text {
font-size: 28rpx;
color: #11a669;
}
image{width: 56rpx; height: 56rpx; margin: 0 auto; }
image {
width: 56rpx;
height: 56rpx;
margin: 0 auto;
}
.hehan{width: 80%; margin: 10rpx auto;}
.zhekou{
.goodsName{margin-bottom: 20rpx;}
}
.activityPrice{font-size: 60rpx;}
.priceAndnum{ font-size: 24rpx !important;
.price{color: #9b9b9b !important; font-size: inherit; font-weight: normal !important; display: block;}
.hehan {
width: 80%;
margin: 10rpx auto;
}
.ProTabs{
.zhekou {
.goodsName {
margin-bottom: 20rpx;
}
}
.activityPrice {
font-size: 60rpx;
}
.priceAndnum {
font-size: 24rpx !important;
.price {
color: #9b9b9b !important;
font-size: inherit;
font-weight: normal !important;
display: block;
}
}
.ProTabs {
// margin: 20rpx 0;
padding:0 20rpx;
text{padding: 8rpx 14rpx; font-size: 32rpx; display: inline-block; border-radius: 10rpx; overflow: hidden;
padding: 0 20rpx;
text {
padding: 8rpx 14rpx;
font-size: 32rpx;
display: inline-block;
border-radius: 10rpx;
overflow: hidden;
// background-color: #eee;
color: #55aa7f; margin-right: 10rpx;}
text.cur{background-color:#55aa7f ; color: #fff;}
color: #55aa7f;
margin-right: 10rpx;
}
.wzProTabs{
text.cur {
background-color: #55aa7f;
color: #fff;
}
}
.wzProTabs {
display: flex;
justify-content: center;
padding:0 20rpx;
text{padding: 8rpx 14rpx; font-size: 32rpx; display: inline-block; border-radius: 10rpx; overflow: hidden;
padding: 0 20rpx;
text {
padding: 8rpx 14rpx;
font-size: 32rpx;
display: inline-block;
border-radius: 10rpx;
overflow: hidden;
// background-color: #eee;
color: #55aa7f; margin-right: 10rpx;}
text.cur{background-color:#55aa7f ; color: #fff;}
color: #55aa7f;
margin-right: 10rpx;
}
text.cur {
background-color: #55aa7f;
color: #fff;
}
}
// .newBook{margin-top: 10rpx;}
.scroll-view_H{background-color: #fff;white-space: nowrap;
padding:10rpx ; margin-top: 12rpx;}
.scroll-view_H{
.item { padding: 10rpx; overflow: hidden; display: inline-block; padding-bottom: 0;
width: 180rpx !important; margin-right: 20rpx; border-radius: 10rpx;
.videoBox{
image{display: block; width:150rpx;
.scroll-view_H {
background-color: #fff;
white-space: nowrap;
padding: 10rpx;
margin-top: 12rpx;
}
.scroll-view_H {
.item {
padding: 10rpx;
overflow: hidden;
display: inline-block;
padding-bottom: 0;
width: 180rpx !important;
margin-right: 20rpx;
border-radius: 10rpx;
.videoBox {
image {
display: block;
width: 150rpx;
height: 170rpx;
}
}
.bookName{display: block; margin-top: 6rpx; color: #666; font-size: 24rpx; white-space: nowrap;
overflow-x: hidden; overflow: hidden;
text-overflow: ellipsis;}
.bookName {
display: block;
margin-top: 6rpx;
color: #666;
font-size: 24rpx;
white-space: nowrap;
overflow-x: hidden;
overflow: hidden;
text-overflow: ellipsis;
}
}
// .item.active{margin-right: 20rpx; border: 1px solid #55aa00; border-radius: 10rpx;}
}
.flexbox{display: flex;}
.flexbox {
display: flex;
}
.head_line {
padding-top: 8rpx;
margin: 12rpx 0 0 0;
@@ -874,32 +992,57 @@
background-size: cover;
padding: 20rpx;
position: relative;
// margin-bottom:60rpx;
// height: 400rpx; margin-bottom: 130rpx;
.icon_hua_1 {
// margin: 0 auto;
width: 100%; text-align: center;
width: 100%;
text-align: center;
height: 80rpx;
image {
width: 150rpx;
height: 80rpx;
image{width: 150rpx; height: 80rpx;}
}
.icon_hua{width: 100%; text-align: center; display: block;
image{width: 150rpx; height: 150rpx; margin: 0 auto;}
}
.search_box { margin: 0 auto; margin-top: 20rpx; align-items: center;
width: calc(100% - 30rpx); margin-top: 0;
.icon_hua {
width: 100%;
text-align: center;
display: block;
image {
width: 150rpx;
height: 150rpx;
margin: 0 auto;
}
}
}
.search_box {
margin: 20rpx auto 10rpx auto;
align-items: center;
width: calc(100% - 30rpx);
margin-bottom: 20rpx;
.search{height: 56upx;
.search {
height: 56upx;
display: flex;
width: 86%; margin: 0 auto;
width: 100%;
margin: 0 auto;
align-items: center;
padding: 0upx 40upx;
background-color: #fff;
border-radius: 20upx;
box-shadow: 0 0px 10px 1px #54a96633;
}
.prompt {
color: #838383; font-size: 24rpx;
color: #838383;
font-size: 24rpx;
}
@@ -908,16 +1051,29 @@
background-position: center center;
background-repeat: no-repeat;
background-size: cover;
width:36upx;
width: 36upx;
height: 36upx;
margin-right: 20upx;
}
.searBtn {
width: 180rpx;
line-height: 56rpx;
text-align: center;
align-items: center;
font-size: 28rpx;
color: #fff;
margin-left: -80rpx;
background-color: #11a669;
border-top-right-radius: 20upx;
border-bottom-right-radius: 20upx;
}
.searBtn{
width: 80rpx; align-items: center;
font-size: 30rpx; color: #fff;
}
}
.home_nar {
background-color: #fff;
padding: 40rpx 10rpx;
@@ -925,6 +1081,7 @@
display: flex;
color: #333;
margin-bottom: 0;
// .dianzishu{ margin-right:10rpx;
// background-color:#f8d6f4 ; border: 2px solid #edcce9;
// }
@@ -935,19 +1092,28 @@
// width: 23%;
width: 31%;
text-align: center;
border-radius: 20rpx ;
border-radius: 20rpx;
// line-height: 110upx;
//display: flex;
align-content: center;
justify-content: center;
image {
width:120rpx;
height:120rpx;
width: 120rpx;
height: 120rpx;
display: block;
margin: 0 auto;
// margin: 0 20rpx;
}
text{ display:block; text-align: center; margin-top:4rpx; font-size: 36rpx; color: #000; font-weight:blod;}
text {
display: block;
text-align: center;
margin-top: 4rpx;
font-size: 36rpx;
color: #000;
font-weight: blod;
}
}
@@ -1211,13 +1377,15 @@
.goods {
width: 100%;
margin:0 0 50rpx 0; background-color: #fff;
margin: 0 0 50rpx 0;
background-color: #fff;
.goodsItem {
display: inline-block;
width: 46%;
border-radius: 20rpx;
padding: 25rpx; padding-bottom: 5rpx;
padding: 25rpx;
padding-bottom: 5rpx;
margin: 0 20rpx 20rpx 20rpx;
background-color: #fff;
border: 1px solid #eee;
@@ -1239,12 +1407,17 @@
.goodsPrice {
font-size: 28rpx;
margin: 5rpx 0 0 3rpx;
display: flex; justify-content: space-between;
.price{
display: flex;
justify-content: space-between;
.price {
font-weight: bold;
color: #ff0000;
}
.Salesnum{color: #9b9b9b;}
.Salesnum {
color: #9b9b9b;
}
}
}
}

View File

@@ -2,7 +2,7 @@
<view class="container">
<!-- 公共组件-每个页面必须引入 -->
<public-module></public-module>
<z-nav-bar title="方检索"></z-nav-bar>
<z-nav-bar title="方检索"></z-nav-bar>
<!-- <uni-search-bar @confirm="search" :focus="true" v-model="searchValue" @blur="blur" @focus="focus" @input="input"
@cancel="cancel" @clear="clear">
</uni-search-bar> -->
@@ -181,8 +181,6 @@
uni.navigateTo({
url: "./prescriptDetail?id=" + item.prescriptId
})
},
// 获取方剂名称
getTitles(id) {
@@ -242,11 +240,15 @@
this.searchValue = ''
this.searchList = []
this.showSearchList = false
if (index != 2) {
this.getTowCateList(id)
} else {
if (index == 2) {
this.getJFList(id)
} else if (index == 3) {
this.twoCateList = []
this.getTitles(id)
} else{
this.getTowCateList(id)
}
},
getTowCateList(id) {
$http.request({
@@ -315,6 +317,7 @@
console.log(e)
})
},
getCateList(id) {
id ? '' : id = 0
this.twoCateList = []

View File

@@ -13,7 +13,7 @@
<view class="per_list">
<text class="biaoti">邮箱</text>
<text class="neirong">{{userMsage.email}}</text>
<text class="marPer" v-if="userMsage.email!=''" @click="emailShow = true;OpenClear()"
<text class="marPer" v-if="userMsage.email==''" @click="emailShow = true;OpenClear()"
style="background-color: #ed901d;">点击绑定</text>
</view>
<view class="per_list per_list_arrow" @click="avatarShow = true">