From 3a9caf54e71a90bdc2899bcc7d49153bf4b143b4 Mon Sep 17 00:00:00 2001 From: qijq <624811160@qq.com> Date: Sun, 8 Jun 2025 10:07:32 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E9=A9=B3=E5=9B=9E=E5=AE=A1?= =?UTF-8?q?=E6=A0=B8=E5=92=8C=E4=BF=AE=E6=94=B9=E4=B8=80=E4=BA=9B=E6=A0=B7?= =?UTF-8?q?=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- java-mall-app-shop-admin/App.vue | 23 +- java-mall-app-shop-admin/api/audit.js | 56 +- java-mall-app-shop-admin/api/order.js | 25 +- java-mall-app-shop-admin/api/protocol.js | 8 +- .../components/tabbar/tabbar.vue | 25 +- .../tui-radio-group/tui-radio-group.vue | 105 ++ .../components/tui-radio/tui-radio.vue | 222 ++++ .../components/uni-nav-bar/uni-nav-bar.vue | 388 +++++++ .../components/uni-nav-bar/uni-status-bar.vue | 33 + java-mall-app-shop-admin/config/appUpdate.js | 557 +++++----- java-mall-app-shop-admin/main.js | 35 +- java-mall-app-shop-admin/manifest.json | 288 +++--- java-mall-app-shop-admin/pages.json | 15 +- java-mall-app-shop-admin/pages/IM/IM.vue | 40 + .../pages/IM/IMmsgContent.vue | 8 +- .../pages/audit/businessType.vue | 28 +- .../pages/audit/checkAudit.vue | 977 ++++++++++++++++-- .../pages/audit/formConfig.js | 351 ++++--- .../pages/audit/mapAddress.vue | 21 +- .../pages/audit/shop1.vue | 90 +- .../pages/audit/shop2.vue | 509 ++++++++- .../pages/audit/shop3.vue | 74 +- .../pages/forgetPassword/forgetPassword.vue | 21 +- .../pages/index/index.vue | 35 +- .../pages/login/launch.vue | 94 +- .../pages/login/login.vue | 64 +- .../pages/my/aboutUs/aboutUs.vue | 10 +- .../pages/my/printer/printerList.vue | 34 +- .../pages/my/shopInfo.vue | 13 +- .../pages/my/shopQRcode/shopQRcode.vue | 5 +- .../pages/my/versions.vue | 17 +- .../pages/order/order.vue | 42 +- .../pages/register/register.vue | 27 +- java-mall-app-shop-admin/static/logo-2.png | Bin 1923872 -> 53539 bytes java-mall-app-shop-admin/static/no-im-msg.png | Bin 0 -> 75576 bytes java-mall-app-shop-admin/static/xiaofa-bg.png | Bin 44299 -> 1667528 bytes .../static/xiaofa-logo.png | Bin 2563972 -> 53539 bytes .../store/modules/order.js | 30 + .../store/modules/user.js | 79 +- .../styles/variables.scss | 2 + java-mall-app-shop-admin/utils/http.js | 24 +- java-mall-app-shop-admin/vue.config.js | 20 +- 42 files changed, 3329 insertions(+), 1066 deletions(-) create mode 100644 java-mall-app-shop-admin/components/tui-radio-group/tui-radio-group.vue create mode 100644 java-mall-app-shop-admin/components/tui-radio/tui-radio.vue create mode 100644 java-mall-app-shop-admin/components/uni-nav-bar/uni-nav-bar.vue create mode 100644 java-mall-app-shop-admin/components/uni-nav-bar/uni-status-bar.vue create mode 100644 java-mall-app-shop-admin/static/no-im-msg.png create mode 100644 java-mall-app-shop-admin/store/modules/order.js create mode 100644 java-mall-app-shop-admin/styles/variables.scss diff --git a/java-mall-app-shop-admin/App.vue b/java-mall-app-shop-admin/App.vue index 9483819..bd46689 100644 --- a/java-mall-app-shop-admin/App.vue +++ b/java-mall-app-shop-admin/App.vue @@ -15,19 +15,18 @@ export default { getCurrentNo((res) => { this.version = res.version; }); - this.onAPPUpdate(); + + const hasAgreed = uni.getStorageSync("isNeedAgreementDialog"); + if (hasAgreed) { + this.onAPPUpdate(); + } + // #endif - setTimeout(() => { - uni.hideTabBar(); - }, 500); }, computed: { ...mapState("user", ["uid", "userInfo", "socket"]), }, onShow: function () { - setTimeout(() => { - uni.hideTabBar(); - }, 500); setTimeout(() => { if (this.userInfo && Object.keys(this.userInfo).length > 0) { this.connectSocket(this.userInfo); @@ -49,6 +48,16 @@ export default { // @import "./uni_modules/uview-ui/index.scss"; // @import "./uni_modules/uview-ui/theme.scss"; /*每个页面公共css */ +@import "@/static/reset.css"; +@import "@/styles/myui.scss"; @import "@/static/font/iconfont.css"; + +/deep/.uni-tabbar-bottom { + display: none; +} + +/deep/.uni-navbar { + min-height: 110rpx; +} diff --git a/java-mall-app-shop-admin/api/audit.js b/java-mall-app-shop-admin/api/audit.js index 2b3d71d..2bc54ab 100644 --- a/java-mall-app-shop-admin/api/audit.js +++ b/java-mall-app-shop-admin/api/audit.js @@ -1,4 +1,5 @@ -import http from '../utils/http'; +import http from "../utils/http"; +import config from "../config/config"; /** * 获取省市区 @@ -10,8 +11,8 @@ import http from '../utils/http'; export function GetAppDistrict() { return http({ - url: '/shop/shop-base-district/getAppDistrict', - method: 'get', + url: "/shop/shop-base-district/getAppDistrict", + method: "get", }); } @@ -20,13 +21,13 @@ export function GetAppDistrict() { * @author Seven * @data 2025-3-5 * @returns { list [] } - * @see https://mall.gpxscs.cn/mobile/shop/shop-base-product-category/listCategory + * @see https://mall.gpxscs.cn/api/admin/shop/shop-base-store-category/categoryTree */ export function GetMeritoCategory() { return http({ - url: '/shop/shop-base-product-category/listCategory', - method: 'get', + url: "/shop/shop-base-product-category/listCategory", + method: "get", }); } @@ -41,8 +42,8 @@ export function GetMeritoCategory() { export function GetTreeCategory() { return http({ - url: '/shop/shop-base-product-category/treeCategory', - method: 'get', + url: "/shop/shop-base-product-category/treeCategory", + method: "get", }); } @@ -64,8 +65,8 @@ export function GetBaiduSuggestion(params = {}) { params.isFilter = true; return new Promise((resolve, reject) => { http({ - url: '/shop/merch/baidu/place/v2/suggestion', - method: 'get', + url: "/shop/merch/baidu/place/v2/suggestion", + method: "get", params, }) .then((res) => { @@ -90,13 +91,13 @@ export function GetBaiduSuggestion(params = {}) { export function GetAuditStatus(params = {}) { return new Promise((resolve, reject) => { http({ - url: '/shop/merch/fresh/approval/status', - method: 'post', + url: "/shop/merch/fresh/approval/status", + method: "post", data: params, }) .then((res) => { if (res && res.status == 200) { - uni.setStorageSync('approvalStatus', res.data.approval_status); + uni.setStorageSync("approvalStatus", res.data.approval_status); } resolve(res); }) @@ -116,13 +117,13 @@ export function GetAuditStatus(params = {}) { export function GetAuditInfo(params) { return new Promise((resolve, reject) => { http({ - url: '/shop/merch/detail', - method: 'post', + url: "/shop/merch/detail", + method: "post", data: params, }) .then((res) => { if (res && res.data && res.status == 200) { - uni.setStorageSync('approvalStatus', res.data.approval_status); + uni.setStorageSync("approvalStatus", res.data.approval_status); } resolve(res); }) @@ -140,8 +141,8 @@ export function GetAuditInfo(params) { export function GetBankList() { return http({ - url: '/shop/global/banks/list', - method: 'post', + url: "/shop/global/banks/list", + method: "post", }); } @@ -202,8 +203,8 @@ export function GetBankList() { export function GetMerchApply(params) { return http({ - url: '/shop/merch/apply', - method: 'post', + url: "/shop/merch/apply", + method: "post", data: params, }); } @@ -218,8 +219,8 @@ export function GetMerchApply(params) { export function GetRestartMerchApply(params) { return http({ - url: '/shop/merch/re-apply', - method: 'post', + url: "/shop/merch/re-apply", + method: "post", data: params, }); } @@ -229,14 +230,15 @@ export function GetRestartMerchApply(params) { * @author Seven * @data 2025-3-4 * @returns { } - * @see https://mall.gpxscs.cn/mobile/shop/store/biz-category/list + * @see https://mall.gpxscs.cn/api/mobile/shop/shop-base-store-category/list */ export function GetBizCategoryList(params) { return http({ - url: '/shop/store/biz-category/list', - method: 'post', + url: "/shop/shop-base-store-category/list", + method: "post", data: params, + baseURL: config.apiMobile, }); } @@ -250,8 +252,8 @@ export function GetBizCategoryList(params) { export function branchBankSearchApi(params) { return http({ - url: '/shop/lakala/tk/bank/search', - method: 'post', + url: "/shop/lakala/tk/bank/search", + method: "post", data: params, }); } diff --git a/java-mall-app-shop-admin/api/order.js b/java-mall-app-shop-admin/api/order.js index 6271131..84d37db 100644 --- a/java-mall-app-shop-admin/api/order.js +++ b/java-mall-app-shop-admin/api/order.js @@ -1,5 +1,5 @@ -import http from '../utils/http'; -import config from '../config/config'; +import http from "../utils/http"; +import config from "../config/config"; /** * 获取订单列表 @@ -19,8 +19,8 @@ import config from '../config/config'; export function GetOrderList(params) { return http({ - url: '/shop/userOrder/mch/order/list', - method: 'post', + url: "/shop/userOrder/mch/order/list", + method: "post", data: params, }); } @@ -63,3 +63,20 @@ export function GetOrderList(params) { // }).catch(e => reject(console.warn(e))) // }) // } + +/** + * 获取订单个推 + * @author Seven + * @data 2025-3-28 + * @param channel + * @returns { cid:f9da7081a7951cff6d7f1d4e2d2f270b } + * @see https://mall.gpxscs.cn/api/mobile/account/login/push/testcase + */ + +export function GetOrderPush(params) { + return http({ + url: "/account/login/push/testcase", + method: "post", + data: params, + }); +} diff --git a/java-mall-app-shop-admin/api/protocol.js b/java-mall-app-shop-admin/api/protocol.js index 2cec978..9eb81a0 100644 --- a/java-mall-app-shop-admin/api/protocol.js +++ b/java-mall-app-shop-admin/api/protocol.js @@ -1,5 +1,5 @@ -import http from '../utils/http'; -import config from '../config/config'; +import http from "../utils/http"; +import config from "../config/config"; /** * 获取隐私协议 @@ -12,8 +12,8 @@ import config from '../config/config'; export function GetProtoco(params) { return http({ - url: '/account/login/protocol', - method: 'get', + url: "/account/login/protocol", + method: "get", params, baseURL: config.baseApi, }); diff --git a/java-mall-app-shop-admin/components/tabbar/tabbar.vue b/java-mall-app-shop-admin/components/tabbar/tabbar.vue index af3b1c9..f2812b7 100644 --- a/java-mall-app-shop-admin/components/tabbar/tabbar.vue +++ b/java-mall-app-shop-admin/components/tabbar/tabbar.vue @@ -5,7 +5,8 @@ @change="changeTabbar" :fixed="true" :placeholder="false" - activeColor="#4b71ff" + :border="true" + activeColor="#fe4119" :safeAreaInsetBottom="true" > @@ -14,7 +15,7 @@ custom-prefix="custom-icon-gongzuotai custom-icon" size="22" slot="active-icon" - color="#4b71ff" + color="#fe4119" > { + setTimeout(() => { + uni.hideTabBar(); + }, 1); + }); + }, watch: { imWeidu: { handler(newValue, oldValue) { @@ -126,9 +134,6 @@ export default { }, 0); } }, - onShow() { - console.log("asdasdasd"); - }, methods: { async changeTabbar(e) { switch (e) { @@ -189,4 +194,8 @@ export default { } } } + +/deep/.uni-tabbar-bottom { + display: none; +} diff --git a/java-mall-app-shop-admin/components/tui-radio-group/tui-radio-group.vue b/java-mall-app-shop-admin/components/tui-radio-group/tui-radio-group.vue new file mode 100644 index 0000000..e7b22bf --- /dev/null +++ b/java-mall-app-shop-admin/components/tui-radio-group/tui-radio-group.vue @@ -0,0 +1,105 @@ + + + + \ No newline at end of file diff --git a/java-mall-app-shop-admin/components/tui-radio/tui-radio.vue b/java-mall-app-shop-admin/components/tui-radio/tui-radio.vue new file mode 100644 index 0000000..4d0600a --- /dev/null +++ b/java-mall-app-shop-admin/components/tui-radio/tui-radio.vue @@ -0,0 +1,222 @@ + + + + + diff --git a/java-mall-app-shop-admin/components/uni-nav-bar/uni-nav-bar.vue b/java-mall-app-shop-admin/components/uni-nav-bar/uni-nav-bar.vue new file mode 100644 index 0000000..6f2e56a --- /dev/null +++ b/java-mall-app-shop-admin/components/uni-nav-bar/uni-nav-bar.vue @@ -0,0 +1,388 @@ + + + + + diff --git a/java-mall-app-shop-admin/components/uni-nav-bar/uni-status-bar.vue b/java-mall-app-shop-admin/components/uni-nav-bar/uni-status-bar.vue new file mode 100644 index 0000000..8da78d1 --- /dev/null +++ b/java-mall-app-shop-admin/components/uni-nav-bar/uni-status-bar.vue @@ -0,0 +1,33 @@ + + + + + diff --git a/java-mall-app-shop-admin/config/appUpdate.js b/java-mall-app-shop-admin/config/appUpdate.js index d3acdca..903253f 100644 --- a/java-mall-app-shop-admin/config/appUpdate.js +++ b/java-mall-app-shop-admin/config/appUpdate.js @@ -1,14 +1,14 @@ // #ifdef APP-PLUS -import componentConfig from '@/config/componentConfig'; +import componentConfig from "@/config/componentConfig"; const platform = uni.getSystemInfoSync().platform; // 主颜色 const $mainColor = componentConfig.appUpdateColor ? componentConfig.appUpdateColor - : 'FF5B78'; + : "FF5B78"; // 弹窗图标url const $iconUrl = componentConfig.appUpdateIcon ? componentConfig.appUpdateIcon - : '@/static/ic_ar.png'; + : "@/static/ic_ar.png"; // 获取当前应用的版本号 export const getCurrentNo = function (callback) { @@ -25,12 +25,12 @@ export const getCurrentNo = function (callback) { const getDownload = function (data) { console.log(data.downloadUrl); let dtask; - if (data.updateType == 'forcibly' || data.updateType == 'solicit') { + if (data.updateType == "forcibly" || data.updateType == "solicit") { let popupData = { progress: true, buttonNum: 2, }; - if (data.updateType == 'forcibly') { + if (data.updateType == "forcibly") { popupData.buttonNum = 0; } let lastProgressValue = 0; @@ -38,34 +38,36 @@ const getDownload = function (data) { dtask = plus.downloader.createDownload( data.downloadUrl, { - filename: '_doc/update/', + filename: "_doc/update/", }, function (download, status) { if (status == 200) { popupObj.change({ progressValue: 100, - progressTip: '正在安装文件...', + progressTip: "正在安装文件...", progress: true, buttonNum: 0, }); plus.runtime.install( download.filename, - {}, + { + force: true, + }, function () { popupObj.change({ - contentText: '应用资源更新完成!', + contentText: "应用资源更新完成!", buttonNum: 1, progress: false, }); }, function (e) { popupObj.cancel(); - plus.nativeUI.alert('安装文件失败[' + e.code + ']:' + e.message); + plus.nativeUI.alert("安装文件失败[" + e.code + "]:" + e.message); } ); } else { popupObj.change({ - contentText: '文件下载失败...', + contentText: "文件下载失败...", buttonNum: 1, progress: false, }); @@ -73,19 +75,19 @@ const getDownload = function (data) { } ); dtask.start(); - dtask.addEventListener('statechanged', function (task, status) { + dtask.addEventListener("statechanged", function (task, status) { switch (task.state) { case 1: // 开始 popupObj.change({ progressValue: 0, - progressTip: '准备下载...', + progressTip: "准备下载...", progress: true, }); break; case 2: // 已连接到服务器 popupObj.change({ progressValue: 0, - progressTip: '开始下载...', + progressTip: "开始下载...", progress: true, }); break; @@ -97,7 +99,7 @@ const getDownload = function (data) { lastProgressValue = progress; popupObj.change({ progressValue: progress, - progressTip: '已下载' + progress + '%', + progressTip: "已下载" + progress + "%", progress: true, }); } @@ -108,34 +110,36 @@ const getDownload = function (data) { popupObj.cancelDownload = function () { dtask && dtask.abort(); uni.showToast({ - title: '已取消下载', - icon: 'none', + title: "已取消下载", + icon: "none", }); }; // 重启APP popupObj.reboot = function () { plus.runtime.restart(); }; - } else if (data.updateType == 'silent') { + } else if (data.updateType == "silent") { dtask = plus.downloader.createDownload( data.downloadUrl, { - filename: '_doc/update/', + filename: "_doc/update/", }, function (download, status) { if (status == 200) { plus.runtime.install( download.filename, - {}, + { + force: true, + }, function () { - console.log('应用资源更新完成'); + console.log("应用资源更新完成"); }, function (e) { - plus.nativeUI.alert('安装文件失败[' + e.code + ']:' + e.message); + plus.nativeUI.alert("安装文件失败[" + e.code + "]:" + e.message); } ); } else { - plus.nativeUI.alert('文件下载失败...'); + plus.nativeUI.alert("文件下载失败..."); } } ); @@ -144,7 +148,7 @@ const getDownload = function (data) { }; // 文字换行 function drawtext(text, maxWidth) { - let textArr = text.split(''); + let textArr = text.split(""); let len = textArr.length; // 上个节点 let previousNode = 0; @@ -163,7 +167,7 @@ function drawtext(text, maxWidth) { if (letterWidth > 0) { if (nodeWidth + chineseWidth + letterWidth * otherWidth > maxWidth) { rowText.push({ - type: 'text', + type: "text", content: text.substring(previousNode, i), }); previousNode = i; @@ -176,7 +180,7 @@ function drawtext(text, maxWidth) { } else { if (nodeWidth + chineseWidth > maxWidth) { rowText.push({ - type: 'text', + type: "text", content: text.substring(previousNode, i), }); previousNode = i; @@ -188,15 +192,15 @@ function drawtext(text, maxWidth) { } else { if (/\n/g.test(textArr[i])) { rowText.push({ - type: 'break', + type: "break", content: text.substring(previousNode, i), }); previousNode = i + 1; nodeWidth = 0; letterWidth = 0; - } else if (textArr[i] == '\\' && textArr[i + 1] == 'n') { + } else if (textArr[i] == "\\" && textArr[i + 1] == "n") { rowText.push({ - type: 'break', + type: "break", content: text.substring(previousNode, i), }); previousNode = i + 2; @@ -206,7 +210,7 @@ function drawtext(text, maxWidth) { letterWidth += 1; if (nodeWidth + letterWidth * otherWidth > maxWidth) { rowText.push({ - type: 'text', + type: "text", content: text.substring(previousNode, i + 1 - letterWidth), }); previousNode = i + 1 - letterWidth; @@ -216,7 +220,7 @@ function drawtext(text, maxWidth) { } else { if (nodeWidth + otherWidth > maxWidth) { rowText.push({ - type: 'text', + type: "text", content: text.substring(previousNode, i), }); previousNode = i; @@ -229,7 +233,7 @@ function drawtext(text, maxWidth) { } if (previousNode < len) { rowText.push({ - type: 'text', + type: "text", content: text.substring(previousNode, len), }); } @@ -238,13 +242,13 @@ function drawtext(text, maxWidth) { // 是否更新弹窗 function updatePopup(data, callback) { // 弹窗遮罩层 - let maskLayer = new plus.nativeObj.View('maskLayer', { + let maskLayer = new plus.nativeObj.View("maskLayer", { //先创建遮罩层 - top: '0px', - left: '0px', - height: '100%', - width: '100%', - backgroundColor: 'rgba(0,0,0,0.5)', + top: "0px", + left: "0px", + height: "100%", + width: "100%", + backgroundColor: "rgba(0,0,0,0.5)", }); // 以下为计算菜单的nview绘制布局,为固定算法,使用者无关关心 @@ -264,30 +268,30 @@ function updatePopup(data, callback) { let popupViewContentList = [ { src: $iconUrl, - id: 'logo', - tag: 'img', + id: "logo", + tag: "img", position: { - top: '0px', - left: (popupViewWidth - 124) / 2 + 'px', - width: '124px', - height: '80px', + top: "0px", + left: (popupViewWidth - 124) / 2 + "px", + width: "124px", + height: "80px", }, }, { - tag: 'font', - id: 'title', - text: '发现新版本' + data.versionName, + tag: "font", + id: "title", + text: "发现新版本" + data.versionName, textStyles: { - size: '18px', - color: '#333', - weight: 'bold', - whiteSpace: 'normal', + size: "18px", + color: "#333", + weight: "bold", + whiteSpace: "normal", }, position: { - top: '90px', - left: viewContentPadding + 'px', - width: viewContentWidth + 'px', - height: '30px', + top: "90px", + left: viewContentPadding + "px", + width: viewContentWidth + "px", + height: "30px", }, }, ]; @@ -299,158 +303,158 @@ function updatePopup(data, callback) { contentTop += textHeight; } popupViewContentList.push({ - tag: 'font', - id: 'content' + index + 1, + tag: "font", + id: "content" + index + 1, text: item.content, textStyles: { - size: '14px', - color: '#666', - lineSpacing: '50%', - align: 'left', + size: "14px", + color: "#666", + lineSpacing: "50%", + align: "left", }, position: { - top: contentTop + 'px', - left: viewContentPadding + 'px', - width: viewContentWidth + 'px', - height: textHeight + 'px', + top: contentTop + "px", + left: viewContentPadding + "px", + width: viewContentWidth + "px", + height: textHeight + "px", }, }); - if (item.type == 'break') { + if (item.type == "break") { contentTop += 10; popupViewHeight += 10; } }); - if (data.updateType == 'forcibly') { + if (data.updateType == "forcibly") { popupViewContentList.push({ - tag: 'rect', //绘制底边按钮 + tag: "rect", //绘制底边按钮 rectStyles: { - radius: '6px', + radius: "6px", color: $mainColor, }, position: { - bottom: viewContentPadding + 'px', - left: viewContentPadding + 'px', - width: viewContentWidth + 'px', - height: '30px', + bottom: viewContentPadding + "px", + left: viewContentPadding + "px", + width: viewContentWidth + "px", + height: "30px", }, }); popupViewContentList.push({ - tag: 'font', - id: 'confirmText', - text: '立即升级', + tag: "font", + id: "confirmText", + text: "立即升级", textStyles: { - size: '14px', - color: '#FFF', - lineSpacing: '0%', + size: "14px", + color: "#FFF", + lineSpacing: "0%", }, position: { - bottom: viewContentPadding + 'px', - left: viewContentPadding + 'px', - width: viewContentWidth + 'px', - height: '30px', + bottom: viewContentPadding + "px", + left: viewContentPadding + "px", + width: viewContentWidth + "px", + height: "30px", }, }); } else { // 绘制底边按钮 popupViewContentList.push({ - tag: 'rect', - id: 'cancelBox', + tag: "rect", + id: "cancelBox", rectStyles: { - radius: '3px', - borderColor: '#f1f1f1', - borderWidth: '1px', + radius: "3px", + borderColor: "#f1f1f1", + borderWidth: "1px", }, position: { - bottom: viewContentPadding + 'px', - left: viewContentPadding + 'px', - width: (viewContentWidth - viewContentPadding) / 2 + 'px', - height: '30px', + bottom: viewContentPadding + "px", + left: viewContentPadding + "px", + width: (viewContentWidth - viewContentPadding) / 2 + "px", + height: "30px", }, }); popupViewContentList.push({ - tag: 'rect', - id: 'confirmBox', + tag: "rect", + id: "confirmBox", rectStyles: { - radius: '3px', + radius: "3px", color: $mainColor, }, position: { - bottom: viewContentPadding + 'px', + bottom: viewContentPadding + "px", left: (viewContentWidth - viewContentPadding) / 2 + viewContentPadding * 2 + - 'px', - width: (viewContentWidth - viewContentPadding) / 2 + 'px', - height: '30px', + "px", + width: (viewContentWidth - viewContentPadding) / 2 + "px", + height: "30px", }, }); popupViewContentList.push({ - tag: 'font', - id: 'cancelText', - text: '暂不升级', + tag: "font", + id: "cancelText", + text: "暂不升级", textStyles: { - size: '14px', - color: '#666', - lineSpacing: '0%', - whiteSpace: 'normal', + size: "14px", + color: "#666", + lineSpacing: "0%", + whiteSpace: "normal", }, position: { - bottom: viewContentPadding + 'px', - left: viewContentPadding + 'px', - width: (viewContentWidth - viewContentPadding) / 2 + 'px', - height: '30px', + bottom: viewContentPadding + "px", + left: viewContentPadding + "px", + width: (viewContentWidth - viewContentPadding) / 2 + "px", + height: "30px", }, }); popupViewContentList.push({ - tag: 'font', - id: 'confirmText', - text: '立即升级', + tag: "font", + id: "confirmText", + text: "立即升级", textStyles: { - size: '14px', - color: '#FFF', - lineSpacing: '0%', - whiteSpace: 'normal', + size: "14px", + color: "#FFF", + lineSpacing: "0%", + whiteSpace: "normal", }, position: { - bottom: viewContentPadding + 'px', + bottom: viewContentPadding + "px", left: (viewContentWidth - viewContentPadding) / 2 + viewContentPadding * 2 + - 'px', - width: (viewContentWidth - viewContentPadding) / 2 + 'px', - height: '30px', + "px", + width: (viewContentWidth - viewContentPadding) / 2 + "px", + height: "30px", }, }); } // 弹窗内容 - let popupView = new plus.nativeObj.View('popupView', { + let popupView = new plus.nativeObj.View("popupView", { //创建底部图标菜单 - tag: 'rect', - top: (screenHeight - popupViewHeight) / 2 + 'px', - left: '15%', - height: popupViewHeight + 'px', - width: '70%', + tag: "rect", + top: (screenHeight - popupViewHeight) / 2 + "px", + left: "15%", + height: popupViewHeight + "px", + width: "70%", }); // 绘制白色背景 popupView.drawRect( { - color: '#FFFFFF', - radius: '8px', + color: "#FFFFFF", + radius: "8px", }, { - top: '40px', - height: popupViewHeight - 40 + 'px', + top: "40px", + height: popupViewHeight - 40 + "px", } ); popupView.draw(popupViewContentList); - popupView.addEventListener('click', function (e) { + popupView.addEventListener("click", function (e) { let maxTop = popupViewHeight - viewContentPadding; let maxLeft = popupViewWidth - viewContentPadding; let buttonWidth = (viewContentWidth - viewContentPadding) / 2; if (e.clientY > maxTop - 30 && e.clientY < maxTop) { - if (data.updateType == 'forcibly') { + if (data.updateType == "forcibly") { if (e.clientX > viewContentPadding && e.clientX < maxLeft) { // 立即升级 maskLayer.hide(); @@ -474,9 +478,9 @@ function updatePopup(data, callback) { } } }); - if (data.updateType == 'solicit') { + if (data.updateType == "solicit") { // 点击遮罩层 - maskLayer.addEventListener('click', function () { + maskLayer.addEventListener("click", function () { //处理遮罩层点击 maskLayer.hide(); popupView.hide(); @@ -499,45 +503,45 @@ function downloadPopupDrawing(data) { const viewContentWidth = popupViewWidth - viewContentPadding * 2; // 弹窗容器高度 let popupViewHeight = viewContentPadding * 3 + 60; - let progressTip = data.progressTip || '准备下载...'; - let contentText = data.contentText || '正在为您更新,请耐心等待'; + let progressTip = data.progressTip || "准备下载..."; + let contentText = data.contentText || "正在为您更新,请耐心等待"; let elementList = [ { - tag: 'rect', //背景色 - color: '#FFFFFF', + tag: "rect", //背景色 + color: "#FFFFFF", rectStyles: { - radius: '8px', + radius: "8px", }, }, { - tag: 'font', - id: 'title', - text: '升级APP', + tag: "font", + id: "title", + text: "升级APP", textStyles: { - size: '16px', - color: '#333', - weight: 'bold', - verticalAlign: 'middle', - whiteSpace: 'normal', + size: "16px", + color: "#333", + weight: "bold", + verticalAlign: "middle", + whiteSpace: "normal", }, position: { - top: viewContentPadding + 'px', - height: '30px', + top: viewContentPadding + "px", + height: "30px", }, }, { - tag: 'font', - id: 'content', + tag: "font", + id: "content", text: contentText, textStyles: { - size: '14px', - color: '#333', - verticalAlign: 'middle', - whiteSpace: 'normal', + size: "14px", + color: "#333", + verticalAlign: "middle", + whiteSpace: "normal", }, position: { - top: viewContentPadding * 2 + 30 + 'px', - height: '20px', + top: viewContentPadding * 2 + 30 + "px", + height: "20px", }, }, ]; @@ -546,32 +550,32 @@ function downloadPopupDrawing(data) { popupViewHeight += viewContentPadding + 40; elementList = elementList.concat([ { - tag: 'font', - id: 'progressValue', + tag: "font", + id: "progressValue", text: progressTip, textStyles: { - size: '14px', + size: "14px", color: $mainColor, - whiteSpace: 'normal', + whiteSpace: "normal", }, position: { - top: viewContentPadding * 4 + 20 + 'px', - height: '30px', + top: viewContentPadding * 4 + 20 + "px", + height: "30px", }, }, { - tag: 'rect', //绘制进度条背景 - id: 'progressBg', + tag: "rect", //绘制进度条背景 + id: "progressBg", rectStyles: { - radius: '4px', - borderColor: '#f1f1f1', - borderWidth: '1px', + radius: "4px", + borderColor: "#f1f1f1", + borderWidth: "1px", }, position: { - top: viewContentPadding * 4 + 60 + 'px', - left: viewContentPadding + 'px', - width: viewContentWidth + 'px', - height: '8px', + top: viewContentPadding * 4 + 60 + "px", + left: viewContentPadding + "px", + width: viewContentWidth + "px", + height: "8px", }, }, ]); @@ -580,70 +584,70 @@ function downloadPopupDrawing(data) { popupViewHeight += viewContentPadding + 30; elementList = elementList.concat([ { - tag: 'rect', //绘制底边按钮 + tag: "rect", //绘制底边按钮 rectStyles: { - radius: '3px', - borderColor: '#f1f1f1', - borderWidth: '1px', + radius: "3px", + borderColor: "#f1f1f1", + borderWidth: "1px", }, position: { - bottom: viewContentPadding + 'px', - left: viewContentPadding + 'px', - width: (viewContentWidth - viewContentPadding) / 2 + 'px', - height: '30px', + bottom: viewContentPadding + "px", + left: viewContentPadding + "px", + width: (viewContentWidth - viewContentPadding) / 2 + "px", + height: "30px", }, }, { - tag: 'rect', //绘制底边按钮 + tag: "rect", //绘制底边按钮 rectStyles: { - radius: '3px', + radius: "3px", color: $mainColor, }, position: { - bottom: viewContentPadding + 'px', + bottom: viewContentPadding + "px", left: (viewContentWidth - viewContentPadding) / 2 + viewContentPadding * 2 + - 'px', - width: (viewContentWidth - viewContentPadding) / 2 + 'px', - height: '30px', + "px", + width: (viewContentWidth - viewContentPadding) / 2 + "px", + height: "30px", }, }, { - tag: 'font', - id: 'cancelText', - text: '取消下载', + tag: "font", + id: "cancelText", + text: "取消下载", textStyles: { - size: '14px', - color: '#666', - lineSpacing: '0%', - whiteSpace: 'normal', + size: "14px", + color: "#666", + lineSpacing: "0%", + whiteSpace: "normal", }, position: { - bottom: viewContentPadding + 'px', - left: viewContentPadding + 'px', - width: (viewContentWidth - viewContentPadding) / 2 + 'px', - height: '30px', + bottom: viewContentPadding + "px", + left: viewContentPadding + "px", + width: (viewContentWidth - viewContentPadding) / 2 + "px", + height: "30px", }, }, { - tag: 'font', - id: 'confirmText', - text: '后台下载', + tag: "font", + id: "confirmText", + text: "后台下载", textStyles: { - size: '14px', - color: '#FFF', - lineSpacing: '0%', - whiteSpace: 'normal', + size: "14px", + color: "#FFF", + lineSpacing: "0%", + whiteSpace: "normal", }, position: { - bottom: viewContentPadding + 'px', + bottom: viewContentPadding + "px", left: (viewContentWidth - viewContentPadding) / 2 + viewContentPadding * 2 + - 'px', - width: (viewContentWidth - viewContentPadding) / 2 + 'px', - height: '30px', + "px", + width: (viewContentWidth - viewContentPadding) / 2 + "px", + height: "30px", }, }, ]); @@ -652,32 +656,32 @@ function downloadPopupDrawing(data) { popupViewHeight += viewContentPadding + 40; elementList = elementList.concat([ { - tag: 'rect', //绘制底边按钮 + tag: "rect", //绘制底边按钮 rectStyles: { - radius: '6px', + radius: "6px", color: $mainColor, }, position: { - bottom: viewContentPadding + 'px', - left: viewContentPadding + 'px', - width: viewContentWidth + 'px', - height: '40px', + bottom: viewContentPadding + "px", + left: viewContentPadding + "px", + width: viewContentWidth + "px", + height: "40px", }, }, { - tag: 'font', - id: 'confirmText', - text: '关闭', + tag: "font", + id: "confirmText", + text: "关闭", textStyles: { - size: '14px', - color: '#FFF', - lineSpacing: '0%', + size: "14px", + color: "#FFF", + lineSpacing: "0%", }, position: { - bottom: viewContentPadding + 'px', - left: viewContentPadding + 'px', - width: viewContentWidth + 'px', - height: '40px', + bottom: viewContentPadding + "px", + left: viewContentPadding + "px", + width: viewContentWidth + "px", + height: "40px", }, }, ]); @@ -694,24 +698,24 @@ function downloadPopupDrawing(data) { // 文件下载的弹窗 function downloadPopup(data) { // 弹窗遮罩层 - let maskLayer = new plus.nativeObj.View('maskLayer', { + let maskLayer = new plus.nativeObj.View("maskLayer", { //先创建遮罩层 - top: '0px', - left: '0px', - height: '100%', - width: '100%', - backgroundColor: 'rgba(0,0,0,0.5)', + top: "0px", + left: "0px", + height: "100%", + width: "100%", + backgroundColor: "rgba(0,0,0,0.5)", }); let popupViewData = downloadPopupDrawing(data); // 弹窗内容 - let popupView = new plus.nativeObj.View('popupView', { + let popupView = new plus.nativeObj.View("popupView", { //创建底部图标菜单 - tag: 'rect', + tag: "rect", top: - (popupViewData.screenHeight - popupViewData.popupViewHeight) / 2 + 'px', - left: '15%', - height: popupViewData.popupViewHeight + 'px', - width: '70%', + (popupViewData.screenHeight - popupViewData.popupViewHeight) / 2 + "px", + left: "15%", + height: popupViewData.popupViewHeight + "px", + width: "70%", }); let progressValue = 0; let progressTip = 0; @@ -728,52 +732,52 @@ function downloadPopup(data) { progressValue = res.progressValue; // 绘制进度条 progressElement.push({ - tag: 'rect', //绘制进度条背景 - id: 'progressValueBg', + tag: "rect", //绘制进度条背景 + id: "progressValueBg", rectStyles: { - radius: '4px', + radius: "4px", color: $mainColor, }, position: { - top: popupViewData.viewContentPadding * 4 + 60 + 'px', - left: popupViewData.viewContentPadding + 'px', + top: popupViewData.viewContentPadding * 4 + 60 + "px", + left: popupViewData.viewContentPadding + "px", width: - popupViewData.viewContentWidth * (res.progressValue / 100) + 'px', - height: '8px', + popupViewData.viewContentWidth * (res.progressValue / 100) + "px", + height: "8px", }, }); } if (res.progressTip) { progressTip = res.progressTip; progressElement.push({ - tag: 'font', - id: 'progressValue', + tag: "font", + id: "progressValue", text: res.progressTip, textStyles: { - size: '14px', + size: "14px", color: $mainColor, - whiteSpace: 'normal', + whiteSpace: "normal", }, position: { - top: popupViewData.viewContentPadding * 4 + 20 + 'px', - height: '30px', + top: popupViewData.viewContentPadding * 4 + 20 + "px", + height: "30px", }, }); } if (res.contentText) { contentText = res.contentText; progressElement.push({ - tag: 'font', - id: 'content', + tag: "font", + id: "content", text: res.contentText, textStyles: { - size: '16px', - color: '#333', - whiteSpace: 'normal', + size: "16px", + color: "#333", + whiteSpace: "normal", }, position: { - top: popupViewData.viewContentPadding * 2 + 30 + 'px', - height: '30px', + top: popupViewData.viewContentPadding * 2 + 30 + "px", + height: "30px", }, }); } @@ -804,13 +808,13 @@ function downloadPopup(data) { }); progressElement = newElement.concat(progressElement); popupView.setStyle({ - tag: 'rect', + tag: "rect", top: (popupViewData.screenHeight - popupViewData.popupViewHeight) / 2 + - 'px', - left: '15%', - height: popupViewData.popupViewHeight + 'px', - width: '70%', + "px", + left: "15%", + height: popupViewData.popupViewHeight + "px", + width: "70%", }); popupView.draw(progressElement); } else { @@ -822,7 +826,7 @@ function downloadPopup(data) { popupView.hide(); }, }; - popupView.addEventListener('click', function (e) { + popupView.addEventListener("click", function (e) { let maxTop = popupViewData.popupViewHeight - popupViewData.viewContentPadding; let maxLeft = @@ -868,25 +872,30 @@ export default function (isPrompt = false) { componentConfig.getServerNo(versionInfo, isPrompt, (res) => { if (res) { res.versionInfo = res.description; - if (res.version_name > versionInfo.versionName) { res.versionName = res.version_name; res.downloadUrl = res.download_apk_url; + + if (res.updateType == "forcibly" || res.updateType == "silent") { + getDownload(res); + } else if (res.updateType == "solicit") { + updatePopup(res, function () { + getDownload(res); + }); + } } else { if (res.version_key > versionInfo.versionCode) { res.versionName = res.version_key; res.downloadUrl = res.download_wgt_url; - } - } - } - if (res) { - if (res.updateType == 'forcibly' || res.updateType == 'silent') { - getDownload(res); - } else if (res.updateType == 'solicit') { - updatePopup(res, function () { - getDownload(res); - }); + if (res.updateType == "forcibly" || res.updateType == "silent") { + getDownload(res); + } else if (res.updateType == "solicit") { + updatePopup(res, function () { + getDownload(res); + }); + } + } } } }); diff --git a/java-mall-app-shop-admin/main.js b/java-mall-app-shop-admin/main.js index 783b7c0..c97f673 100644 --- a/java-mall-app-shop-admin/main.js +++ b/java-mall-app-shop-admin/main.js @@ -1,29 +1,24 @@ -import App from './App' -import Vue from 'vue' -import store from './store' -import uView from '@/uni_modules/uview-ui' -import './uni.promisify.adaptor' -import tui from './utils/httpRequest' -import Socket from './utils/socket.js' -import "@/static/reset.css" -import "@/styles/myui.scss" +import App from "./App"; +import Vue from "vue"; +import store from "./store"; +import uView from "@/uni_modules/uview-ui"; +import "./uni.promisify.adaptor"; +import tui from "./utils/httpRequest"; +import Socket from "./utils/socket.js"; // import Utils from './utils/http' // import "@/static/font/iconfont.css" -Vue.use(uView) +Vue.use(uView); - -Vue.config.productionTip = false +Vue.config.productionTip = false; // Vue.prototype.$utils = Utils -Vue.prototype.tui = tui -Vue.prototype.$Socket = Socket; +Vue.prototype.tui = tui; +Vue.prototype.$Socket = Socket; - -App.mpType = 'app' +App.mpType = "app"; const app = new Vue({ store, - ...App -}) - -app.$mount() + ...App, +}); +app.$mount(); diff --git a/java-mall-app-shop-admin/manifest.json b/java-mall-app-shop-admin/manifest.json index 43e1599..b56492c 100644 --- a/java-mall-app-shop-admin/manifest.json +++ b/java-mall-app-shop-admin/manifest.json @@ -1,150 +1,152 @@ { - "name": "小发同城商家版", - "appid": "__UNI__95F809F", - "package": "com.xiaofa.shopAdmin", - "description": "", - "versionName": "1.0.0", - "versionCode": 100, - "transformPx": false, - /* 5+App特有相关 */ - "app-plus": { - "usingComponents": true, - "nvueStyleCompiler": "uni-app", - "compilerVersion": 3, - "splashscreen": { - "alwaysShowBeforeRender": true, - "waiting": true, - "autoclose": true, - "delay": 0 - }, - /* 模块配置 */ - "modules": { - "Maps": {}, - "Camera": {}, - "Record": {}, - "VideoPlayer": {}, - "UIWebview": {} - }, - /* 应用发布信息 */ - "distribute": { - /* android打包配置 */ - "android": { - "permissions": [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ] - }, - /* ios打包配置 */ - "ios": { - "privacyDescription": { - "NSPhotoLibraryAddUsageDescription": "此App会在上传头像图片服务中访问您的相机权限", - "NSPhotoLibraryUsageDescription": "此App会在上传头像图片服务中访问您的相机权限", - "NSCameraUsageDescription": "此App会在上传头像图片服务中访问您的相机权限", - "NSMicrophoneUsageDescription": "此APP会在使用声音识别服务中使用您的麦克风权限", - "NSLocationWhenInUseUsageDescription": "此App会在使用导航服务中使用您的定位权限", - "NSLocationAlwaysUsageDescription": "此App会在使用导航服务中使用您的定位权限", - "NSLocationAlwaysAndWhenInUseUsageDescription": "此App会在使用导航服务中使用您的定位权限" + "name" : "小发同城商家版", + "appid" : "__UNI__95F809F", + "package" : "com.xiaofa.shopAdmin", + "description" : "", + "versionName" : "1.0.0", + "versionCode" : 102, + "transformPx" : false, + /* 5+App特有相关 */ + "app-plus" : { + "usingComponents" : true, + "nvueStyleCompiler" : "uni-app", + "compilerVersion" : 3, + "splashscreen" : { + "alwaysShowBeforeRender" : true, + "waiting" : true, + "autoclose" : true, + "delay" : 0 }, - "dSYMs": false - }, - /* SDK配置 */ - "sdkConfigs": { - "maps": {} - }, - "icons": { - "android": { - "hdpi": "unpackage/res/icons/72x72.png", - "xhdpi": "unpackage/res/icons/96x96.png", - "xxhdpi": "unpackage/res/icons/144x144.png", - "xxxhdpi": "unpackage/res/icons/192x192.png" + /* 模块配置 */ + "modules" : { + "Maps" : {}, + "Camera" : {}, + "Record" : {}, + "VideoPlayer" : {}, + "UIWebview" : {} }, - "ios": { - "appstore": "unpackage/res/icons/1024x1024.png", - "ipad": { - "app": "unpackage/res/icons/76x76.png", - "app@2x": "unpackage/res/icons/152x152.png", - "notification": "unpackage/res/icons/20x20.png", - "notification@2x": "unpackage/res/icons/40x40.png", - "proapp@2x": "unpackage/res/icons/167x167.png", - "settings": "unpackage/res/icons/29x29.png", - "settings@2x": "unpackage/res/icons/58x58.png", - "spotlight": "unpackage/res/icons/40x40.png", - "spotlight@2x": "unpackage/res/icons/80x80.png" - }, - "iphone": { - "app@2x": "unpackage/res/icons/120x120.png", - "app@3x": "unpackage/res/icons/180x180.png", - "notification@2x": "unpackage/res/icons/40x40.png", - "notification@3x": "unpackage/res/icons/60x60.png", - "settings@2x": "unpackage/res/icons/58x58.png", - "settings@3x": "unpackage/res/icons/87x87.png", - "spotlight@2x": "unpackage/res/icons/80x80.png", - "spotlight@3x": "unpackage/res/icons/120x120.png" - } + /* 应用发布信息 */ + "distribute" : { + /* android打包配置 */ + "android" : { + "permissions" : [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + /* ios打包配置 */ + "ios" : { + "privacyDescription" : { + "NSPhotoLibraryAddUsageDescription" : "此App会在上传头像图片服务中访问您的相机权限", + "NSPhotoLibraryUsageDescription" : "此App会在上传头像图片服务中访问您的相机权限", + "NSCameraUsageDescription" : "此App会在上传头像图片服务中访问您的相机权限", + "NSMicrophoneUsageDescription" : "此APP会在使用声音识别服务中使用您的麦克风权限", + "NSLocationWhenInUseUsageDescription" : "此App会在使用导航服务中使用您的定位权限", + "NSLocationAlwaysUsageDescription" : "此App会在使用导航服务中使用您的定位权限", + "NSLocationAlwaysAndWhenInUseUsageDescription" : "此App会在使用导航服务中使用您的定位权限" + }, + "dSYMs" : false + }, + /* SDK配置 */ + "sdkConfigs" : { + "maps" : {}, + "push" : {} + }, + "icons" : { + "android" : { + "hdpi" : "unpackage/res/icons/72x72.png", + "xhdpi" : "unpackage/res/icons/96x96.png", + "xxhdpi" : "unpackage/res/icons/144x144.png", + "xxxhdpi" : "unpackage/res/icons/192x192.png" + }, + "ios" : { + "appstore" : "unpackage/res/icons/1024x1024.png", + "ipad" : { + "app" : "unpackage/res/icons/76x76.png", + "app@2x" : "unpackage/res/icons/152x152.png", + "notification" : "unpackage/res/icons/20x20.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "proapp@2x" : "unpackage/res/icons/167x167.png", + "settings" : "unpackage/res/icons/29x29.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "spotlight" : "unpackage/res/icons/40x40.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png" + }, + "iphone" : { + "app@2x" : "unpackage/res/icons/120x120.png", + "app@3x" : "unpackage/res/icons/180x180.png", + "notification@2x" : "unpackage/res/icons/40x40.png", + "notification@3x" : "unpackage/res/icons/60x60.png", + "settings@2x" : "unpackage/res/icons/58x58.png", + "settings@3x" : "unpackage/res/icons/87x87.png", + "spotlight@2x" : "unpackage/res/icons/80x80.png", + "spotlight@3x" : "unpackage/res/icons/120x120.png" + } + } + } } - } - } - }, - /* 快应用特有相关 */ - "quickapp": {}, - /* 小程序特有相关 */ - "mp-weixin": { - "appid": "", - "setting": { - "urlCheck": false }, - "usingComponents": true - }, - "h5": { - // "devServer" : { - // "https" : true, - // "host" : "127.0.0.1", - // "port" : 8080, - // "disableHostCheck" : true, - // "proxy" : { - // "/place/v2/suggestion" : { - // "target" : "https://api.map.baidu.com", - // "changeOrigin" : true, - // "secure" : false - // }, - // "/admin/shop/shop-base-product-category/list" : { - // "target" : "https://mall.gpxscs.cn", - // "changeOrigin" : true - // } - // } - // }, - "title": "小发商城商家中心", - "template": "index.html", - "router": { - "mode": "history", - "base": "/mchapp/" - } - }, - "mp-alipay": { - "usingComponents": true - }, - "mp-baidu": { - "usingComponents": true - }, - "mp-toutiao": { - "usingComponents": true - }, - "uniStatistics": { - "enable": false - }, - "vueVersion": "2" + /* 快应用特有相关 */ + "quickapp" : {}, + /* 小程序特有相关 */ + "mp-weixin" : { + "appid" : "", + "setting" : { + "urlCheck" : false + }, + "usingComponents" : true + }, + "h5" : { + // "devServer" : { + // "https" : true, + // "host" : "127.0.0.1", + // "port" : 8080, + // "disableHostCheck" : true, + // "proxy" : { + // "/place/v2/suggestion" : { + // "target" : "https://api.map.baidu.com", + // "changeOrigin" : true, + // "secure" : false + // }, + // "/admin/shop/shop-base-product-category/list" : { + // "target" : "https://mall.gpxscs.cn", + // "changeOrigin" : true + // } + // } + // }, + "title" : "小发商城商家中心", + "template" : "index.html", + "router" : { + "mode" : "history", + "base" : "/mchapp/" + } + }, + "mp-alipay" : { + "usingComponents" : true + }, + "mp-baidu" : { + "usingComponents" : true + }, + "mp-toutiao" : { + "usingComponents" : true + }, + "uniStatistics" : { + "enable" : false + }, + "vueVersion" : "2" } /* 5+App特有相关 */ + diff --git a/java-mall-app-shop-admin/pages.json b/java-mall-app-shop-admin/pages.json index 7761252..73ac0cd 100644 --- a/java-mall-app-shop-admin/pages.json +++ b/java-mall-app-shop-admin/pages.json @@ -23,7 +23,10 @@ { "path": "pages/audit/shop1", "style": { - "navigationStyle": "custom" + "navigationStyle": "custom", + "app-plus": { + "titleNView": false + } } }, { @@ -194,7 +197,7 @@ "tabBar": { "custom": true, "color": "#000", - "selectedColor": "#4b71ff", + "selectedColor": "#fe4119", "borderStyle": "black", "backgroundColor": "#ffffff", "iconfontSrc": "/static/font/iconfont.ttf", @@ -205,7 +208,7 @@ "iconfont": { "text": "\ue607", "selectedText": "\ue607", - "selectedColor": "#4b71ff", + "selectedColor": "#fe4119", "color": "#000", "fontSize": "20px" }, @@ -216,7 +219,7 @@ "iconfont": { "text": "\ue66c", "selectedText": "\ue66c", - "selectedColor": "#4b71ff", + "selectedColor": "#fe4119", "color": "#000", "fontSize": "22px" }, @@ -227,7 +230,7 @@ "iconfont": { "text": "\ue6bc", "selectedText": "\ue6bc", - "selectedColor": "#4b71ff", + "selectedColor": "#fe4119", "color": "#000", "fontSize": "20px" }, @@ -238,7 +241,7 @@ "iconfont": { "text": "\ue64c", "selectedText": "\ue64c", - "selectedColor": "#4b71ff", + "selectedColor": "#fe4119", "color": "#000", "fontSize": "24px" }, diff --git a/java-mall-app-shop-admin/pages/IM/IM.vue b/java-mall-app-shop-admin/pages/IM/IM.vue index e09d4b9..f50226b 100644 --- a/java-mall-app-shop-admin/pages/IM/IM.vue +++ b/java-mall-app-shop-admin/pages/IM/IM.vue @@ -24,6 +24,13 @@ > + + + + 暂无消息 + diff --git a/java-mall-app-shop-admin/pages/IM/IMmsgContent.vue b/java-mall-app-shop-admin/pages/IM/IMmsgContent.vue index a1cb35d..1dadc98 100644 --- a/java-mall-app-shop-admin/pages/IM/IMmsgContent.vue +++ b/java-mall-app-shop-admin/pages/IM/IMmsgContent.vue @@ -6,7 +6,11 @@ { 'disable-scroll': showVoiceMask }, ]" > - + 主营品类 + 分割比例 - {{ item.category_name }} + {{ item.store_category_name }} - {{ item.category_name }} - 分割比率({{ item.split_ratio }}%) + {{ item.store_category_name }} + {{ item.split_ratio }}% + + + + + + + + - {{ auditInfo.approval_remark }}
请留意手机短信!
+ + {{ auditInfo.approval_remark }} +
+ 请留意手机短信! +
- + 很遗憾,您无法入驻我们的商城 - 拒绝原因:{{ auditInfo.approval_remark }} + + 拒绝原因:{{ auditInfo.approval_remark }} + - + 审核中,1-7个工作日内答复,请耐心等待 @@ -35,9 +61,9 @@ 暂无申请记录! - 申请时间:{{ auditInfo.created_at }} + + 申请时间:{{ auditInfo.created_at }} + + - + + + {{ item.name }} + + + + 点击自动识别免填卡号 + - 重新提交 + + 重新提交 + - - + +
+ + + + + +
+ + + + + 您还没有签署,请签署 + 立即签署 + +
@@ -116,23 +237,49 @@ import { GetAuditInfo, GetBankList, GetRestartMerchApply, + branchBankSearchApi, } from "../../api/audit"; +import { throttle, debounce } from "lodash"; import { GetAccountDashboard } from "../../api/user"; -import { UploadFilePromise } from "../../api/upload"; +import { + UploadFilePromise, + batchNoApi, + imgOcrResultApi, +} from "../../api/upload"; import { mapState } from "vuex"; import favoriteLoading from "@/components/favorite-loading/favorite-loading.vue"; +import navBar from "@/components/uni-nav-bar/uni-nav-bar"; + +const orcImgTypeConf = { + FR_ID_CARD_FRONT: "FR_ID_CARD_FRONT", + FR_ID_CARD_BEHIND: "FR_ID_CARD_BEHIND", + ID_CARD_FRONT: "ID_CARD_FRONT", + ID_CARD_BEHIND: "ID_CARD_BEHIND", + BUSINESS_LICENCE: "BUSINESS_LICENCE", + BANK_CARD: "BANK_CARD", +}; + export default { name: "checkAudit", components: { favoriteLoading, + navBar, }, data() { return { showLoading: true, + showStartTime: false, + showEndTime: false, + startTime: null, + endTime: null, + startMinDate: 0, + endMinDate: 0, + endMaxDate: 0, formConfig: JSON.parse(JSON.stringify(config.formConfig)), form: {}, auditInfo: { - approval_status: 3, + license_type: 1, + approval_status: 4, created_at: "2099-02-17 09:25:53", approval_remark: "", approval_invalid_col: [], @@ -142,31 +289,70 @@ export default { [ { id: 1, - name: "许可证", + name: "无需特殊资质", }, { id: 2, - name: "特许证件", + name: "需许可证资质", }, { id: 3, - name: "其他证件", + name: "需特许证件资质", }, ], ], + radioItems: [ + { + name: "非长期", + value: "1", + checked: true, + }, + { + name: "长期", + value: "2", + checked: false, + }, + ], showPicker: false, - showActionSheet: false, - bankList: [[]], + bankCardOcrLoaded: false, + firstBranchBankLoad: false, + showBankDialog: false, + bankList: [], + branchSearchText: "", + branchBankDebounceFn: null, + currentBank: {}, + currentBankFile: {}, + loading: false, }; }, + computed: { + ...mapState("user", ["userInfo"]), + }, onShow() { this.getAuditInfo(); this.getBankList(); }, - computed: { - ...mapState("user", ["userInfo"]), + beforeUnmount() { + this.branchBankDebounceFn?.cancel(); + }, + mounted() { + this.branchBankDebounceFn = debounce(this.getBranchBankList, 500); + + const date19300520 = new Date("1930-05-20T00:00:00Z"); + this.startMinDate = date19300520.getTime(); + + const date = new Date(); + date.setFullYear(date.getFullYear() + 20); + this.endMaxDate = date.getTime(); + + const data2 = new Date(); + data2.setFullYear(data2.getFullYear() + 5); + this.endMinDate = data2.getTime(); }, methods: { + pageBack() { + uni.navigateBack(); + }, async getAuditInfo() { var params = {}; @@ -181,6 +367,7 @@ export default { let res = await GetAuditInfo(params); if (res && res.status == 200) { this.auditInfo = res.data || { + license_type: 1, approval_status: 4, created_at: "2099-02-17 09:25:53", approval_remark: "", @@ -215,7 +402,6 @@ export default { ) { let result = await GetAccountDashboard(); if (result && result.status == 200) { - debugger; uni.setStorageSync("accountDashboard", result.data); uni.setStorageSync("auditInfo", res.data); uni.switchTab({ @@ -230,13 +416,29 @@ export default { if (arr.includes(item.key)) { this.form[item.key] = ""; + if (item.key == "license_type") { + this.form[item.key] = this.columns[0][0].name; + } + acc.push(item); } + return acc; }, []); this.auditInfo.approval_invalid_col = arr2; + this.auditInfo.approval_invalid_col.forEach((item) => { + if ( + ["account_holder_name", "account_number", "branch_name"].includes( + item.key + ) && + this.auditInfo.entity_type == 1 + ) { + item.show = true; + } + }); + let typeItem = uni.getStorageSync("typeItem"); if (typeItem) { @@ -264,6 +466,482 @@ export default { this.bankList[0] = res.data; } }, + //formItem 点击事件 + handerFormItem(item) { + if (!item.type == "select") return; + + switch (item.key) { + case "mapAddress": + uni.navigateTo({ + url: "/pages/audit/mapAddress", + }); + break; + case "biz_category": + uni.navigateTo({ + url: "/pages/audit/businessType", + }); + break; + case "license_type": + this.showPicker = true; + break; + case "branch_name": + this.showBankDialog = true; + break; + case "legal_person_id_period_begin": + this.showStartTime = true; + break; + case "individual_id_period_begin": + this.showStartTime = true; + break; + case "legal_person_id_period_end": + this.showEndTime = true; + break; + case "individual_id_period_end": + this.showEndTime = true; + break; + } + }, + overSize(e) { + uni.$u.toast("上传图片大小不能超过8MB!"); + }, + //上传图片 + async afterRead(e, item) { + const fileImg = e.file; + const imgUrl = fileImg.url; + + const group = { + url: imgUrl, + }; + item.imgUrlArr.push(group); + + let res = await UploadFilePromise(imgUrl); + + if (res && res.status == 200) { + switch (item.key) { + case "biz_license_image": + this.form.biz_license_image = res.data.url; + break; + case "license_image": + if (this.form.license_image == "") { + this.form.license_image = String(res.data.url); + } else { + this.form.license_image += "," + String(res.data.url); + } + break; + case "front_facade_image": + this.form.front_facade_image = res.data.url; + break; + case "environment_image": + this.form.environment_image = res.data.url; + break; + case "legal_person_id_images": + this.form.legal_person_id_images = res.data.url; + break; + case "legal_person_id_images2": + this.form.legal_person_id_images2 = res.data.url; + break; + case "individual_id_images": + this.form.individual_id_images = res.data.url; + break; + case "individual_id_images2": + this.form.individual_id_images2 = res.data.url; + break; + } + } + switch (item.key) { + // 营业执照 + case "biz_license_image": + var ocr = await this.getOcrText( + imgUrl, + fileImg, + orcImgTypeConf.BUSINESS_LICENCE + ); + this.auditInfo.approval_invalid_col.forEach((item) => { + if ( + [ + "biz_license_company", + "legal_person_name", + "biz_license_number", + "legal_person_mobile", + "biz_license_content", + ].includes(item.key) + ) { + item.show = true; + } + }); + this.form.biz_license_company = ocr.bizLicenseCompanyName; + this.form.legal_person_name = ocr.bizLicenseOwnerName; + this.form.biz_license_number = ocr.bizLicenseCreditCode; + this.form.biz_license_content = ocr.bizLicenseScope || ""; + console.log("BUSINESS_LICENCE", ocr); + break; + case "license_number": + break; + // 法人身份证正面 + case "legal_person_id_images": + var ocr = await this.getOcrText( + imgUrl, + fileImg, + orcImgTypeConf.ID_CARD_FRONT + ); + this.auditInfo.approval_invalid_col.forEach((item) => { + if ( + ["legal_person_id_number", "legal_person_id_addr"].includes( + item.key + ) + ) { + item.show = true; + } + }); + this.form.legal_person_name = ocr.name; + this.form.legal_person_id_number = ocr.idNumber; + this.form.legal_person_id_addr = ocr.address; + console.log("ID_CARD_FRONT", ocr); + break; + // 法人身份证反面 + case "legal_person_id_images2": + var ocr = await this.getOcrText( + imgUrl, + item, + orcImgTypeConf.FR_ID_CARD_BEHIND + ); + this.auditInfo.approval_invalid_col.forEach((item) => { + if ( + [ + "legal_person_id_period_begin", + "legal_person_id_period_end", + ].includes(item.key) + ) { + item.show = true; + } + }); + if (ocr && ocr.validity) { + let validity = ocr.validity.split("-"); + this.startTime = validity[0]; + this.endTime = validity[1]; + + this.form.legal_person_id_period_begin = this.startTime; + this.form.legal_person_id_period_end = this.endTime; + } + break; + // 个人身份证正面 + case "individual_id_images": + var ocr = await this.getOcrText( + imgUrl, + fileImg, + orcImgTypeConf.ID_CARD_FRONT + ); + this.auditInfo.approval_invalid_col.forEach((item) => { + if ( + [ + "individual_id_number", + "individual_id_name", + "individual_id_addr", + ].includes(item.key) + ) { + item.show = true; + } + }); + this.form.individual_id_number = ocr.idNumber; + this.form.individual_id_name = ocr.name; + this.form.individual_id_addr = ocr.address; + this.form.console.log("personIdFront", ocr); + break; + // 个人身份证反面 + case "individual_id_images2": + var ocr = await this.getOcrText( + imgUrl, + fileImg, + orcImgTypeConf.ID_CARD_BEHIND + ); + if (ocr && ocr.validity) { + this.auditInfo.approval_invalid_col.forEach((item) => { + if ( + [ + "individual_id_period_begin", + "individual_id_period_end", + ].includes(item.key) + ) { + item.show = true; + } + }); + + let validity = ocr.validity.split("-"); + this.startTime = validity[0]; + this.endTime = validity[1]; + this.form.individual_id_period_begin = this.startTime; + this.form.individual_id_period_end = this.endTime; + } + break; + // 银行 + case "bankcard_item": + const currentBankFile = { + file: fileImg, + path: imgUrl, + }; + + this.setFromItemWithOcr(currentBankFile); + break; + } + }, + // 上传删除图片 + deletePic(e, item) { + if (item.key == "license_image") { + item.imgUrlArr.splice(e.index, 1); + let arr = this.form[item.key].split(","); + arr.splice(e.index, 1); + this.form[item.key] = arr.join(","); + } else { + item.imgUrlArr.splice(0, 1); + } + + if (item.key == "bankcard_item") { + this.form.account_number = ""; + this.form.branch_name = ""; + this.branchSearchText = ""; + this.currentBank = {}; + this.bankCardOcrLoaded = false; + + if (this.auditInfo.entity_type == 2) { + this.auditInfo.approval_invalid_col.forEach((item) => { + if ( + ["account_holder_name", "account_number", "branch_name"].includes( + item.key + ) + ) { + item.show = false; + } + }); + } + } + + if (item.key == "biz_license_image") { + this.auditInfo.approval_invalid_col.forEach((item) => { + if ( + [ + "biz_license_company", + "legal_person_name", + "biz_license_number", + "legal_person_mobile", + "biz_license_content", + ].includes(item.key) + ) { + item.show = false; + } + }); + this.form.biz_license_company = ""; + this.form.legal_person_name = ""; + this.form.biz_license_number = ""; + this.form.legal_person_mobile = ""; + this.form.biz_license_content = ""; + } + + if (item.key == "legal_person_id_images") { + this.auditInfo.approval_invalid_col.forEach((item) => { + if ( + ["legal_person_id_number", "legal_person_id_addr"].includes( + item.key + ) + ) { + item.show = false; + } + }); + + this.form.legal_person_id_number = ""; + this.form.legal_person_id_addr = ""; + } + // 个人身份证正面 + if (item.key == "individual_id_images") { + this.auditInfo.approval_invalid_col.forEach((item) => { + if ( + [ + "individual_id_number", + "individual_id_name", + "individual_id_addr", + ].includes(item.key) + ) { + item.show = false; + } + }); + + this.form.individual_id_number = ""; + this.form.individual_id_name = ""; + this.form.individual_id_addr = ""; + } + // 个人身份证反面 + if (item.key == "individual_id_images2") { + this.auditInfo.approval_invalid_col.forEach((item) => { + if ( + ["individual_id_period_begin", "individual_id_period_end"].includes( + item.key + ) + ) { + item.show = false; + } + }); + + this.form.individual_id_period_begin = ""; + this.form.individual_id_period_end = ""; + } + }, + // 营业执照 和 身份证 OCR识别 + getOcrText(filePath, file, type) { + return new Promise(async (resolve, reject) => { + const batchNoRes = await batchNoApi(filePath, file, type); + const batchNo = batchNoRes.batchNo; + const formData = new FormData(); + let formDataStr = ""; + + formData.append("batchNo", batchNo); + formData.append("imgType", type); + + clearTimeout(this.orcTimeout); + + this.orcTimeout = setTimeout(async () => { + formData.forEach((value, key) => { + if (formDataStr !== "") { + formDataStr += "&"; + } + formDataStr += + encodeURIComponent(key) + "=" + encodeURIComponent(value); + }); + + const imgOcrRes = await imgOcrResultApi(formDataStr); + clearTimeout(this.orcTimeout); + resolve(imgOcrRes?.data); + }, 1000); + }); + }, + async getBranchBankList(keyword) { + let res = await branchBankSearchApi({ + keyword, + pageNum: 1, + pageSize: 1000 * 10, + }); + + this.bankList = res.data.items; + this.firstBranchBankLoad = true; + }, + getBankOcrText(filePath, file, type) { + return new Promise(async (resolve, reject) => { + this.loading = true; + + const batchNoRes = await batchNoApi(filePath, file, type); + const batchNo = batchNoRes.batchNo; + + if (!batchNoRes) { + this.loading = false; + this.bankCardOcrLoaded = true; + reject(batchNoRes); + } + + const formData = new FormData(); + let formDataStr = ""; + + formData.append("batchNo", batchNo); + formData.append("imgType", type); + + clearTimeout(this.orcTimeout); + + this.orcTimeout = setTimeout(async () => { + formData.forEach((value, key) => { + if (formDataStr !== "") { + formDataStr += "&"; + } + formDataStr += + encodeURIComponent(key) + "=" + encodeURIComponent(value); + }); + + const imgOcrRes = await imgOcrResultApi(formDataStr); + + if (imgOcrRes?.status == 200) { + this.showBankDialog = true; + resolve(imgOcrRes?.data); + } else { + reject(imgOcrRes); + } + + clearTimeout(this.orcTimeout); + this.loading = false; + this.bankCardOcrLoaded = true; + }, 2000); + }); + }, + handleCancel() { + this.showPicker = false; + }, + handleConfirm(e) { + this.form.license_type = e.value[0].name; + if (e.value[0].id != 1) { + this.auditInfo.approval_invalid_col.forEach((item) => { + if (["license_image", "license_number"].includes(item.key)) { + item.show = true; + } + }); + } else { + this.auditInfo.approval_invalid_col.forEach((item) => { + if (["license_image", "license_number"].includes(item.key)) { + item.show = false; + } + }); + } + + this.showPicker = false; + }, + handleBankCancel() { + this.showActionSheet = false; + }, + handleBankConfirm(e) { + this.form.bank_name = e.value[0].bank_name; + this.showActionSheet = false; + }, + onBankSelect(data) { + const { district, area, branch_bank_name, branch_bank_no, clear_no } = + data; + this.currentBank = { + bank_district: district, + bank_area: area, + bank_name: branch_bank_name, + openning_bank_code: branch_bank_no, + clearing_bank_code: clear_no, + }; + this.form.branch_name = branch_bank_name; + this.showBankDialog = false; + }, + onBranchDialogOpen() { + this.branchBankDebounceFn(this.branchSearchText || "广西桂平银行"); + this.showBankDialog = true; + }, + onBranchDialogClose() { + this.showBankDialog = false; + }, + async onBranchBankChange() { + this.branchBankDebounceFn(this.branchSearchText); + }, + async setFromItemWithOcr(currentBankFile) { + var ocr = await this.getBankOcrText( + currentBankFile.path, + currentBankFile.file, + orcImgTypeConf.BANK_CARD + ); + + if (ocr && ocr.card_number) { + this.auditInfo.approval_invalid_col.forEach((item) => { + if ( + ["account_holder_name", "account_number", "branch_name"].includes( + item.key + ) && + this.auditInfo.entity_type == 2 + ) { + item.show = true; + } + }); + this.form.account_number = ocr.card_number; + this.branchSearchText = ocr.issuer; + console.log("bankCard", ocr); + } + }, + // 重新审核 async getRestartMerchApply() { console.log(this.auditInfo); @@ -281,6 +959,10 @@ export default { locationItem.administrativeRegion.label[1] + locationItem.administrativeRegion.label[2] + this.form.store_address; + this.form.store_area = + locationItem.administrativeRegion.label.join("/"); + this.form.store_district = + locationItem.administrativeRegion.value.join("/"); } if (this.form.biz_category) { @@ -289,12 +971,15 @@ export default { this.manageTypeItem.bizSecondCategory.id; } - if (this.form.storefrontImg) { - this.form.front_facade_image = this.form.storefrontImg; + if (this.form.license_type) { + let licenseTypeItem = this.columns[0].find( + (item) => item.name == this.license_type.license_type + ); + this.form.license_type = licenseTypeItem.id; } - if (this.form.surroundingsImg) { - this.form.environment_image = this.form.surroundingsImg; + if (Object.keys(this.currentBank).length > 0) { + this.form = { ...this.form, ...this.currentBank }; } let res = await GetRestartMerchApply(this.form); @@ -303,78 +988,61 @@ export default { uni.removeStorageSync("auditItem"); uni.removeStorageSync("typeItem"); await this.getAuditInfo(); - } - }, - handerItemSkipu(item) { - if (!item.type == "select") return; - - switch (item.key) { - case "mapAddress": - uni.navigateTo({ - url: "/pages/audit/mapAddress", - }); - break; - case "biz_category": - uni.navigateTo({ - url: "/pages/audit/businessType", - }); - break; - case "license_type": - this.showPicker = true; - break; - case "bank_name": - this.showActionSheet = true; - break; - } - }, - async afterRead(e, item) { - const imgUrl = e.file.url; - - const group = { - url: imgUrl, - }; - - item.imgUrlArr.push(group); - - let res = await UploadFilePromise(imgUrl); - if (res && res.status == 200) { - if (item.key == "license_image") { - if (this.form[item.key] == "") { - this.form[item.key] = String(res.data.url); - } else { - this.form[item.key] += "," + String(res.data.url); - } - } else { - this.form[item.key] = res.data.url; + } else { + if (this.form.license_type) { + let licenseTypeItem = this.columns[0].find( + (item) => item.id == this.form.license_type + ); + this.form.license_type = licenseTypeItem.name; } } }, - deletePic(e, item) { - if (item.key == "license_image") { - item.imgUrlArr.splice(e.index, 1); - let arr = this.form[item.key].split(","); - arr.splice(e.index, 1); - this.form[item.key] = arr.join(","); + handelStartTime(e) { + this.startTime = e.value; + this.showStartTime = false; + if (this.auditInfo.entity_type == 1) { + this.form.legal_person_id_period_begin = uni.$u.timeFormat( + this.startTime, + "yyyy-mm-dd" + ); } else { - item.imgUrlArr.splice(0, 1); + this.form.individual_id_period_begin = uni.$u.timeFormat( + this.startTime, + "yyyy-mm-dd" + ); } }, - handleCancel() { - this.showPicker = false; + handelEndTime(e) { + this.endTime = e.value; + this.showEndTime = false; + if (this.auditInfo.entity_type == 1) { + this.form.legal_person_id_period_end = uni.$u.timeFormat( + this.endTime, + "yyyy-mm-dd" + ); + } else { + this.form.individual_id_period_end = uni.$u.timeFormat( + this.endTime, + "yyyy-mm-dd" + ); + } }, - handleConfirm(e) { - this.form.license_type = e.value[0].name; - this.licenseType = e.value[0]; - - this.showPicker = false; - }, - handleBankCancel() { - this.showActionSheet = false; - }, - handleBankConfirm(e) { - this.form.bank_name = e.value[0].bank_name; - this.showActionSheet = false; + handelRaddio(e) { + if (e && e.detail.value == 2) { + if (this.auditInfo.entity_type == 1) { + this.form.legal_person_id_period_end = "长期"; + } else { + this.form.individual_id_period_end = "长期"; + } + } else { + if (this.auditInfo.entity_type == 1) { + this.form.legal_person_id_period_end = ""; + } else { + this.form.individual_id_period_end = ""; + } + } }, + skipuContract() {}, loginOut() { this.$store.dispatch("user/LoginOut"); }, @@ -383,6 +1051,8 @@ export default { \ No newline at end of file + diff --git a/java-mall-app-shop-admin/pages/audit/formConfig.js b/java-mall-app-shop-admin/pages/audit/formConfig.js index 1f3376a..14f264e 100644 --- a/java-mall-app-shop-admin/pages/audit/formConfig.js +++ b/java-mall-app-shop-admin/pages/audit/formConfig.js @@ -1,191 +1,272 @@ -const formConfig = [ +const formConfig = [ { - key:'contact_name', - label:'联系人', - placeholder:'请输入联系人', + key: "contact_name", + label: "联系人", + placeholder: "请输入联系人", + show: true, }, { - type:"select", - key:'biz_category', - label:'经营品类', - isReadonly:true, - style:"pointer-events: none", - placeholder:'请选择经营品类', + type: "select", + key: "biz_category", + label: "经营品类", + isReadonly: true, + style: "pointer-events: none", + placeholder: "请选择经营品类", + show: true, }, { - key:'store_name', - label:'门店名称', - placeholder:'请输入门店名称', + key: "store_name", + label: "门店名称", + placeholder: "请输入门店名称", + show: true, }, { - type:"select", - key:'mapAddress', - label:'地图地址', - isReadonly:true, - style:"pointer-events: none", - placeholder:'请在地图上选择门店地址', + type: "select", + key: "mapAddress", + label: "地图地址", + isReadonly: true, + style: "pointer-events: none", + placeholder: "请在地图上选择门店地址", + show: true, }, { - key:'store_address', - label:'详细地址', - placeholder:'详细地址:如:人民大道205号2楼213', + key: "store_address", + label: "详细地址", + placeholder: "详细地址:如:人民大道205号2楼213", + show: true, }, { - type:'upload', - key:'storefrontImg', - label:'门脸图', - class:"upload-1", - placeholder:'', - imgUrlArr:[], - imgWidth:270, - imgHeight:150 + type: "upload", + key: "front_facade_image", + label: "门脸图", + class: "upload-1", + placeholder: "", + imgUrlArr: [], + imgWidth: 270, + imgHeight: 150, + show: true, }, { - type:'upload', - key:'surroundingsImg', - class:"upload-2", - label:'环境图', - placeholder:'', - imgUrlArr:[], - imgWidth:270, - imgHeight:150 + type: "upload", + key: "environment_image", + class: "upload-2", + label: "环境图", + placeholder: "", + imgUrlArr: [], + imgWidth: 270, + imgHeight: 150, + show: true, }, { - key:'license_number', - label:'许可证编号', - placeholder:'请输入许可证编号', + type: "upload", + key: "biz_license_image", + class: "upload-3", + label: "营业执照", + placeholder: "", + imgUrlArr: [], + imgWidth: 125, + imgHeight: 88, + show: true, }, { - key:'biz_license_number', - label:'营业执照编号', - placeholder:'请输入营业执照编号', + key: "biz_license_company", + label: "公司名称", + placeholder: "请输入营业执照公司名或真实的公司名", + show: false, }, { - key:'biz_license_company', - label:'营业执照公司名或真实的公司名', - placeholder:'请输入营业执照公司名或真实的公司名', + key: "legal_person_name", + label: "法人姓名", + placeholder: "请输入法人姓名", + show: false, }, { - key:'legal_person_name', - label:'法人姓名', - placeholder:'请输入法人姓名', + key: "biz_license_number", + label: "注册号", + placeholder: "请输入营业执照编号", + show: false, }, { - key:'legal_person_mobile', - label:'法人手机号', - placeholder:'请输入法人手机号', + key: "legal_person_mobile", + label: "法人手机号", + placeholder: "请输入法人手机号", + show: false, + maxLength: 11, }, { - key:'legal_person_id_number', - label:'法人身份证号码', - placeholder:'请输入法人身份证号', + key: "biz_license_content", + label: "经营范围", + placeholder: "请输入经营范围", + show: false, }, { - type:'upload', - key:'biz_license_image', - class:"upload-3", - label:'营业执照图片', - placeholder:'', - imgUrlArr:[], - imgWidth:125, - imgHeight:88 + type: "select", + key: "license_type", + label: "所属行业", + isReadonly: true, + style: "pointer-events: none", + placeholder: "请选择所属行业", + show: true, }, { - type:"select", - key:'license_type', - label:'许可证类型', - isReadonly:true, - style:"pointer-events: none", - placeholder:'请选择许可证类型', + type: "upload", + key: "license_image", + label: "许可证图片", + class: "upload-4", + placeholder: "", + imgUrlArr: [], + imgWidth: 125, + imgHeight: 88, + imgUpMaxCount: 5, + show: false, }, { - key:'license_number', - label:'许可证编号', - placeholder:'', + key: "license_number", + label: "许可证编号", + placeholder: "请输入许可证编号", + show: false, }, { - type:'upload', - key:'license_image', - label:'许可证图片', - class:"upload-4", - placeholder:'', - imgUrlArr:[], - imgWidth:125, - imgHeight:88, - imgUpMaxCount:5 + type: "upload", + key: "legal_person_id_images", + label: "法人身份证正面图片", + class: "upload-5", + placeholder: "", + imgUrlArr: [], + imgWidth: 180, + imgHeight: 110, + show: true, }, { - type:'upload', - key:'legal_person_id_images', - label:'法人身份证正面图片', - class:"upload-5", - placeholder:'', - imgUrlArr:[], - imgWidth:180, - imgHeight:110 + type: "upload", + key: "legal_person_id_images2", + label: "法人身份证反面图片", + class: "upload-6", + placeholder: "", + imgUrlArr: [], + imgWidth: 180, + imgHeight: 110, + show: true, }, { - type:'upload', - key:'legal_person_id_images2', - label:'法人身份证反面图片', - class:"upload-6", - placeholder:'', - imgUrlArr:[], - imgWidth:180, - imgHeight:110 + key: "legal_person_id_number", + label: "法人身份证号码", + placeholder: "请输入法人身份证号", + show: false, }, { - type:"select", - key:'bank_name', - label:'开户银行', - isReadonly:true, - style:"pointer-events: none", - placeholder:'请选择开户银行', + key: "legal_person_id_addr", + label: "法人身份证地址", + placeholder: "请输入法人身份证地址", + show: false, }, { - key:'bank_branch_name', - label:'开户银行的支行名称', - placeholder:'请输入开户银行的支行名称', + type: "select", + key: "legal_person_id_period_begin", + label: "身份证开始有效日期", + placeholder: "请选择身份证开始有效日期", + style: "pointer-events: none", + show: false, }, { - key:'account_number', - label:'收款账户号码', - placeholder:'请输入收款账户号码', + type: "select", + key: "legal_person_id_period_end", + label: "身份证截止有效日期", + placeholder: "请选择身份证截止有效日期", + style: "pointer-events: none", + show: false, }, { - key:'account_holder_name', - label:'收款账户姓名', - placeholder:'请输入收款账户姓名', + type: "upload", + key: "individual_id_images", + label: "身份证正面图片", + class: "upload-5", + placeholder: "请上传身份证正面图片", + imgUrlArr: [], + imgWidth: 180, + imgHeight: 110, + show: true, }, { - key:'account_holder_name', - label:'收款账户姓名', - placeholder:'请输入收款账户姓名', + type: "upload", + key: "individual_id_images2", + label: "身份证反面图片", + class: "upload-5", + placeholder: "", + imgUrlArr: [], + imgWidth: 180, + imgHeight: 110, + show: true, }, { - key:'individual_id_number', - label:'身份证号码', - placeholder:'请输入身份证号码', + key: "individual_id_number", + label: "身份证号码", + placeholder: "请输入身份证号码", + show: false, }, { - type:'upload', - key:'individual_id_images', - label:'身份证正面图片', - class:"upload-5", - placeholder:'', - imgUrlArr:[] + key: "individual_id_name", + label: "身份证姓名", + placeholder: "请输入身份证姓名", + show: false, }, { - type:'upload', - key:'individual_id_images2', - label:'身份证反面图片', - class:"upload-5", - placeholder:'', - imgUrlArr:[] + key: "individual_id_addr", + label: "身份证地址", + placeholder: "请输入身份证地址", + show: false, }, -] - + { + type: "select", + key: "individual_id_period_begin", + label: "身份证开始有效日期", + placeholder: "请选择身份证有效日期", + style: "pointer-events: none", + show: false, + }, + { + type: "select", + key: "individual_id_period_end", + label: "身份证截止有效日期", + placeholder: "请选择身份证截止有效日期", + style: "pointer-events: none", + show: false, + }, + { + type: "upload", + key: "bankcard_item", + label: "银行卡正面", + class: "bankcard_upload", + placeholder: "请选择银行卡正面", + imgUrlArr: [], + imgWidth: 268, + imgHeight: 125, + show: true, + uploadIconColor: "#fe4119", + uploadText: "点击上传银行卡正面", + }, + { + key: "account_holder_name", + label: "开户名称", + placeholder: "请输入开户名称", + show: false, + }, + { + key: "account_number", + label: "银行卡号", + placeholder: "请输入银行卡号", + show: false, + }, + { + type: "select", + key: "bank_name", + label: "开户银行", + placeholder: "请选择开户银行", + style: "pointer-events: none", + show: false, + }, +]; export default { - formConfig, -} + formConfig, +}; diff --git a/java-mall-app-shop-admin/pages/audit/mapAddress.vue b/java-mall-app-shop-admin/pages/audit/mapAddress.vue index d27b1dc..9bbb22b 100644 --- a/java-mall-app-shop-admin/pages/audit/mapAddress.vue +++ b/java-mall-app-shop-admin/pages/audit/mapAddress.vue @@ -51,18 +51,18 @@ @click="handerSetAddress(item)" > - {{ - item.detailedInformation - }} + + {{ item.detailedInformation }} +
- 加载中... - 暂无该地址,换取个地址 + + 加载中... + + + 暂无该地址,换取个地址 + 确定 @@ -220,6 +220,7 @@ export default { diff --git a/java-mall-app-shop-admin/pages/audit/shop2.vue b/java-mall-app-shop-admin/pages/audit/shop2.vue index f51f323..b0f17de 100644 --- a/java-mall-app-shop-admin/pages/audit/shop2.vue +++ b/java-mall-app-shop-admin/pages/audit/shop2.vue @@ -1,10 +1,34 @@