修改im接口报错问题

master
2023-02-08 12:03:48 +08:00
commit db4dfd3edc
26 changed files with 215 additions and 259 deletions

2
.gitignore vendored
View File

@ -9,3 +9,5 @@ node_modules/
.vscode/
/unpackage/
.hbuilderx/launch.json
.project.config.json
.project.private.config.json

View File

@ -179,9 +179,10 @@
},
//
getPromotion(item) {
if (item.promotionMap) {
if (item.content ? item.content.promotionMap : item.promotionMap) {
const fieldList = item.content ? item.content.promotionMap : item.promotionMap
let array = [];
Object.keys(item.promotionMap).forEach((child) => {
Object.keys(fieldList).forEach((child) => {
if (!array.includes(child.split("-")[0])) {
array.push(child.split("-")[0]);
}

View File

@ -24,6 +24,10 @@
$options.filters.goodsFormatPrice(item.purchasePrice )[1]
}}
</div>
<!-- 兜底策略如果金额是0 -->
<div class="price" v-if="!item.price">
¥<span>0 </span>.00
</div>
</view>
<div>
<image class='buy' :src="buy"></image>

View File

@ -83,20 +83,7 @@ export default {
this.configs.shareLink +
getCurrentPages()[getCurrentPages().length - 1].__page__.fullPath;
}
if (content === null || content === undefined) {
content = "";
} else content = content + "";
const result = h5Copy(content);
if (result === false) {
uni.showToast({
title: "不支持",
});
} else {
uni.showToast({
title: "复制成功",
icon: "none",
});
}
this.$options.filters.setClipboard(content)
},
// #endif

View File

@ -14,7 +14,7 @@ export default {
customerServiceEmail: "lili@lili.com", //客服邮箱
imWebSrc: "https://im.pickmall.cn", //IM地址
baseWsUrl: "wss://im-api.pickmall.cn/lili/webSocket", // IM WS 地址
enableGetClipboard: true, //是否启用粘贴板获取 scanAuthNavigation 中的链接,如果匹配则会跳转到对应页面
enableGetClipboard: false, //是否启用粘贴板获取 scanAuthNavigation 中的链接,如果匹配则会跳转到对应页面
enableMiniBarStartUpApp: true, //是否在h5中右侧浮空按钮点击启动app
/**
* 如需更换主题请修改此处以及uni.scss中的全局颜色
@ -22,6 +22,5 @@ export default {
mainColor: "#ff3c2a", // 主题色
lightColor: "#ff6b35", // 高亮主题色
aiderLightColor: "#ff9f28", // 辅助高亮颜色
defaultUserTopBackground:"/static/img/main-bg.png", // 我的页面用户背景 渲染的大小: 750 × 443 px 渲染时的宽高比: 750443
defaultUserPhoto:"/static/missing-face.png" // 默认用户头像
};

View File

@ -211,7 +211,8 @@
"version" : "1.3.0",
"provider" : "wx2b03c6e691cd7370"
}
}
},
"requiredPrivateInfos" : [ "chooseLocation", "getLocation" ]
},
"h5" : {
"devServer" : {

View File

@ -32,7 +32,7 @@
<u-empty
mode="coupon"
text="暂无优惠券了"
v-if="navItem.wheterEmpty"
v-if="navItem.whetherEmpty"
></u-empty>
<!-- 数据 -->
@ -139,7 +139,7 @@ export default {
pageSize: 10,
status: 1,
},
wheterEmpty: false,
whetherEmpty: false,
},
{
text: "已使用",
@ -151,7 +151,7 @@ export default {
pageSize: 10,
status: 2,
},
wheterEmpty: false,
whetherEmpty: false,
},
{
text: "已过期",
@ -163,7 +163,7 @@ export default {
pageSize: 10,
status: 3,
},
wheterEmpty: false,
whetherEmpty: false,
},
],
couponList: [], //
@ -206,7 +206,7 @@ export default {
let data = res.data.result.records;
if (data.length == 0) {
if (res.data.pageNumber == 1) {
this.navList[index].wheterEmpty = true;
this.navList[index].whetherEmpty = true;
} else {
this.navList[index].loadStatus = "noMore";
}

View File

@ -1,5 +1,5 @@
<template>
<view class="wrapper" v-if="flage">
<view class="wrapper" v-if="flag">
<div class='goods' v-if="selectedGoods">
<image class="goods-image" :src="selectedGoods.thumbnail" alt="">
<p class="goodsName">{{selectedGoods.goodsName}}</p>
@ -58,7 +58,7 @@
<popupGoods :addr="addr" ref="popupGoods" :buyMask="maskFlag" @closeBuy="closePopupBuy" :goodsDetail="goodsDetail" :goodsSpec="goodsSpec" v-if="goodsDetail.id " @handleClickSku="getGoodsDetail" />
<shares @close="closeShare" :link="'/pages/cart/payment/shareOrderGoods?sn='+this.routers.sn+'&sku='+this.routers.sku+'&goodsId='+this.routers.goodsId" type="pintuan"
:thumbnail="data.promotionGoods.thumbnail" :goodsName="data.promotionGoods.goodsName" v-if="shareFlage " />
:thumbnail="data.promotionGoods.thumbnail" :goodsName="data.promotionGoods.goodsName" v-if="shareFlag " />
</view>
</template>
@ -72,13 +72,13 @@ import popupGoods from "@/components/m-buy/goods"; //购物车商品的模块
export default {
data() {
return {
flage: false, //
flag: false, //
addr: {
id: "",
},
maskFlag: false, //
timeStamp: 0,
shareFlage: false,
shareFlag: false,
data: "",
isMaster: true,
selectedGoods: "", //
@ -116,7 +116,7 @@ export default {
},
methods: {
closeShare() {
this.shareFlage = false;
this.shareFlag = false;
},
//
toBuy() {
@ -131,7 +131,7 @@ export default {
},
//
share() {
this.shareFlage = true;
this.shareFlag = true;
},
closePopupBuy(val) {
this.maskFlag = false;
@ -140,7 +140,7 @@ export default {
async init(sn, sku) {
let res = await getPinTuanShare(sn, sku);
if (res.data.success && res.data.result.promotionGoods) {
this.flage = true;
this.flag = true;
this.data = res.data.result;
this.selectedGoods = res.data.result.promotionGoods;
let endTime = Date.parse(

View File

@ -33,18 +33,18 @@
<m-city :provinceData="list" headTitle="区域选择" ref="cityPicker" @funcValue="getpickerParentValue" pickerSize="4">
</m-city>
<uniMap v-if="mapFlage" @close="closeMap" @callback="callBackAddress" />
<uniMap v-if="mapFlag" @close="closeMap" @callback="callBackAddress" />
</div>
</view>
</template>
<script>
import { addAddress, editAddress, getAddressDetail } from "@/api/address.js";
import gkcity from "@/components/m-city/m-city.vue";
import city from "@/components/m-city/m-city.vue";
import uniMap from "./uniMap";
import permision from "@/js_sdk/wa-permission/permission.js";
export default {
components: {
"m-city": gkcity,
"m-city": city,
uniMap,
},
onShow() {
@ -53,7 +53,7 @@ export default {
methods: {
//
closeMap() {
this.mapFlage = false;
this.mapFlag = false;
},
// 访
clickUniMap() {
@ -61,8 +61,8 @@ export default {
if (plus.os.name == "iOS") {
// ios
permision.judgeIosPermission("location")
? (this.mapFlage = true)
: this.refuseMapOuther();
? (this.mapFlag = true)
: this.refuseMap();
} else {
//
this.requestAndroidPermission(
@ -72,12 +72,12 @@ export default {
// #endif
// #ifndef APP-PLUS
this.mapFlage = true;
this.mapFlag = true;
// #endif
},
//
refuseMapOuther() {
refuseMap() {
uni.showModal({
title: "温馨提示",
content: "您已拒绝定位,请开启",
@ -113,9 +113,9 @@ export default {
var result = await permision.requestAndroidPermission(permisionID);
if (result == 1) {
this.mapFlage = true;
this.mapFlag = true;
} else {
this.refuseMapOuther();
this.refuseMap();
}
},
@ -136,7 +136,7 @@ export default {
uni.hideLoading();
}
this.mapFlage = !this.mapFlage; //
this.mapFlag = !this.mapFlag; //
},
//
@ -206,7 +206,7 @@ export default {
data() {
return {
lightColor: this.$lightColor, //
mapFlage: false, //
mapFlag: false, //
routerVal: "",
form: {
detail: "", //

View File

@ -29,7 +29,8 @@ export default {
});
});
},
fail() {
fail(e) {
console.log(e)
that.$emit("close");
},
});

View File

@ -14,7 +14,7 @@
<swiper class="swiper-box" :current="swiperCurrent">
<swiper-item class="swiper-item" v-for="index in list.length" :key="index">
<scroll-view class="scroll-v view-wrapper" enableBackToTop="true" scroll-with-animation scroll-y @scrolltolower="loadMore">
<view v-if="datas.length!=0" class="view-item" v-for="(logItem, logIndex) in datas" :key="logIndex">
<view v-if="depositData.length!=0" class="view-item" v-for="(logItem, logIndex) in depositData" :key="logIndex">
<view class="view-item-detail">
<view class="-title">{{logItem.detail}}</view>
<!-- <view class="-number">{{logItem.detail}}</view> -->
@ -27,7 +27,7 @@
</view>
</view>
<u-empty v-if="datas.length==0" mode="history" text="暂无记录" />
<u-empty v-if="depositData.length==0" mode="history" text="暂无记录" />
</scroll-view>
@ -45,7 +45,6 @@ export default {
data() {
return {
walletNum: 0,
current: 0,
swiperCurrent: 0,
userInfo: "", //
@ -54,7 +53,7 @@ export default {
pageSize: 10,
order: "desc",
},
datas: [], //
depositData: [], //
rechargeList: "", //
walletLogList: "", //
list: [
@ -82,12 +81,10 @@ export default {
/**分页获取预存款充值记录 */
getRecharge() {
getUserRecharge(this.params).then((res) => {
if (res.data.success) {
if (res.data.result.records.length != 0) {
this.datas.push(...res.data.result.records);
this.depositData.push(...res.data.result.records);
}
}
});
@ -98,7 +95,7 @@ export default {
getWalletLog(this.params).then((res) => {
if (res.data.success) {
if (res.data.result.records.length != 0) {
this.datas.push(...res.data.result.records);
this.depositData.push(...res.data.result.records);
}
}
});
@ -106,7 +103,7 @@ export default {
changed(index) {
this.datas = [];
this.depositData = [];
this.swiperCurrent = index;
this.params.pageNumber = 1;
if (index == 0) {

View File

@ -5,11 +5,11 @@
<div class="deposit">预存款金额</div>
<div class="money">{{walletNum | unitPrice }}</div>
<div class="operation-btns">
<div class="operation-btn light" @click="navgition('/pages/mine/deposit/withdrawal')"></div>
<div class="operation-btn" @click="navgition('/pages/mine/deposit/recharge')"></div>
<div class="operation-btn light" @click="navigateTo('/pages/mine/deposit/withdrawal')"></div>
<div class="operation-btn" @click="navigateTo('/pages/mine/deposit/recharge')"></div>
</div>
</div>
<div class="box list" @click="navgition('/pages/mine/deposit/index')">
<div class="box list" @click="navigateTo('/pages/mine/deposit/index')">
<div class="list-left">预存款明细</div>
<div class="list-right">
<u-icon name="arrow-right"></u-icon>
@ -31,12 +31,6 @@ export default {
let result = await getUserWallet(); //
this.walletNum = result.data.result.memberWallet;
} else {
uni.showToast({
icon: "none",
duration: 3000,
title: "请先登录!",
});
this.$options.filters.navigateToLogin("redirectTo");
}
},
@ -49,7 +43,7 @@ export default {
/**
* 跳转
*/
navgition(url) {
navigateTo(url) {
uni.navigateTo({
url,
});

View File

@ -98,7 +98,7 @@ export default {
.nav-list {
color: #fff;
padding: 40rpx 0;
background: $aider-light-color;
background: linear-gradient(91deg, $light-color 1%, $aider-light-color 99%);
}
.total {
padding: 10rpx 0;

View File

@ -25,7 +25,7 @@
<view>{{ item.content }}</view>
<view>{{ item.createTime}}</view>
</view>
<view><span>{{item.pointType == "INCREASE" ? '+' : '-'}}</span>{{ item.variablePoint }}</view>
<view :class="[item.pointType == 'INCREASE' ? 'plus' : 'reduce']"><span>{{item.pointType == "INCREASE" ? '+' : '-'}}</span>{{ item.variablePoint }}</view>
</view>
<uni-load-more :status="count.loadStatus"></uni-load-more>
</div>
@ -109,6 +109,14 @@ export default {
font-size: 32rpx;
font-weight: bold;
}
.plus{
color: $light-color;
font-weight: bold;
}
.reduce{
color: $weChat-color;
font-weight: bold;
}
.point-item {
width: 100%;
@ -150,7 +158,7 @@ export default {
border-right: 1px solid $border-color-light;
}
.pcolor {
color: #4ebb9d;
color: $light-color;
}
}
@ -168,7 +176,7 @@ export default {
.portrait-box {
background-color: $main-color;
height: 250rpx;
background: linear-gradient(134deg, #28d094 2%, #1abc9c 98%);
background: linear-gradient(91deg, $light-color 1%, $aider-light-color 99%);
border-radius: 20rpx 20rpx 0 0;
margin: 20rpx 20rpx 0;
position: relative;

View File

@ -23,26 +23,22 @@
<u-input v-model="form.___path" disabled @click="clickRegion" />
</u-form-item>
<view class="submit" @click="submit"></view>
<view class="submit" @click="showModalDialog">退</view>
<u-modal show-cancel-button v-model="quitShow" @confirm="confirm" :confirm-color="lightColor" :async-close="true"
:content="'确定要退出登录么?'"></u-modal>
<view class="submit" @click="quiteLoginOut">退</view>
</u-form>
<m-city :provinceData="region" headTitle="区域选择" ref="cityPicker" @funcValue="getpickerParentValue" pickerSize="4"></m-city>
<m-city :provinceData="region" headTitle="区域选择" ref="cityPicker" @funcValue="getPickerParentValue" pickerSize="4"></m-city>
</view>
</template>
<script>
import { logout } from "@/api/login";
import { saveUserInfo } from "@/api/members.js";
import { upload } from "@/api/common.js";
import storage from "@/utils/storage.js";
import uFormItem from "@/uview-ui/components/u-form-item/u-form-item.vue";
import gkcity from "@/components/m-city/m-city.vue";
import city from "@/components/m-city/m-city.vue";
export default {
components: { uFormItem, "m-city": gkcity },
components: { uFormItem, "m-city": city },
data() {
return {
quitShow: false,
lightColor: this.$lightColor, //
form: {
nickName: storage.getUserInfo().nickName || "",
@ -71,38 +67,16 @@ export default {
},
methods: {
/**
* 显示退出登录对话框
* 退出登录
*/
showModalDialog() {
this.quitShow = true;
},
clear() {
storage.setAccessToken("");
storage.setRefreshToken("");
storage.setUserInfo({});
this.$options.filters.navigateToLogin("redirectTo");
},
/**
* 确认退出
* 清除缓存重新登录
*/
async confirm() {
try{
await logout();
this.clear();
}catch(e){
//TODO handle the exception
this.clear();
}
quiteLoginOut() {
this.$options.filters.quiteLoginOut();
},
/**
* 选择地址回调
*/
getpickerParentValue(e) {
getPickerParentValue(e) {
this.form.region = [];
this.form.regionId = [];
let name = "";

View File

@ -4,7 +4,6 @@
<u-image width=140 height="140" shape="circle" :src="userInfo.face || userImage" mode="">
</u-image>
<view class="user-name">
{{ userInfo.id ? userInfo.nickName || '' : '暂未登录' }}
</view>
<u-icon color="#ccc" name="arrow-right"></u-icon>
@ -16,29 +15,25 @@
<!-- #ifdef APP-PLUS -->
<u-cell-item title="清除缓存" :value="fileSizeString" @click="clearCache"></u-cell-item>
<!-- #endif -->
<!-- #ifndef MP-WEIXIN -->
<u-cell-item title="安全中心" @click="navigateTo('/pages/mine/set/securityCenter/securityCenter')"></u-cell-item>
<!-- #endif -->
<u-cell-item title="意见反馈" @click="navigateTo('/pages/mine/set/feedBack')"></u-cell-item>
<!-- #ifndef H5 -->
<!-- #endif -->
<u-cell-item :title="`关于${config.name}`" @click="navigateTo('/pages/mine/set/editionIntro')"></u-cell-item>
</u-cell-group>
<view class="submit" @click="showModalDialog">{{userInfo.id ?'退':''}}</view>
<u-modal show-cancel-button v-model="quitShow" @confirm="confirm" :confirm-color="lightColor" :async-close="true"
:content="userInfo.id ? '确定要退出登录么?' : '确定要登录么?'"></u-modal>
<view class="submit" v-if="userInfo.id" @click="quiteLoginOut">退</view>
</view>
</template>
<script>
import { logout } from "@/api/login";
import storage from "@/utils/storage.js";
import config from "@/config/config";
export default {
data() {
return {
config,
userImage:config.defaultUserPhoto,
lightColor: this.$lightColor,
quitShow: false,
isCertificate: false,
userInfo: {},
fileSizeString: "0B",
@ -54,34 +49,14 @@ export default {
url: url,
});
},
clear() {
storage.setAccessToken("");
storage.setRefreshToken("");
storage.setUserInfo({});
this.$options.filters.navigateToLogin("redirectTo");
},
/**
* 退出登录
*/
quiteLoginOut() {
this.$options.filters.quiteLoginOut();
},
/**
* 确认退出
* 清除缓存重新登录
*/
async confirm() {
try{
await logout();
this.clear();
}catch(e){
//TODO handle the exception
this.clear();
}
},
/**
* 显示退出登录对话框
*/
showModalDialog() {
this.quitShow = true;
},
/**
* 读取当前缓存
@ -113,11 +88,7 @@ export default {
if (this.$options.filters.isLogin("auth")) {
this.navigateTo("/pages/mine/set/personMsg");
} else {
uni.showToast({
title: "当前暂无用户请登录后重试",
duration: 2000,
icon: "none",
});
this.$options.filters.tipsToLogin();
}
},

View File

@ -33,14 +33,12 @@
<!-- 背景 -->
<div class="bar"></div>
</div>
<!-- 选择自提点 -->
<div class="address-box" v-if="shippingText == 'SELF_PICK_UP'">
<div @click="clickToStoreAddress()">
<div class="user-box flex">
<div class="flex-8">
<div v-if="!storeAddress"></div>
<div v-else>
<div v-if="storeAddress">
<div class="user-address">
<!-- 自提点地址 -->
<div class="user-address-detail wes-2">
@ -50,6 +48,9 @@
<div>
</div>
</div>
</div>
<div v-else>
请选择自提点
</div>
</div>
<u-icon name="arrow-right" style="color: #bababa"></u-icon>
@ -316,6 +317,7 @@ export default {
pintuanFlage: true, //
notSupportFreight: [], //
notSupportFreightGoodsList: ["以下商品超出配送范围:"],
storeAddress:"",
};
},
filters: {
@ -672,6 +674,7 @@ export default {
}
if (res.data.result.storeAddress) {
this.storeAddress = res.data.result.storeAddress
console.log("storeAddress",this.storeAddress);
}
if (
res.data.result.notSupportFreight &&
@ -701,6 +704,7 @@ page {
}
.main-color {
color: $main-color;
font-weight: bold;
}

View File

@ -9,21 +9,21 @@
</div>
<!-- 物流信息 -->
<view class="info-view logi-view">
<view class="logi-List" v-if="logiList && logiList.traces.length != 0">
<view class="logi-List-title">
{{ logiList.traces[logiList.traces.length - 1].AcceptStation }}
<view class="info-view logistics-view">
<view class="logistics-List" v-if="logisticsList && logisticsList.traces.length != 0 ">
<view class="logistics-List-title">
{{ logisticsList.traces[logisticsList.traces.length - 1].AcceptStation }}
</view>
<view class="logi-List-time">
{{ logiList.traces[logiList.traces.length - 1].AcceptTime }}
<view class="logistics-List-time">
{{ logisticsList.traces[logisticsList.traces.length - 1].AcceptTime }}
</view>
</view>
<view class="logi-List" v-else>
<view class="logistics-List" v-else>
<view class="verificationCode" v-if="order.verificationCode">
券码 {{ order.verificationCode }}
</view>
<view v-else class="logi-List-title">
<view v-else class="logistics-List-title">
{{ '暂无物流信息' }}
</view>
</view>
@ -47,12 +47,15 @@
<view class="info-view" v-if="order.deliveryMethod == 'SELF_PICK_UP'">
<view class="address-view">
<view>
<view class="address-title">
自提点地址:<span>{{ order.storeAddressPath }}</span>
<view class="order-info-view">
<view class="title">自提点地址:</view>
<view class="value address-line-height">{{ order.storeAddressPath }}</view>
</view>
<view class="address-title">
联系方式:<span>{{ order.storeAddressMobile }}</span>
<view class="order-info-view" @click="callPhone" >
<view class="title">联系方式:</view>
<view class="value">{{ order.storeAddressMobile }}<u-icon name='phone-fill' ></u-icon></view>
</view>
</view>
</view>
</view>
@ -62,7 +65,7 @@
<view class="seller-view">
<!-- 店铺名称 -->
<view class="seller-info u-flex u-row-between">
<view class="seller-name" @click="tostore(order)">
<view class="seller-name" @click="goToShopPage(order)">
<view class="name">{{ order.storeName }}</view>
<view class="status" v-if="orderStatusList[order.orderStatus]"> {{ orderStatusList[order.orderStatus].title
}}</view>
@ -165,7 +168,7 @@
</view>
<view class="order-info-view">
<view class="title">支付方式</view>
<view class="value">{{ orderDetail.paymentMethodValue }}</view>
<view class="value">{{ orderDetail.paymentMethodValue || '暂无'}}</view>
</view>
</view>
</view>
@ -173,7 +176,7 @@
<view class="info-view" v-if="order.payStatus == 'PAID'">
<view>
<view class="invoice-info-view">
<view class="ltitle">发票信息</view>
<view class="invoice-title">发票信息</view>
<view v-if="!order.needReceipt" class="value"></view>
<view v-else class="value" @click="onReceipt(orderDetail.receipt)"></view>
</view>
@ -195,7 +198,7 @@
<view>
<!-- 全部 -->
<!-- 等待付款 -->
<u-button type="error" ripple size="mini" v-if="order.allowOperationVO && order.allowOperationVO.pay"
<u-button type="error" ripple size="mini" v-if="orderDetail.allowOperationVO && orderDetail.allowOperationVO.pay"
@click="toPay(order)">立即付款</u-button>
<!-- <u-button class="rebuy-btn" size="mini" v-if="order.order_operate_allowable_vo.allow_service_cancel"> </u-button> -->
@ -232,8 +235,8 @@
@confirm="confirmRog"></u-modal>
<!-- 分享 -->
<shares v-if="shareFlage" :thumbnail="orderDetail.orderItems[0].image"
:goodsName="orderDetail.orderItems[0].goodsName" @close="shareFlage = false" />
<shares v-if="shareFlag" :thumbnail="orderDetail.orderItems[0].image"
:goodsName="orderDetail.orderItems[0].goodsName" @close="shareFlag = false" />
</view>
</template>
@ -242,7 +245,6 @@
import { getExpress } from "@/api/trade.js";
import { cancelOrder, confirmReceipt, getOrderDetail } from "@/api/order.js";
import { h5Copy } from "@/js_sdk/h5-copy/h5-copy.js";
import shares from "@/components/m-share/index"; //
import { getClearReason } from "@/api/after-sale.js";
@ -254,8 +256,8 @@ export default {
data() {
return {
lightColor: this.$lightColor,
logiList: "", //
shareFlage: false, //
logisticsList: "", //
shareFlag: false, //
orderStatusList: {
UNPAID: {
title: "未付款",
@ -305,7 +307,10 @@ export default {
this.sn = options.sn;
},
methods: {
tostore(val) {
callPhone(){
this.$options.filters.callPhone(this.order.storeAddressMobile )
},
goToShopPage(val) {
uni.navigateTo({
url: "/pages/product/shopPage?id=" + val.storeId,
});
@ -313,13 +318,13 @@ export default {
//
loadLogistics(sn) {
getExpress(sn).then((res) => {
this.logiList = res.data.result;
this.logisticsList = res.data.result;
});
},
//
inviteGroup() {
this.shareFlage = true;
this.shareFlag = true;
},
// #TODO
ByUserMessage(order) {
@ -360,35 +365,7 @@ export default {
});
},
onCopy(sn) {
// #ifdef H5
if (sn === null || sn === undefined) {
sn = "";
} else sn = sn + "";
const result = h5Copy(sn);
if (result === false) {
uni.showToast({
title: "不支持",
});
} else {
uni.showToast({
title: "复制成功",
icon: "none",
});
}
// #endif
// #ifndef H5
uni.setClipboardData({
data: sn,
success: function () {
uni.showToast({
title: "复制成功!",
duration: 2000,
icon: "none",
});
},
});
// #endif
this.$options.filters.setClipboard(sn)
},
/**
@ -546,7 +523,7 @@ export default {
flex-wrap: wrap;
}
.logi-view {
.logistics-view {
justify-content: space-between;
padding: 30rpx !important;
margin: 0 !important;
@ -566,12 +543,12 @@ export default {
}
}
.logi-List-title {
.logistics-List-title {
margin-bottom: 10rpx;
font-size: 26rpx;
}
.logi-List-time {
.logistics-List-time {
font-size: 24rpx;
color: #999;
}
@ -666,11 +643,14 @@ page,
width: 140rpx;
font-size: 24rpx;
font-weight: 600;
flex:3;
min-width: 160rpx;
}
.value {
color: #666;
font-size: 24rpx;
flex:10;
}
.copy {
@ -688,7 +668,7 @@ page,
width: 100%;
margin: 10rpx 0rpx;
.ltitle {
.invoice-title {
width: 550rpx;
font-size: 28rpx;
color: #333333;
@ -765,4 +745,7 @@ page,
text-align: center;
}
}
.address-line-height{
line-height: 1.75;
}
</style>

View File

@ -20,7 +20,7 @@
</div>
<view class="eva-box" v-for="(item, index) in commDetail" :key="index">
<view class="section-info">
<image class="portrait" :src="item.memberProfile || userImage" mode="aspectFill"></image>
<image class="portrait" :src="item.memberProfile || userImage" mode="aspectFit"></image>
<view class="star-content">
<text class="name">{{ item.memberName | noPassByName }}</text>
<text class="time">{{ item.createTime }}</text>

View File

@ -19,7 +19,7 @@
<view class="index-items">
<view class="index-item" v-for="(item, key) in nav.goods" :key="key" @click="toGoods(item)">
<view class="index-item-img">
<u-image :src="item.thumbnail" mode="aspectFill">
<u-image :src="item.thumbnail" mode="aspectFit">
<u-loading slot="loading"></u-loading>
</u-image>
<view class="index-item-title">{{ item.goodsName }}</view>

View File

@ -31,7 +31,7 @@
}}</span>
<u-icon @click="navigateToStore(item)" size="24" style="margin-left:10rpx;" name="arrow-right"></u-icon>
</view>
<view class="right-col" v-if="item.canReceiveCoupon" @click="navigateToConpon(item)">
<view class="right-col" v-if="item.canReceiveCoupon" @click="navigateToCoupon(item)">
<div class="right-line"></div>
<span>领劵</span>
</view>
@ -119,7 +119,7 @@
</u-swipe-action>
</div>
</div>
<u-modal v-model="deleteShow" :confirm-style="{'color':lightColor}" @confirm="delectConfirm" show-cancel-button
<u-modal v-model="deleteShow" :confirm-style="{'color':lightColor}" @confirm="deleteConfirm" show-cancel-button
:content="deleteContent" :async-close="true"></u-modal>
<!-- 结账 -->
<div class="box box6">
@ -220,7 +220,6 @@ export default {
// #endif
},
onPullDownRefresh(){
console.log("132")
this.getCardData();
},
/**
@ -283,7 +282,7 @@ export default {
/**
* 点击删除
*/
delectConfirm() {
deleteConfirm() {
API_Trade.deleteSkuItem(this.goodsVal.goodsSku.id).then((res) => {
if (res.statusCode == 200) {
uni.showToast({
@ -341,7 +340,7 @@ export default {
/**
* 跳转到优惠券
*/
navigateToConpon(val) {
navigateToCoupon(val) {
uni.navigateTo({
url: "/pages/cart/coupon/couponCenter?storeId=" + val.storeId,
});
@ -512,19 +511,19 @@ export default {
uni.stopPullDownRefresh();
if (result.data.success) {
this.cartDetail = result.data.result;
let checkouted = true;
let checkOuted = true;
for (let i = 0; i < this.cartDetail.cartList.length; i++) {
let item = this.cartDetail.cartList[i];
console.log(item);
//
if (item.checked == 0) {
checkouted = false;
checkOuted = false;
}
// 便
item.skuList &&
item.skuList.forEach((sku) => {
if (sku.checked == 0) {
checkouted = false;
checkOuted = false;
}
if(Object.keys(sku.promotionMap).length != 0)
{
@ -538,7 +537,7 @@ export default {
});
}
this.checkout = checkouted;
this.checkout = checkOuted;
uni.stopPullDownRefresh();
}
})

View File

@ -1,7 +1,7 @@
<template>
<view class="category-wrap">
<u-navbar class="navbar" :is-back="false">
<div class="title"> 商品分类</div>
<div class="title">商品分类</div>
<u-search class="nav-search" disabled @click.native="search" placeholder="搜索商品" :show-action="false"></u-search>
</u-navbar>
<view class="content">
@ -125,13 +125,11 @@ uni-scroll-view .uni-scroll-view::-webkit-scrollbar {
}
.title {
display: block;
width: 200rpx;
width: 259rpx;
text-align: center;
font-size: 34rpx;
letter-spacing: 2rpx;
// #ifdef MP-WEIXIN
margin-left: 26rpx;
// #endif
font-size: 28rpx;
}
.category-wrap {
height: 100%;

View File

@ -4,7 +4,7 @@
<view class="status_bar">
<!-- 这里是状态栏 -->
</view>
<view class="header" :style="{'background-image':`url(${backGroundImage})`}" @click="userDetail">
<view class="header" @click="userDetail">
<view class="head-1">
<image :src="userInfo.face || userImage"></image>
</view>
@ -86,7 +86,6 @@ export default {
data() {
return {
configs,
backGroundImage:configs.defaultUserTopBackground,
userImage:configs.defaultUserPhoto,
coverTransform: "translateY(0px)",
coverTransition: "0s",
@ -173,7 +172,7 @@ body {
background-size: cover;
border-bottom-left-radius: 30rpx;
border-bottom-right-radius: 30rpx;
// background-image: url("/static/img/main-bg.png");
background-image: url("/static/img/main-bg.png");
background-position: bottom;
background-repeat: no-repeat;
color: #ffffff;

View File

@ -1,28 +0,0 @@
{
"appid": "wx98ebde1da5b340d4",
"compileType": "miniprogram",
"libVersion": "2.27.0",
"packOptions": {
"ignore": [],
"include": []
},
"setting": {
"coverView": true,
"es6": true,
"postcss": true,
"minified": true,
"enhance": true,
"showShadowRootInWxmlPanel": true,
"packNpmRelationList": [],
"babelSetting": {
"ignore": [],
"disablePlugins": [],
"outputPath": ""
}
},
"condition": {},
"editorSetting": {
"tabIndent": "insertSpaces",
"tabSize": 2
}
}

View File

@ -1,7 +0,0 @@
{
"description": "项目私有配置文件。此文件中的内容将覆盖 project.config.json 中的相同字段。项目的改动优先同步到此文件中。详见文档https://developers.weixin.qq.com/miniprogram/dev/devtools/projectconfig.html",
"projectname": "lilishop-uniapp",
"setting": {
"compileHotReLoad": true
}
}

View File

@ -1,5 +1,6 @@
import Foundation from "./Foundation.js";
import storage from "@/utils/storage.js";
import { logout } from "@/api/login";
import { getUserInfo } from "@/api/members";
import Vue from "vue";
/**
@ -35,6 +36,52 @@ export function goodsFormatPrice (val) {
}
/**
* 将内容复制到粘贴板
*/
import { h5Copy } from "@/js_sdk/h5-copy/h5-copy.js";
export function setClipboard (val) {
// #ifdef H5
if (val === null || val === undefined) {
val = "";
} else val = val + "";
const result = h5Copy(val);
if (result === false) {
uni.showToast({
title: "不支持",
});
} else {
uni.showToast({
title: "复制成功",
icon: "none",
});
}
// #endif
// #ifndef H5
uni.setClipboardData({
data: val,
success: function () {
uni.showToast({
title: "复制成功!",
duration: 2000,
icon: "none",
});
},
});
// #endif
}
/**
* 拨打电话
*/
export function callPhone (phoneNumber) {
uni.makePhoneCall({
phoneNumber: phoneNumber,
});
}
/**
* 脱敏姓名
*/
@ -291,6 +338,28 @@ export function isLogin (val) {
return storage.getUserInfo();
}
}
/**
* 退出登录
*
*/
export function quiteLoginOut () {
uni.showModal({
title: "提示",
content: "是否退出登录?",
confirmColor: Vue.prototype.$mainColor,
async success (res) {
if (res.confirm) {
storage.setAccessToken("");
storage.setRefreshToken("");
storage.setUserInfo({});
navigateToLogin("redirectTo");
await logout();
}
},
});
}
/**
* 跳转im
*/