|
|
@@ -28,8 +28,10 @@
|
|
|
件 预估回收价
|
|
|
<text class="color-red">¥{{ orderInfo.totalRecycleMoney || 0 }}</text>
|
|
|
</view>
|
|
|
- <text class="common-text tip">*<text v-if="orderInfo.minOrderNum">旧书满{{ orderInfo.minOrderNum
|
|
|
- }}本,或</text>预估价格满{{ orderInfo.minOrderMoney }}元起收</text>
|
|
|
+ <text class="common-text tip">
|
|
|
+ *<text v-if="orderInfo.minOrderNum > 1">旧书满{{ orderInfo.minOrderNum
|
|
|
+ }}本,{{ orderInfo.recycleOrderAndOr == 2 ? '且' : '或' }}</text>预估价格满{{ orderInfo.minOrderMoney}}元起收
|
|
|
+ </text>
|
|
|
</view>
|
|
|
|
|
|
<button class="scan-btn next-btn" @click="handleValidate" :disabled="isDisabled">
|
|
|
@@ -125,23 +127,23 @@
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
-import notScanned from "./components/notScanned.vue";
|
|
|
-import InputIsbn from "./components/InputIsbn.vue";
|
|
|
-import ScanBookList from "./components/ScanBookList.vue";
|
|
|
-import CommonDialog from "@/components/common-dialog.vue";
|
|
|
-import KindReminder from "./components/KindReminder.vue";
|
|
|
-import ServiceInfo from "./components/ServiceInfo.vue";
|
|
|
-import ConfirmBooks from "./components/ConfirmBooks.vue";
|
|
|
-import FirstOrderFreePopup from "./components/FirstOrderFreePopup.vue";
|
|
|
-import UpsellBook from "./components/upsell-book.vue";
|
|
|
-import UpsellRules from "./components/upsell-rules.vue";
|
|
|
-import UpsellShare from "./components/upsell-share.vue";
|
|
|
-import UpsellQrcode from "./components/upsell-qrcode.vue";
|
|
|
+ import notScanned from "./components/notScanned.vue";
|
|
|
+ import InputIsbn from "./components/InputIsbn.vue";
|
|
|
+ import ScanBookList from "./components/ScanBookList.vue";
|
|
|
+ import CommonDialog from "@/components/common-dialog.vue";
|
|
|
+ import KindReminder from "./components/KindReminder.vue";
|
|
|
+ import ServiceInfo from "./components/ServiceInfo.vue";
|
|
|
+ import ConfirmBooks from "./components/ConfirmBooks.vue";
|
|
|
+ import FirstOrderFreePopup from "./components/FirstOrderFreePopup.vue";
|
|
|
+ import UpsellBook from "./components/upsell-book.vue";
|
|
|
+ import UpsellRules from "./components/upsell-rules.vue";
|
|
|
+ import UpsellShare from "./components/upsell-share.vue";
|
|
|
+ import UpsellQrcode from "./components/upsell-qrcode.vue";
|
|
|
import ReduceShare from "./components/reduce-share.vue";
|
|
|
-import FloatingDrag from "@/components/floating-drag.vue";
|
|
|
-import { eventBus } from "@/utils/event-bus";
|
|
|
+ import FloatingDrag from "@/components/floating-drag.vue";
|
|
|
+ import { eventBus } from "@/utils/event-bus";
|
|
|
|
|
|
-const app = getApp();
|
|
|
+ const app = getApp();
|
|
|
|
|
|
export default {
|
|
|
components: {
|
|
|
@@ -289,21 +291,21 @@ export default {
|
|
|
});;
|
|
|
},
|
|
|
|
|
|
- //针对多次扫码的热启动场景,需要判断是否是冷启动
|
|
|
- onLoad(options) {
|
|
|
- console.log(options, app.globalData.isColdLaunch, "onLoad");
|
|
|
- if (app.globalData.isColdLaunch) return
|
|
|
-
|
|
|
- if (options.scene) {
|
|
|
- let params = {};
|
|
|
- // 对 scene 进行解码
|
|
|
- const decodeScene = decodeURIComponent(options.scene);
|
|
|
- // 拆分参数
|
|
|
- const paramPairs = decodeScene.split('&');
|
|
|
- paramPairs.forEach((pair) => {
|
|
|
- const [key, value] = pair.split('=');
|
|
|
- params[key] = value;
|
|
|
- });
|
|
|
+ //针对多次扫码的热启动场景,需要判断是否是冷启动
|
|
|
+ onLoad(options) {
|
|
|
+ console.log(options, app.globalData.isColdLaunch, "onLoad");
|
|
|
+ if (app.globalData.isColdLaunch) return
|
|
|
+
|
|
|
+ if (options.scene) {
|
|
|
+ let params = {};
|
|
|
+ // 对 scene 进行解码
|
|
|
+ const decodeScene = decodeURIComponent(options.scene);
|
|
|
+ // 拆分参数
|
|
|
+ const paramPairs = decodeScene.split('&');
|
|
|
+ paramPairs.forEach((pair) => {
|
|
|
+ const [key, value] = pair.split('=');
|
|
|
+ params[key] = value;
|
|
|
+ });
|
|
|
|
|
|
if (params.upsellCode) {
|
|
|
this.$refs.shareRef?.open(params.upsellCode);
|
|
|
@@ -326,11 +328,11 @@ export default {
|
|
|
},
|
|
|
// #endif
|
|
|
|
|
|
- //卸载loginSuccess事件
|
|
|
- onUnload() {
|
|
|
- uni.removeStorageSync("upsellCode");
|
|
|
- eventBus.off("loginSuccess");
|
|
|
- },
|
|
|
+ //卸载loginSuccess事件
|
|
|
+ onUnload() {
|
|
|
+ uni.removeStorageSync("upsellCode");
|
|
|
+ eventBus.off("loginSuccess");
|
|
|
+ },
|
|
|
|
|
|
methods: {
|
|
|
// 登录成功之后
|
|
|
@@ -348,341 +350,341 @@ export default {
|
|
|
this.getLastOrder();
|
|
|
},
|
|
|
|
|
|
- //删除书籍
|
|
|
- handleDeleteBook(book) {
|
|
|
- this.deleteBook = book;
|
|
|
- this.$refs.deleteDialog.openPopup(book);
|
|
|
- },
|
|
|
- //支付宝小程序的客服
|
|
|
- navigateToCustomerService() {
|
|
|
- uni.navigateTo({
|
|
|
- url: "/pages-mine/pages/customer-service",
|
|
|
- });
|
|
|
- },
|
|
|
-
|
|
|
- confirmDelete() {
|
|
|
- uni.$u.http
|
|
|
- .post("/token/order/removeBook", {
|
|
|
- orderId: this.deleteBook.orderId,
|
|
|
- isbn: this.deleteBook.isbn,
|
|
|
- })
|
|
|
- .then((res) => {
|
|
|
- if (res.code == 200) {
|
|
|
- this.$u.toast("删除成功");
|
|
|
- this.getLastOrder();
|
|
|
- }
|
|
|
+ //删除书籍
|
|
|
+ handleDeleteBook(book) {
|
|
|
+ this.deleteBook = book;
|
|
|
+ this.$refs.deleteDialog.openPopup(book);
|
|
|
+ },
|
|
|
+ //支付宝小程序的客服
|
|
|
+ navigateToCustomerService() {
|
|
|
+ uni.navigateTo({
|
|
|
+ url: "/pages-mine/pages/customer-service",
|
|
|
});
|
|
|
- },
|
|
|
+ },
|
|
|
|
|
|
- //扫码助力
|
|
|
- handleScanCode(data = {}) {
|
|
|
- this.$refs.upsellQrcodeRef.open(data);
|
|
|
- },
|
|
|
+ confirmDelete() {
|
|
|
+ uni.$u.http
|
|
|
+ .post("/token/order/removeBook", {
|
|
|
+ orderId: this.deleteBook.orderId,
|
|
|
+ isbn: this.deleteBook.isbn,
|
|
|
+ })
|
|
|
+ .then((res) => {
|
|
|
+ if (res.code == 200) {
|
|
|
+ this.$u.toast("删除成功");
|
|
|
+ this.getLastOrder();
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
|
|
|
- //查看活动规则
|
|
|
- handleViewSellRules() {
|
|
|
- this.$refs.upsellRulesRef.open();
|
|
|
- },
|
|
|
+ //扫码助力
|
|
|
+ handleScanCode(data = {}) {
|
|
|
+ this.$refs.upsellQrcodeRef.open(data);
|
|
|
+ },
|
|
|
|
|
|
- handleStart() {
|
|
|
- this.showPopup = true;
|
|
|
- },
|
|
|
- //套装书确认
|
|
|
- handleSetBookConfirm() {
|
|
|
- this.$refs.confirmBooks.openPopup(this.currentBook);
|
|
|
- },
|
|
|
- //书册补全
|
|
|
- handleIncomplete() {
|
|
|
- this.$refs.scanBookList.handleDeleteBook(this.currentBook);
|
|
|
- },
|
|
|
+ //查看活动规则
|
|
|
+ handleViewSellRules() {
|
|
|
+ this.$refs.upsellRulesRef.open();
|
|
|
+ },
|
|
|
|
|
|
- handleValidate() {
|
|
|
- if (this.bookList.some((v) => v.canInvite == 1)) {
|
|
|
- this.$refs.noUpsellDialog.openPopup();
|
|
|
- } else {
|
|
|
- this.onNext();
|
|
|
- }
|
|
|
- },
|
|
|
+ handleStart() {
|
|
|
+ this.showPopup = true;
|
|
|
+ },
|
|
|
+ //套装书确认
|
|
|
+ handleSetBookConfirm() {
|
|
|
+ this.$refs.confirmBooks.openPopup(this.currentBook);
|
|
|
+ },
|
|
|
+ //书册补全
|
|
|
+ handleIncomplete() {
|
|
|
+ this.$refs.scanBookList.handleDeleteBook(this.currentBook);
|
|
|
+ },
|
|
|
|
|
|
- //提交
|
|
|
- onNext() {
|
|
|
- let orderId = this.orderInfo.orderId;
|
|
|
- //预提交
|
|
|
- uni.$u.http
|
|
|
- .get("/token/order/preSubmit?orderId=" + orderId)
|
|
|
- .then((res) => {
|
|
|
- if (res.code == 200) {
|
|
|
- if (res.data.code == 1 || res.data.code == 2) {
|
|
|
- uni.navigateTo({
|
|
|
- url: "/pages-home/pages/book-order",
|
|
|
- });
|
|
|
- uni.setStorageSync("orderId", orderId);
|
|
|
+ handleValidate() {
|
|
|
+ if (this.bookList.some((v) => v.canInvite == 1)) {
|
|
|
+ this.$refs.noUpsellDialog.openPopup();
|
|
|
+ } else {
|
|
|
+ this.onNext();
|
|
|
+ }
|
|
|
+ },
|
|
|
+
|
|
|
+ //提交
|
|
|
+ onNext() {
|
|
|
+ let orderId = this.orderInfo.orderId;
|
|
|
+ //预提交
|
|
|
+ uni.$u.http
|
|
|
+ .get("/token/order/preSubmit?orderId=" + orderId)
|
|
|
+ .then((res) => {
|
|
|
+ if (res.code == 200) {
|
|
|
+ if (res.data.code == 1 || res.data.code == 2) {
|
|
|
+ uni.navigateTo({
|
|
|
+ url: "/pages-home/pages/book-order",
|
|
|
+ });
|
|
|
+ uni.setStorageSync("orderId", orderId);
|
|
|
+ } else {
|
|
|
+ uni.showToast({
|
|
|
+ icon: "none",
|
|
|
+ title: res.msg,
|
|
|
+ });
|
|
|
+ }
|
|
|
} else {
|
|
|
uni.showToast({
|
|
|
icon: "none",
|
|
|
title: res.msg,
|
|
|
});
|
|
|
}
|
|
|
- } else {
|
|
|
+ });
|
|
|
+ },
|
|
|
+ // 加价
|
|
|
+ handleUpsell(book) {
|
|
|
+ this.$refs.upsellRef.open(book);
|
|
|
+ },
|
|
|
+
|
|
|
+ updateBooksList(data, book) {
|
|
|
+ this.bookList = data;
|
|
|
+ // book.upsellMoney && this.getLastOrder();
|
|
|
+ this.getLastOrder();
|
|
|
+ },
|
|
|
+
|
|
|
+ toggleCollapse(step) {
|
|
|
+ this.$set(this.collapseState, step, !this.collapseState[step]);
|
|
|
+ },
|
|
|
+ handleScan() {
|
|
|
+ uni.scanCode({
|
|
|
+ scanType: ["barCode"],
|
|
|
+ success: (res) => {
|
|
|
+ this.checkBookISBN(res.result, "scan");
|
|
|
+ },
|
|
|
+ fail: () => {
|
|
|
uni.showToast({
|
|
|
+ title: "扫码失败",
|
|
|
icon: "none",
|
|
|
- title: res.msg,
|
|
|
});
|
|
|
- }
|
|
|
+ },
|
|
|
});
|
|
|
- },
|
|
|
- // 加价
|
|
|
- handleUpsell(book) {
|
|
|
- this.$refs.upsellRef.open(book);
|
|
|
- },
|
|
|
-
|
|
|
- updateBooksList(data, book) {
|
|
|
- this.bookList = data;
|
|
|
- // book.upsellMoney && this.getLastOrder();
|
|
|
- this.getLastOrder();
|
|
|
- },
|
|
|
-
|
|
|
- toggleCollapse(step) {
|
|
|
- this.$set(this.collapseState, step, !this.collapseState[step]);
|
|
|
- },
|
|
|
- handleScan() {
|
|
|
- uni.scanCode({
|
|
|
- scanType: ["barCode"],
|
|
|
- success: (res) => {
|
|
|
- this.checkBookISBN(res.result, "scan");
|
|
|
- },
|
|
|
- fail: () => {
|
|
|
- uni.showToast({
|
|
|
- title: "扫码失败",
|
|
|
- icon: "none",
|
|
|
- });
|
|
|
- },
|
|
|
- });
|
|
|
- },
|
|
|
- checkBookISBN(isbn, type) {
|
|
|
- let url =
|
|
|
- type == "input"
|
|
|
- ? `/token/order/inputIsbn?isbn=${isbn}`
|
|
|
- : `/token/order/scanIsbn?isbn=${isbn}`;
|
|
|
- uni.$u.http.get(url).then((res) => {
|
|
|
- if (res.code == 200) {
|
|
|
- let code = res.data.code;
|
|
|
- if (code == 1) {
|
|
|
- res.data.num = 1;
|
|
|
- res.data.status = 1;
|
|
|
- res.data.recyclePrice = res.data.recycleMoney;
|
|
|
- this.currentBook = res.data;
|
|
|
- this.bookList.unshift(res.data);
|
|
|
- if (res.data.suit == 1) {
|
|
|
- this.$refs.setBookDialog.openPopup();
|
|
|
- }
|
|
|
- if (res.data.canInvite == 1) {
|
|
|
- this.$refs.upsellRef.open(res.data);
|
|
|
- }
|
|
|
- } else if (code == 2) {
|
|
|
- let item = this.bookList.find((v) => v.isbn === isbn);
|
|
|
- item.num = item.num + 1;
|
|
|
- if (res.data.canInvite == 1) {
|
|
|
- this.$refs.upsellRef.open(res.data);
|
|
|
+ },
|
|
|
+ checkBookISBN(isbn, type) {
|
|
|
+ let url =
|
|
|
+ type == "input"
|
|
|
+ ? `/token/order/inputIsbn?isbn=${isbn}`
|
|
|
+ : `/token/order/scanIsbn?isbn=${isbn}`;
|
|
|
+ uni.$u.http.get(url).then((res) => {
|
|
|
+ if (res.code == 200) {
|
|
|
+ let code = res.data.code;
|
|
|
+ if (code == 1) {
|
|
|
+ res.data.num = 1;
|
|
|
+ res.data.status = 1;
|
|
|
+ res.data.recyclePrice = res.data.recycleMoney;
|
|
|
+ this.currentBook = res.data;
|
|
|
+ this.bookList.unshift(res.data);
|
|
|
+ if (res.data.suit == 1) {
|
|
|
+ this.$refs.setBookDialog.openPopup();
|
|
|
+ }
|
|
|
+ if (res.data.canInvite == 1) {
|
|
|
+ this.$refs.upsellRef.open(res.data);
|
|
|
+ }
|
|
|
+ } else if (code == 2) {
|
|
|
+ let item = this.bookList.find((v) => v.isbn === isbn);
|
|
|
+ item.num = item.num + 1;
|
|
|
+ if (res.data.canInvite == 1) {
|
|
|
+ this.$refs.upsellRef.open(res.data);
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ this.handleBookCode(res.data.code);
|
|
|
}
|
|
|
+ this.getLastOrder();
|
|
|
} else {
|
|
|
- this.handleBookCode(res.data.code);
|
|
|
+ uni.showToast({
|
|
|
+ title: res.msg,
|
|
|
+ icon: "none",
|
|
|
+ });
|
|
|
}
|
|
|
- this.getLastOrder();
|
|
|
- } else {
|
|
|
- uni.showToast({
|
|
|
- title: res.msg,
|
|
|
- icon: "none",
|
|
|
- });
|
|
|
+ });
|
|
|
+ },
|
|
|
+ //处理扫码之后不同的状态 0-扫码频繁 1-成功 2-本单已有该书,数量+1 3-没有该书 4-本书暂不回收 5-超过每单最大可卖数量 6-单个订单最多40本书
|
|
|
+ handleBookCode(code) {
|
|
|
+ if (code == 1) {
|
|
|
+ this.bookList.push();
|
|
|
}
|
|
|
- });
|
|
|
- },
|
|
|
- //处理扫码之后不同的状态 0-扫码频繁 1-成功 2-本单已有该书,数量+1 3-没有该书 4-本书暂不回收 5-超过每单最大可卖数量 6-单个订单最多40本书
|
|
|
- handleBookCode(code) {
|
|
|
- if (code == 1) {
|
|
|
- this.bookList.push();
|
|
|
- }
|
|
|
- let tempKeys = [
|
|
|
- "tiredDialog",
|
|
|
- "",
|
|
|
- "",
|
|
|
- "noInfoDialog",
|
|
|
- "notAcceptDialog",
|
|
|
- "maxAcceptDialog",
|
|
|
- "orderMaxNumDialog",
|
|
|
- ];
|
|
|
- let key = tempKeys[code];
|
|
|
- if (key) {
|
|
|
- this.$refs[key].openPopup();
|
|
|
- }
|
|
|
- },
|
|
|
- //获取当前用户未提交订单 /api/token/order/lastOrder
|
|
|
- getLastOrder() {
|
|
|
- uni.$u.http.get("/token/order/lastOrder").then((res) => {
|
|
|
- if (res.code == 200) {
|
|
|
- this.orderInfo = res.data;
|
|
|
- if (res.data.showDialog == 1) {
|
|
|
- this.$refs.firstOrderFreePopup.openPopup();
|
|
|
- } else if (res.data.showDialog == 2) {
|
|
|
- this.$refs.kindReminder.openPopup();
|
|
|
- }
|
|
|
-
|
|
|
- this.bookList = res.data?.orderDetailList
|
|
|
- ? res.data.orderDetailList.map((v) => {
|
|
|
- v.orderId = res.data.orderId;
|
|
|
- return v;
|
|
|
- })
|
|
|
- : [];
|
|
|
- this.serviceList = res.data.serviceList || [];
|
|
|
- } else {
|
|
|
- uni.showToast({
|
|
|
- title: res.msg,
|
|
|
- icon: "none",
|
|
|
- });
|
|
|
+ let tempKeys = [
|
|
|
+ "tiredDialog",
|
|
|
+ "",
|
|
|
+ "",
|
|
|
+ "noInfoDialog",
|
|
|
+ "notAcceptDialog",
|
|
|
+ "maxAcceptDialog",
|
|
|
+ "orderMaxNumDialog",
|
|
|
+ ];
|
|
|
+ let key = tempKeys[code];
|
|
|
+ if (key) {
|
|
|
+ this.$refs[key].openPopup();
|
|
|
}
|
|
|
- }).finally(() => {
|
|
|
- // #ifdef MP-ALIPAY
|
|
|
- my.stopPullDownRefresh()
|
|
|
- // #endif
|
|
|
- })
|
|
|
- },
|
|
|
+ },
|
|
|
+ //获取当前用户未提交订单 /api/token/order/lastOrder
|
|
|
+ getLastOrder() {
|
|
|
+ uni.$u.http.get("/token/order/lastOrder").then((res) => {
|
|
|
+ if (res.code == 200) {
|
|
|
+ this.orderInfo = res.data;
|
|
|
+ if (res.data.showDialog == 1) {
|
|
|
+ this.$refs.firstOrderFreePopup.openPopup();
|
|
|
+ } else if (res.data.showDialog == 2) {
|
|
|
+ this.$refs.kindReminder.openPopup();
|
|
|
+ }
|
|
|
|
|
|
- goToScannedBooks() {
|
|
|
- uni.navigateTo({
|
|
|
- url: "/pages-home/pages/scaned-book",
|
|
|
- });
|
|
|
- },
|
|
|
- goToInputISBN() {
|
|
|
- this.$refs.isbnPopup.openPopup();
|
|
|
- },
|
|
|
- handleStartSelling() {
|
|
|
- // 标记已显示过温馨提示
|
|
|
- uni.setStorageSync("kindReminderShown", true);
|
|
|
- },
|
|
|
- // 处理位置变更
|
|
|
- handlePositionChange(position) {
|
|
|
- this.servicePosition = position;
|
|
|
+ this.bookList = res.data?.orderDetailList
|
|
|
+ ? res.data.orderDetailList.map((v) => {
|
|
|
+ v.orderId = res.data.orderId;
|
|
|
+ return v;
|
|
|
+ })
|
|
|
+ : [];
|
|
|
+ this.serviceList = res.data.serviceList || [];
|
|
|
+ } else {
|
|
|
+ uni.showToast({
|
|
|
+ title: res.msg,
|
|
|
+ icon: "none",
|
|
|
+ });
|
|
|
+ }
|
|
|
+ }).finally(() => {
|
|
|
+ // #ifdef MP-ALIPAY
|
|
|
+ my.stopPullDownRefresh()
|
|
|
+ // #endif
|
|
|
+ })
|
|
|
+ },
|
|
|
+
|
|
|
+ goToScannedBooks() {
|
|
|
+ uni.navigateTo({
|
|
|
+ url: "/pages-home/pages/scaned-book",
|
|
|
+ });
|
|
|
+ },
|
|
|
+ goToInputISBN() {
|
|
|
+ this.$refs.isbnPopup.openPopup();
|
|
|
+ },
|
|
|
+ handleStartSelling() {
|
|
|
+ // 标记已显示过温馨提示
|
|
|
+ uni.setStorageSync("kindReminderShown", true);
|
|
|
+ },
|
|
|
+ // 处理位置变更
|
|
|
+ handlePositionChange(position) {
|
|
|
+ this.servicePosition = position;
|
|
|
+ },
|
|
|
},
|
|
|
- },
|
|
|
-};
|
|
|
+ };
|
|
|
</script>
|
|
|
|
|
|
<style lang="scss" scoped>
|
|
|
-.service-btn {
|
|
|
- height: max-content;
|
|
|
- background-color: transparent;
|
|
|
- padding: 0;
|
|
|
-}
|
|
|
-
|
|
|
-.container {
|
|
|
- height: 100%;
|
|
|
- position: relative;
|
|
|
- overflow: auto;
|
|
|
- z-index: 1;
|
|
|
- /* #ifdef MP-WEIXIN */
|
|
|
- min-height: 100vh;
|
|
|
- /* #endif */
|
|
|
- /* #ifndef MP-WEIXIN */
|
|
|
- min-height: calc(100vh - 120rpx);
|
|
|
-
|
|
|
- /* #endif */
|
|
|
- &.book-list {
|
|
|
- padding-bottom: 300rpx;
|
|
|
+ .service-btn {
|
|
|
+ height: max-content;
|
|
|
+ background-color: transparent;
|
|
|
+ padding: 0;
|
|
|
}
|
|
|
|
|
|
- padding-bottom: 130rpx;
|
|
|
+ .container {
|
|
|
+ height: 100%;
|
|
|
+ position: relative;
|
|
|
+ overflow: auto;
|
|
|
+ z-index: 1;
|
|
|
+ /* #ifdef MP-WEIXIN */
|
|
|
+ min-height: 100vh;
|
|
|
+ /* #endif */
|
|
|
+ /* #ifndef MP-WEIXIN */
|
|
|
+ min-height: calc(100vh - 120rpx);
|
|
|
|
|
|
- .nav-title {
|
|
|
- font-family: PingFang SC;
|
|
|
- font-weight: bold;
|
|
|
- font-size: 34rpx;
|
|
|
- color: #ffffff;
|
|
|
- padding-left: 40rpx;
|
|
|
- /* #ifdef MP-ALIPAY */
|
|
|
- padding-left: 70rpx;
|
|
|
/* #endif */
|
|
|
+ &.book-list {
|
|
|
+ padding-bottom: 300rpx;
|
|
|
+ }
|
|
|
+
|
|
|
+ padding-bottom: 130rpx;
|
|
|
+
|
|
|
+ .nav-title {
|
|
|
+ font-family: PingFang SC;
|
|
|
+ font-weight: bold;
|
|
|
+ font-size: 34rpx;
|
|
|
+ color: #ffffff;
|
|
|
+ padding-left: 40rpx;
|
|
|
+ /* #ifdef MP-ALIPAY */
|
|
|
+ padding-left: 70rpx;
|
|
|
+ /* #endif */
|
|
|
+ }
|
|
|
}
|
|
|
-}
|
|
|
|
|
|
-.common-text {
|
|
|
- font-family: PingFang SC;
|
|
|
- font-weight: 500;
|
|
|
- font-size: 28rpx;
|
|
|
- color: #999999;
|
|
|
+ .common-text {
|
|
|
+ font-family: PingFang SC;
|
|
|
+ font-weight: 500;
|
|
|
+ font-size: 28rpx;
|
|
|
+ color: #999999;
|
|
|
+
|
|
|
+ &.tip {
|
|
|
+ color: #ff8a4b;
|
|
|
+ font-size: 26rpx;
|
|
|
+ }
|
|
|
+ }
|
|
|
|
|
|
- &.tip {
|
|
|
- color: #ff8a4b;
|
|
|
- font-size: 26rpx;
|
|
|
+ .color-red {
|
|
|
+ color: #ff0000;
|
|
|
+ margin: 0 10rpx;
|
|
|
}
|
|
|
-}
|
|
|
-
|
|
|
-.color-red {
|
|
|
- color: #ff0000;
|
|
|
- margin: 0 10rpx;
|
|
|
-}
|
|
|
-
|
|
|
-.color-green {
|
|
|
- color: #276f1e;
|
|
|
-}
|
|
|
-
|
|
|
-.bottom-fixed {
|
|
|
- position: fixed;
|
|
|
- left: 0;
|
|
|
- right: 0;
|
|
|
- bottom: 0;
|
|
|
- z-index: 9;
|
|
|
- background-color: #ffffff;
|
|
|
- /* #ifdef H5 */
|
|
|
- padding-bottom: 120rpx;
|
|
|
- /* #endif */
|
|
|
-
|
|
|
- .btn-wrap {
|
|
|
- display: flex;
|
|
|
- gap: 20rpx;
|
|
|
- padding: 20rpx;
|
|
|
- padding-bottom: 0;
|
|
|
-
|
|
|
- button {
|
|
|
- flex: 1;
|
|
|
- height: 88rpx;
|
|
|
- border-radius: 10rpx;
|
|
|
+
|
|
|
+ .color-green {
|
|
|
+ color: #276f1e;
|
|
|
+ }
|
|
|
+
|
|
|
+ .bottom-fixed {
|
|
|
+ position: fixed;
|
|
|
+ left: 0;
|
|
|
+ right: 0;
|
|
|
+ bottom: 0;
|
|
|
+ z-index: 9;
|
|
|
+ background-color: #ffffff;
|
|
|
+ /* #ifdef H5 */
|
|
|
+ padding-bottom: 120rpx;
|
|
|
+ /* #endif */
|
|
|
+
|
|
|
+ .btn-wrap {
|
|
|
display: flex;
|
|
|
- align-items: center;
|
|
|
- justify-content: center;
|
|
|
- gap: 10rpx;
|
|
|
- border: none;
|
|
|
+ gap: 20rpx;
|
|
|
+ padding: 20rpx;
|
|
|
+ padding-bottom: 0;
|
|
|
+
|
|
|
+ button {
|
|
|
+ flex: 1;
|
|
|
+ height: 88rpx;
|
|
|
+ border-radius: 10rpx;
|
|
|
+ display: flex;
|
|
|
+ align-items: center;
|
|
|
+ justify-content: center;
|
|
|
+ gap: 10rpx;
|
|
|
+ border: none;
|
|
|
+
|
|
|
+ text {
|
|
|
+ font-size: 32rpx;
|
|
|
+ }
|
|
|
|
|
|
- text {
|
|
|
- font-size: 32rpx;
|
|
|
+ &::after {
|
|
|
+ border: none;
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
- &::after {
|
|
|
- border: none;
|
|
|
+ .isbn-btn {
|
|
|
+ background-color: #ffffff;
|
|
|
+ color: #4cd964;
|
|
|
+ border: 3rpx solid #4cd964;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
- .isbn-btn {
|
|
|
- background-color: #ffffff;
|
|
|
- color: #4cd964;
|
|
|
- border: 3rpx solid #4cd964;
|
|
|
+ .scan-btn {
|
|
|
+ background-color: #4cd964;
|
|
|
+ color: #ffffff;
|
|
|
}
|
|
|
- }
|
|
|
|
|
|
- .scan-btn {
|
|
|
- background-color: #4cd964;
|
|
|
- color: #ffffff;
|
|
|
- }
|
|
|
+ .next-btn {
|
|
|
+ margin: 0;
|
|
|
+ margin-left: 40rpx;
|
|
|
|
|
|
- .next-btn {
|
|
|
- margin: 0;
|
|
|
- margin-left: 40rpx;
|
|
|
-
|
|
|
- &[aria-disabled="true"] {
|
|
|
- background-color: #cccccc;
|
|
|
- color: #ffffff;
|
|
|
- opacity: 0.7;
|
|
|
- cursor: not-allowed;
|
|
|
+ &[aria-disabled="true"] {
|
|
|
+ background-color: #cccccc;
|
|
|
+ color: #ffffff;
|
|
|
+ opacity: 0.7;
|
|
|
+ cursor: not-allowed;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
-}
|
|
|
</style>
|