From 4f604171623fb28f81bfcec07bd25737d7284649 Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期三, 22 四月 2026 10:02:54 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 server/services/src/main/java/com/doumee/service/business/impl/DriverInfoServiceImpl.java           |  115 ++
 server/services/src/main/java/com/doumee/dao/vo/OrderItemVO.java                                    |    8 
 small-program/unpackage/dist/dev/mp-weixin/pages/index/index.js                                     |    4 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/message`/message.wxss                         |    1 
 server/services/src/main/java/com/doumee/service/business/ShopInfoService.java                      |    6 
 small-program/unpackage/dist/dev/.sourcemap/mp-weixin/pages/evaluate/evaluate.js.map                |    1 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/qualification/qualification.js                |    2 
 server/services/src/main/java/com/doumee/config/jwt/JwtTokenUtil.java                               |    2 
 small-program/unpackage/dist/dev/mp-weixin/common/runtime.js                                        |  231 ----
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/qualification/qualification.json              |    4 
 small-program/unpackage/dist/dev/.sourcemap/mp-weixin/shop/pages/store-info/store-info.js.map       |    1 
 small-program/unpackage/dist/dev/mp-weixin/static/icon/ic_home@2x.png                               |    0 
 server/services/src/main/java/com/doumee/core/constants/Constants.java                              |   45 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-info/store-info.wxss                    |  173 +++
 server/services/src/main/java/com/doumee/service/business/MemberService.java                        |    2 
 small-program/unpackage/dist/dev/mp-weixin/pages/evaluate/evaluate.js                               |    2 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/write-off/write-off.wxml                      |    1 
 small-program/static/icon/ic_visible@2x.png                                                         |    0 
 server/admin/src/main/resources/application.yml                                                     |    2 
 server/services/src/main/java/com/doumee/service/business/impl/WithdrawalOrdersServiceImpl.java     |    4 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/mine/mine.wxss                                |   25 
 small-program/unpackage/dist/dev/mp-weixin/pages/evaluate/evaluate.wxss                             |  219 +++
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/message/message.wxss                          |  123 ++
 small-program/unpackage/dist/dev/.sourcemap/mp-weixin/shop/pages/write-off/write-off.js.map         |    1 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/write-off/write-off.json                      |    6 
 small-program/static/icon/ic_home@2x.png                                                            |    0 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/write-off/write-off.js                        |    2 
 server/web/src/main/java/com/doumee/api/web/AccountApi.java                                         |   26 
 small-program/unpackage/dist/dev/mp-weixin/common/main.js                                           |    4 
 small-program/shop/pages/store-info/store-info.vue                                                  |    0 
 small-program/unpackage/dist/dev/.sourcemap/mp-weixin/shop/pages/message`/message.js.map            |    1 
 small-program/components/custom-tabbar/custom-tabbar.vue                                            |   18 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-home/store-home.wxml                    |    2 
 server/services/src/main/java/com/doumee/dao/vo/MyOrderVO.java                                      |   22 
 small-program/shop/pages/message/message.vue                                                        |  187 +++
 small-program/unpackage/dist/dev/mp-weixin/pages/evaluate/evaluate.json                             |    4 
 server/web/src/main/java/com/doumee/api/web/OrdersApi.java                                          |    4 
 small-program/unpackage/dist/dev/mp-weixin/project.private.config.json                              |  108 -
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/wallet/wallet.wxml                            |    2 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/message`/message.js                           |    1 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/qualification/qualification.wxss              |  163 ++
 server/services/src/main/java/com/doumee/service/business/DriverInfoService.java                    |    9 
 small-program/unpackage/dist/dev/mp-weixin/app.json                                                 |   38 
 small-program/App.vue                                                                               |    2 
 small-program/pages/evaluate/evaluate.vue                                                           |  329 +++++
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/message`/message.wxml                         |    2 
 server/services/src/main/java/com/doumee/config/wx/WxPayV3Service.java                              |    2 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/message/message.js                            |    2 
 small-program/shop/pages/write-off/write-off.vue                                                    |  195 +++
 server/services/src/main/java/com/doumee/dao/business/model/WithdrawalOrders.java                   |    3 
 server/services/src/main/java/com/doumee/config/wx/WxPayProperties.java                             |   14 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-info/store-info.wxml                    |    1 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/write-off/write-off.wxss                      |  100 +
 small-program/shop/pages/login/login.vue                                                            |   25 
 small-program/shop/images/ic_saoma@2x.png                                                           |    0 
 small-program/unpackage/dist/dev/mp-weixin/pages/mine/mine.js                                       |    4 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/mine/mine.wxml                                |    2 
 small-program/unpackage/dist/dev/mp-weixin/pages/evaluate/evaluate.wxml                             |    1 
 small-program/shop/pages/qualification/qualification.vue                                            |    0 
 small-program/unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map                         |    2 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/message/message.wxml                          |    1 
 small-program/unpackage/dist/dev/mp-weixin/static/icon/ic_visible@2x.png                            |    0 
 server/services/src/main/java/com/doumee/config/wx/WxMiniConfig.java                                |   65 
 server/services/src/main/java/com/doumee/service/business/impl/ShopInfoServiceImpl.java             |    9 
 server/services/src/main/java/com/doumee/dao/dto/DriverDeliverDTO.java                              |   31 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-info/store-info.js                      |    2 
 server/services/src/main/resources/application-dev.yml                                              |   27 
 small-program/shop/pages/mine/mine.vue                                                              |   42 
 server/web/src/main/java/com/doumee/api/web/DriverInfoApi.java                                      |   13 
 small-program/shop/pages/wallet/wallet.vue                                                          |   41 
 small-program/unpackage/dist/dev/.sourcemap/mp-weixin/shop/pages/qualification/qualification.js.map |    1 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/message`/message.json                         |    4 
 /dev/null                                                                                           |    1 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-home/store-home.wxss                    |  197 ++-
 small-program/unpackage/dist/dev/.sourcemap/mp-weixin/shop/pages/message/message.js.map             |    1 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/message/message.json                          |    7 
 small-program/shop/pages/store-home/store-home.vue                                                  |  344 +++--
 small-program/pages.json                                                                            |   84 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/wallet/wallet.wxss                            |   24 
 server/services/db/db_change.sql                                                                    |    6 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-info/store-info.json                    |    4 
 server/services/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java               |   10 
 server/services/src/main/java/com/doumee/service/business/impl/OrdersServiceImpl.java               |  100 +
 server/web/src/main/resources/application.yml                                                       |    2 
 server/services/src/main/java/com/doumee/config/alipay/AlipayFundTransUniTransfer.java              |    2 
 small-program/unpackage/dist/dev/mp-weixin/shop/pages/qualification/qualification.wxml              |    1 
 86 files changed, 2,507 insertions(+), 765 deletions(-)

diff --git a/server/admin/src/main/resources/application.yml b/server/admin/src/main/resources/application.yml
index c39e822..a67904a 100644
--- a/server/admin/src/main/resources/application.yml
+++ b/server/admin/src/main/resources/application.yml
@@ -3,7 +3,7 @@
   port: 10010
 # 椤圭洰淇℃伅閰嶇疆
 project:
-  name: 杩戝揩
+  name: 楂橀搧琛屾潕瀵勫瓨
   version: 1.0.0
   # 鐜锛岀敓浜х幆澧僷roduction锛屽紑鍙戠幆澧僤evelopment
   env: production
diff --git a/server/services/db/db_change.sql b/server/services/db/db_change.sql
index b240fc2..96b2a07 100644
--- a/server/services/db/db_change.sql
+++ b/server/services/db/db_change.sql
@@ -5,6 +5,12 @@
 
 
 -- ============================================================
+-- 2026/04/22 鎻愮幇璁板綍琛ㄥ鍔犳敮浠樺疂瀹炲悕濮撳悕瀛楁
+-- ============================================================
+ALTER TABLE `withdrawal_orders` ADD COLUMN `ALI_NAME` VARCHAR(50) DEFAULT NULL COMMENT '鏀粯瀹濆疄鍚嶅鍚�' AFTER `ALI_ACCOUNT`;
+
+
+-- ============================================================
 -- 2026/04/20 鍟嗘埛涓庡徃鏈哄鍔犳敮浠樺疂瀹炲悕濮撳悕瀛楁
 -- ============================================================
 ALTER TABLE `shop_info` ADD COLUMN `ALI_NAME` VARCHAR(50) DEFAULT NULL COMMENT '鏀粯瀹濆疄鍚嶅鍚�' AFTER `ALI_ACCOUNT`;
diff --git a/server/services/src/main/java/com/doumee/config/alipay/AlipayFundTransUniTransfer.java b/server/services/src/main/java/com/doumee/config/alipay/AlipayFundTransUniTransfer.java
index be51792..49b9be6 100644
--- a/server/services/src/main/java/com/doumee/config/alipay/AlipayFundTransUniTransfer.java
+++ b/server/services/src/main/java/com/doumee/config/alipay/AlipayFundTransUniTransfer.java
@@ -188,7 +188,7 @@
         // 璁剧疆杞处涓氬姟鐨勬爣棰�
         data.setOrderTitle("浣i噾鎶ラ叕");
         // 璁剧疆鍘熸敮浠樺疂涓氬姟鍗曞彿
-        data.setOriginalOrderId("20190620110075000006640000063056");
+        data.setOriginalOrderId(dto.getOutBizNo());
         // 璁剧疆鏀舵鏂逛俊鎭�
         data.setOrderTitle("浣i噾鎶ラ叕");
         Participant payeeInfo = new Participant();
diff --git a/server/services/src/main/java/com/doumee/config/jwt/JwtTokenUtil.java b/server/services/src/main/java/com/doumee/config/jwt/JwtTokenUtil.java
index 1adf556..508a36a 100644
--- a/server/services/src/main/java/com/doumee/config/jwt/JwtTokenUtil.java
+++ b/server/services/src/main/java/com/doumee/config/jwt/JwtTokenUtil.java
@@ -119,7 +119,7 @@
      * @param token 鍘熶护鐗�
      * @return 鏂颁护鐗�
      */
-    public void logoutForH5(String token) {
+    public void logout(String token) {
         try {
             //鍒犻櫎鑰佺殑token
             redisTemplate.delete(Constants.REDIS_TOKEN_KEY+token);
diff --git a/server/services/src/main/java/com/doumee/config/wx/WxMiniConfig.java b/server/services/src/main/java/com/doumee/config/wx/WxMiniConfig.java
index d386941..9666dc4 100644
--- a/server/services/src/main/java/com/doumee/config/wx/WxMiniConfig.java
+++ b/server/services/src/main/java/com/doumee/config/wx/WxMiniConfig.java
@@ -8,19 +8,20 @@
 import com.github.binarywang.wxpay.constant.WxPayConstants;
 import com.github.binarywang.wxpay.service.WxPayService;
 import com.github.binarywang.wxpay.service.impl.WxPayServiceImpl;
-import com.wechat.pay.java.core.Config;
 import com.wechat.pay.java.core.RSAAutoCertificateConfig;
-import com.wechat.pay.java.core.RSAPublicKeyConfig;
 import com.wechat.pay.java.core.notification.NotificationParser;
-import com.wechat.pay.java.core.notification.RSAPublicKeyNotificationConfig;
 import com.wechat.pay.java.service.payments.jsapi.JsapiServiceExtension;
 import com.wechat.pay.java.service.refund.RefundService;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang3.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Configuration;
+import org.springframework.core.io.ClassPathResource;
+import org.springframework.util.StreamUtils;
 
 import javax.annotation.PostConstruct;
+import java.io.InputStream;
+import java.nio.charset.StandardCharsets;
 
 /**
  * 寰俊灏忕▼搴忕粍浠�
@@ -50,7 +51,7 @@
     @PostConstruct
     void init() {
         this.load_WxMaService();
-        this.load_wxPayService();
+//        this.load_wxPayService();
         this.load_wxPayV3Service();
 //        this.load_wxAppPayService();
     }
@@ -70,48 +71,44 @@
     /**
      * 鍒濆鍖栧井淇″皬绋嬪簭鏀粯 V2
      */
-    public void load_wxPayService() {
-        WxPayConfig payConfig = new WxPayConfig();
-        payConfig.setTradeType(WxPayConstants.TradeType.JSAPI);
-        payConfig.setSignType(WxPayConstants.SignType.MD5);
-        payConfig.setAppId(StringUtils.trimToNull(wxPayProperties.getAppId()));
-        payConfig.setMchId(StringUtils.trimToNull(wxPayProperties.getMchId()));
-        payConfig.setMchKey(StringUtils.trimToNull(wxPayProperties.getMchKey()));
-        payConfig.setKeyPath(StringUtils.trimToNull(wxPayProperties.getKeyPath()));
-        payConfig.setNotifyUrl(StringUtils.trimToNull(wxPayProperties.getNotifyUrl()));
-        WxPayService wxPayService = new WxPayServiceImpl();
-        wxPayService.setConfig(payConfig);
-        this.wxPayService = wxPayService;
-    }
+//    public void load_wxPayService() {
+//        WxPayConfig payConfig = new WxPayConfig();
+//        payConfig.setTradeType(WxPayConstants.TradeType.JSAPI);
+//        payConfig.setSignType(WxPayConstants.SignType.MD5);
+//        payConfig.setAppId(StringUtils.trimToNull(wxPayProperties.getAppId()));
+//        payConfig.setMchId(StringUtils.trimToNull(wxPayProperties.getMchId()));
+//        payConfig.setMchKey(StringUtils.trimToNull(wxPayProperties.getMchKey()));
+//        payConfig.setKeyPath(StringUtils.trimToNull(wxPayProperties.getKeyPath()));
+//        payConfig.setNotifyUrl(StringUtils.trimToNull(wxPayProperties.getNotifyUrl()));
+//        WxPayService wxPayService = new WxPayServiceImpl();
+//        wxPayService.setConfig(payConfig);
+//        this.wxPayService = wxPayService;
+//    }
 
     /**
      * 鍒濆鍖栧井淇℃敮浠� V3锛圝SAPI + 閫�娆� + 鍥炶皟楠岀锛�
+     * 浣跨敤骞冲彴璇佷功妯″紡锛堣嚜鍔ㄤ笅杞藉拰绠$悊寰俊骞冲彴璇佷功锛�
      */
     public void load_wxPayV3Service() {
         try {
-            Config config =
-                    new RSAPublicKeyConfig.Builder()
-                            .merchantId(wxPayProperties.getMchId()) //寰俊鏀粯鐨勫晢鎴峰彿
-                            .privateKeyFromPath(wxPayProperties.getPrivateKeyPath()) // 鍟嗘埛API璇佷功绉侀挜鐨勫瓨鏀捐矾寰�
-                            .merchantSerialNumber(wxPayProperties.getSerialNumer()) //鍟嗘埛API璇佷功搴忓垪鍙�
-                            .publicKeyFromPath(wxPayProperties.getPubKeyPath()) //寰俊鏀粯鍏挜鐨勫瓨鏀捐矾寰�
-                            .publicKeyId(wxPayProperties.getPublicKeyId()) //寰俊鏀粯鍏挜ID
-                            .apiV3Key(wxPayProperties.getApiV3Key()) //APIv3瀵嗛挜
-                            .build();
+            // 浠� classpath 璇诲彇鍟嗘埛绉侀挜
+            ClassPathResource keyResource = new ClassPathResource(StringUtils.trimToNull(wxPayProperties.getPrivateKeyPath()));
+            InputStream keyStream = keyResource.getInputStream();
+            String privateKey = StreamUtils.copyToString(keyStream, StandardCharsets.UTF_8);
+            keyStream.close();
 
-
-            // 鏀粯鍏挜閰嶇疆锛堢敤浜庡洖璋冮獙绛撅級
-            RSAPublicKeyNotificationConfig notifyConfig = new RSAPublicKeyNotificationConfig.Builder()
-                    .publicKeyFromPath(wxPayProperties.getPubKeyPath())
-                    .publicKeyId(wxPayProperties.getPublicKeyId())
-                    .apiV3Key(wxPayProperties.getApiV3Key())
+            RSAAutoCertificateConfig config = new RSAAutoCertificateConfig.Builder()
+                    .merchantId(StringUtils.trimToNull(wxPayProperties.getMchId()))
+                    .privateKey(privateKey)
+                    .merchantSerialNumber(StringUtils.trimToNull(wxPayProperties.getSerialNumer()))
+                    .apiV3Key(StringUtils.trimToNull(wxPayProperties.getApiV3Key()))
                     .build();
 
             v3JsapiService = new JsapiServiceExtension.Builder().config(config).build();
             v3RefundService = new RefundService.Builder().config(config).build();
-            v3NotificationParser = new NotificationParser(notifyConfig);
+            v3NotificationParser = new NotificationParser(config);
 
-            log.info("寰俊鏀粯V3鍒濆鍖栨垚鍔�");
+            log.info("寰俊鏀粯V3鍒濆鍖栨垚鍔燂紙骞冲彴璇佷功妯″紡锛�");
         } catch (Exception e) {
             log.error("寰俊鏀粯V3鍒濆鍖栧け璐�: {}", e.getMessage(), e);
         }
diff --git a/server/services/src/main/java/com/doumee/config/wx/WxPayProperties.java b/server/services/src/main/java/com/doumee/config/wx/WxPayProperties.java
index 69d36b6..350ce71 100644
--- a/server/services/src/main/java/com/doumee/config/wx/WxPayProperties.java
+++ b/server/services/src/main/java/com/doumee/config/wx/WxPayProperties.java
@@ -34,12 +34,12 @@
     /**
      * 鏀粯API瀵嗛挜
      */
-    private String mchKey;
+//    private String mchKey;
 
     /**
      * 鏀粯鍥炶皟鍦板潃
      */
-    private String notifyUrl;
+//    private String notifyUrl;
 
     /**
      * V3鏀粯鍥炶皟鍦板潃
@@ -54,7 +54,7 @@
     /**
      * 鏀粯璇佷功(p12)
      */
-    private String keyPath;
+//    private String keyPath;
 
 
 
@@ -73,18 +73,18 @@
     /**
      * 閫�娆惧洖璋�
      */
-    private String refundNotifyUrl;
+//    private String refundNotifyUrl;
 
     /**
      * 鍟嗘埛鏀粯鍏挜
      */
-    private String pubKeyPath;
+//    private String pubKeyPath;
 
 
     /**
      * 鏀粯绉橀挜
      */
-    private String privateCertPath;
+//    private String privateCertPath;
 
     /**
      * 鏀粯key
@@ -95,6 +95,6 @@
     /**
      * 寰俊鏀粯鍏挜ID
      */
-    private String publicKeyId;
+//    private String publicKeyId;
 
 }
diff --git a/server/services/src/main/java/com/doumee/config/wx/WxPayV3Service.java b/server/services/src/main/java/com/doumee/config/wx/WxPayV3Service.java
index 6a5ace2..ef98b8f 100644
--- a/server/services/src/main/java/com/doumee/config/wx/WxPayV3Service.java
+++ b/server/services/src/main/java/com/doumee/config/wx/WxPayV3Service.java
@@ -121,7 +121,7 @@
             return result;
         } catch (Exception e) {
             log.error("寰俊鏀粯V3閫�娆惧け璐�: {}", e.getMessage(), e);
-            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "閫�娆惧け璐ワ細" + e.getMessage());
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "閫�娆惧け璐ワ細璇疯仈绯荤鐞嗗憳");
         }
     }
 
diff --git a/server/services/src/main/java/com/doumee/core/constants/Constants.java b/server/services/src/main/java/com/doumee/core/constants/Constants.java
index e9e0622..c0e59b4 100644
--- a/server/services/src/main/java/com/doumee/core/constants/Constants.java
+++ b/server/services/src/main/java/com/doumee/core/constants/Constants.java
@@ -102,6 +102,7 @@
     public static final int ORDER_LOG_CANCEL = 4;           // 鍙栨秷璁㈠崟
     public static final int ORDER_LOG_CONFIRM_ARRIVE = 5;   // 纭椤惧鍒板簵
     public static final int ORDER_LOG_DRIVER_PICKUP = 6;    // 鍙告満瀹屾垚鍙栦欢
+    public static final int ORDER_LOG_DRIVER_DELIVER = 7;  // 鍙告満纭閫佽揪
 
     public static final String SUCCESS = "SUCCESS";
     public static final String FAIL = "FAIL";
@@ -369,9 +370,16 @@
             return null;
         }
 
-        public static String getDescByKey(int index) {
+        public static String getDescByKey(int index,int type) {
             for (OrderStatus c : OrderStatus.values()) {
                 if (c.getKey() == index) {
+                    if (c.getKey() == 5) {
+                        if(Constants.equalsInteger(type,Constants.ZERO)){
+                            return "寰呭彇浠�";
+                        }else{
+                            return Constants.equalsInteger(type,Constants.ONE)?"宸插埌搴�":"宸查�佽揪";
+                        }
+                    }
                     return c.getValue();
                 }
             }
@@ -516,6 +524,41 @@
     }
 
     /**
+     * 鍙告満璁㈠崟绔欏唴淇¢�氱煡鏋氫妇
+     * title: 閫氱煡鏍囬
+     * content: 閫氱煡鏂囨妯℃澘锛屽崰浣嶇鐢� {xxx} 琛ㄧず
+     */
+    @Getter
+    @AllArgsConstructor
+    public enum DriverOrderNotify {
+        WAIT_DELIVER("waitDeliver", "璁㈠崟寰呴厤閫�", "鎮ㄥ凡鎶㈠崟鎴愬姛锛岃鍗曪細{orderNo}璇锋寜鏃跺埌{shopName}鍙栦欢"),
+        DELIVERING("delivering", "閰嶉�佷腑", "琛屾潕璁㈠崟锛歿orderNo}宸插彇浠讹紝姝e湪閰嶉�佷腑锛岃鎸夋椂閫佽揪"),
+        ARRIVED("arrived", "宸查�佽揪", "琛屾潕璁㈠崟锛歿orderNo}宸查�佽揪{destination},璇疯仈绯荤敤鎴风‘璁ょ鏀�"),
+        FINISHED("finished", "璁㈠崟宸插畬鎴�", "琛屾潕璁㈠崟锛歿orderNo}宸插畬鎴愶紝鐩稿叧璁㈠崟缁撶畻浼氬湪{settleDays}涓伐浣滄棩鍐呯粨绠�"),
+        EVALUATED("evaluated", "璁㈠崟宸茶瘎浠�", "琛屾潕璁㈠崟锛歿orderNo}鐢ㄦ埛宸插畬鎴愯瘎浠凤紝鍙墠寰�璁㈠崟鏌ョ湅璇勪环鍐呭"),
+        REFUNDING("refunding", "閫�娆句腑", "琛屾潕璁㈠崟锛歿orderNo}鐢ㄦ埛宸叉彁浜ら��娆剧敵璇凤紝璇ヨ鍗曚换鍔″凡鍙栨秷锛岃鍕垮墠寰�銆�"),
+        SETTLED("settled", "璁㈠崟宸茬粨绠�", "琛屾潕璁㈠崟锛歿orderNo}骞冲彴宸插畬鎴愮粨绠楋紝閲戦涓簕amount}鍏冿紝璇锋敞鎰忔煡鏀躲��"),
+        CANCELLED("cancelled", "璁㈠崟鍙栨秷鎴愬姛", "琛屾潕璁㈠崟锛歿orderNo}宸插府鎮ㄥ彇娑堬紝鎮ㄤ粖鏃ヨ繕鍙富鍔ㄥ彇娑坽cancelLimit}娆¤鍗曪紝璇峰悎鐞嗗畨鎺掓帴鍗曘��")
+        ;
+
+        private final String key;
+        private final String title;
+        private final String content;
+
+        /**
+         * 鏍煎紡鍖栭�氱煡鍐呭
+         * @param params 閿�煎锛屽 "orderNo","123" 浜ゆ浛浼犲叆
+         */
+        public String format(String... params) {
+            String result = this.content;
+            for (int i = 0; i < params.length - 1; i += 2) {
+                result = result.replace("{" + params[i] + "}", params[i + 1]);
+            }
+            return result;
+        }
+    }
+
+    /**
      * 寰楀埌request瀵硅薄
      *
      * @return
diff --git a/server/services/src/main/java/com/doumee/dao/business/model/WithdrawalOrders.java b/server/services/src/main/java/com/doumee/dao/business/model/WithdrawalOrders.java
index 51edffa..b2a58e5 100644
--- a/server/services/src/main/java/com/doumee/dao/business/model/WithdrawalOrders.java
+++ b/server/services/src/main/java/com/doumee/dao/business/model/WithdrawalOrders.java
@@ -96,6 +96,9 @@
     @ApiModelProperty(value = "鏀粯瀹濇彁鐜拌处鎴�")
     private String aliAccount;
 
+    @ApiModelProperty(value = "鏀粯瀹濆疄鍚嶅鍚�")
+    private String aliName;
+
     @ApiModelProperty(value = "瀹℃壒鎿嶄綔浜猴紙鍏宠仈system_user锛�", example = "1")
     private Integer userId;
 
diff --git a/server/services/src/main/java/com/doumee/dao/dto/DriverDeliverDTO.java b/server/services/src/main/java/com/doumee/dao/dto/DriverDeliverDTO.java
new file mode 100644
index 0000000..7a35d3b
--- /dev/null
+++ b/server/services/src/main/java/com/doumee/dao/dto/DriverDeliverDTO.java
@@ -0,0 +1,31 @@
+package com.doumee.dao.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+import javax.validation.constraints.Size;
+import java.util.List;
+
+/**
+ * 鍙告満纭閫佽揪璇锋眰
+ * @author rk
+ * @date 2026/04/21
+ */
+@Data
+@ApiModel("鍙告満纭閫佽揪璇锋眰")
+public class DriverDeliverDTO {
+
+    @NotNull(message = "璁㈠崟涓婚敭涓嶈兘涓虹┖")
+    @ApiModelProperty(value = "璁㈠崟涓婚敭", required = true, example = "1")
+    private Integer orderId;
+
+    @NotNull(message = "閫佽揪鍥剧墖涓嶈兘涓虹┖")
+    @Size(min = 1, max = 3, message = "閫佽揪鍥剧墖1-3寮�")
+    @ApiModelProperty(value = "閫佽揪鍥剧墖鍒楄〃锛堟渶澶�3寮狅級", required = true)
+    private List<String> images;
+
+    @ApiModelProperty(value = "澶囨敞")
+    private String remark;
+}
diff --git a/server/services/src/main/java/com/doumee/dao/vo/MyOrderVO.java b/server/services/src/main/java/com/doumee/dao/vo/MyOrderVO.java
index 57d180f..8d96a90 100644
--- a/server/services/src/main/java/com/doumee/dao/vo/MyOrderVO.java
+++ b/server/services/src/main/java/com/doumee/dao/vo/MyOrderVO.java
@@ -26,8 +26,12 @@
     @ApiModelProperty(value = "瀵勫瓨鏂瑰紡:0=灏卞湴瀛樺彇锛�1=寮傚湴瀛樺彇")
     private Integer type;
 
-    @ApiModelProperty(value = "璁㈠崟鐘舵��")
+    @ApiModelProperty(value = "灏卞湴瀵勫瓨鐘舵�侊細0=寰呮敮浠�;1=寰呭瘎瀛�;2=宸插瘎瀛�;5=寰呭彇浠�;6=瀛樺湪閫炬湡;7=宸插畬鎴�;96:璁㈠崟鍏抽棴锛堥��娆撅級;97:鍙栨秷閫炬湡;98=鍙栨秷涓�;99=宸插彇娑�;" +
+            "            寮傚湴瀵勫瓨鐘舵�侊細0=寰呮敮浠�;1=寰呭瘎瀛�;2=宸插瘎瀛�;3=宸叉帴鍗�;4=娲鹃�佷腑;5=宸插埌搴�/宸查�佽揪;6=瀛樺湪閫炬湡;7=宸插畬鎴�;96:璁㈠崟鍏抽棴锛堥��娆撅級;97:鍙栨秷閫炬湡;98=鍙栨秷涓�;99=宸插彇娑�")
     private Integer status;
+
+    @ApiModelProperty(value = "鐘舵�佹枃妗�")
+    private String statusName;
 
     @ApiModelProperty(value = "鍒涘缓鏃堕棿")
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@@ -37,7 +41,13 @@
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     private Date expectedTakeTime;
 
+    @ApiModelProperty(value = "浼氬憳鍙栦欢鐮�")
+    private String memberVerifyCode;
+
     // ---- 瀛樹欢闂ㄥ簵 ----
+
+    @ApiModelProperty(value = "瀛樹欢闂ㄥ簵涓婚敭")
+    private Integer depositShopId;
 
     @ApiModelProperty(value = "瀛樹欢闂ㄥ簵鍚嶇О")
     private String depositShopName;
@@ -49,6 +59,9 @@
     private String depositShopPhone;
 
     // ---- 鍙栦欢淇℃伅 ----
+
+    @ApiModelProperty(value = "鍙栦欢闂ㄥ簵涓婚敭锛堟湁鍙栦欢闂ㄥ簵鏃惰繑鍥烇級")
+    private Integer takeShopId;
 
     @ApiModelProperty(value = "鍙栦欢闂ㄥ簵鍚嶇О锛堟湁鍙栦欢闂ㄥ簵鏃惰繑鍥烇級")
     private String takeShopName;
@@ -70,7 +83,7 @@
 
     // ---- 璐圭敤 ----
 
-    @ApiModelProperty(value = "鎶ヤ环淇濊垂锛堝垎锛�")
+    @ApiModelProperty(value = "淇濅环淇濊垂锛堝垎锛�")
     private Long declaredFee;
 
     @ApiModelProperty(value = "棰勪及璐圭敤锛堝垎锛�")
@@ -96,4 +109,9 @@
 
     @ApiModelProperty(value = "褰撳墠闂ㄥ簵瑙掕壊锛�1=瀛樹欢闂ㄥ簵锛�2=鍙栦欢闂ㄥ簵锛堜粎闂ㄥ簵绔繑鍥烇級")
     private Integer shopRole;
+
+    // ---- 璇勪环 ----
+
+    @ApiModelProperty(value = "璇勪环鐘舵�侊細0=鏈瘎浠凤紱1=宸茶瘎浠�")
+    private Integer commentStatus;
 }
diff --git a/server/services/src/main/java/com/doumee/dao/vo/OrderItemVO.java b/server/services/src/main/java/com/doumee/dao/vo/OrderItemVO.java
index f55f79e..1d4f825 100644
--- a/server/services/src/main/java/com/doumee/dao/vo/OrderItemVO.java
+++ b/server/services/src/main/java/com/doumee/dao/vo/OrderItemVO.java
@@ -25,9 +25,9 @@
     @ApiModelProperty(value = "鏁伴噺")
     private Integer num;
 
-    @ApiModelProperty(value = "鍗曚环锛堝厓锛�")
-    private Double unitPriceYuan;
+    @ApiModelProperty(value = "鍗曚环锛堝垎锛�")
+    private Long unitPrice;
 
-    @ApiModelProperty(value = "灏忚璐圭敤锛堝厓锛�")
-    private Double subtotal;
+    @ApiModelProperty(value = "灏忚璐圭敤锛堝垎锛�")
+    private Long subtotal;
 }
diff --git a/server/services/src/main/java/com/doumee/service/business/DriverInfoService.java b/server/services/src/main/java/com/doumee/service/business/DriverInfoService.java
index c274cc4..769f3d1 100644
--- a/server/services/src/main/java/com/doumee/service/business/DriverInfoService.java
+++ b/server/services/src/main/java/com/doumee/service/business/DriverInfoService.java
@@ -6,6 +6,7 @@
 import com.doumee.dao.dto.DriverGrabOrderDTO;
 import com.doumee.dao.business.model.DriverInfo;
 import com.doumee.dao.dto.DriverLoginRequest;
+import com.doumee.dao.dto.DriverDeliverDTO;
 import com.doumee.dao.dto.DriverPickupDTO;
 import com.doumee.dao.dto.DriverRegisterRequest;
 import com.doumee.dao.dto.DriverVerifyRequest;
@@ -241,4 +242,12 @@
      */
     void confirmPickup(Integer driverId, DriverPickupDTO dto);
 
+    /**
+     * 鍙告満纭閫佽揪锛堝紓鍦板瘎瀛樻棤鍙栦欢闂ㄥ簵锛夛紝璁㈠崟鐘舵�佷粠娲鹃�佷腑(4)鍙樹负宸查�佽揪(5)
+     *
+     * @param driverId 鍙告満涓婚敭
+     * @param dto      閫佽揪璇锋眰鍙傛暟
+     */
+    void confirmDeliver(Integer driverId, DriverDeliverDTO dto);
+
 }
diff --git a/server/services/src/main/java/com/doumee/service/business/MemberService.java b/server/services/src/main/java/com/doumee/service/business/MemberService.java
index 3512e96..5c45c70 100644
--- a/server/services/src/main/java/com/doumee/service/business/MemberService.java
+++ b/server/services/src/main/java/com/doumee/service/business/MemberService.java
@@ -149,7 +149,7 @@
 
     PlatformAboutVO getPlatformAboutUs();
 
-    void logOut(String token,Integer memberId);
+    void logOut(String token,Integer memberId,Integer userType);
 
     void logOff(String token,Integer memberId);
 
diff --git a/server/services/src/main/java/com/doumee/service/business/ShopInfoService.java b/server/services/src/main/java/com/doumee/service/business/ShopInfoService.java
index 590941b..4fe95a7 100644
--- a/server/services/src/main/java/com/doumee/service/business/ShopInfoService.java
+++ b/server/services/src/main/java/com/doumee/service/business/ShopInfoService.java
@@ -193,10 +193,10 @@
     ShopLoginVO shopPasswordLogin(ShopLoginDTO dto);
 
     /**
-     * 闂ㄥ簵闈欓粯鐧诲綍锛堟牴鎹畂penid锛�
-     * @param openid
+     * 闂ㄥ簵闈欓粯鐧诲綍锛堥粯璁ょ敤鎴锋惡甯︾殑openid杩涜鏌ヨ锛�
+     * @param memberId
      * @return 鐧诲綍缁撴灉
      */
-    ShopLoginVO shopSilentLogin(String openid);
+    ShopLoginVO shopSilentLogin(Integer memberId);
 
 }
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/DriverInfoServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/DriverInfoServiceImpl.java
index 920b9e6..b0b876c 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/DriverInfoServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/DriverInfoServiceImpl.java
@@ -141,6 +141,27 @@
         noticeService.create(notice);
     }
 
+    /**
+     * 鍙戦�佸徃鏈虹珯鍐呬俊閫氱煡
+     */
+    private void sendDriverNotice(Integer driverId, Constants.DriverOrderNotify notify, Integer orderId, String... params) {
+        DriverInfo driver = driverInfoMapper.selectById(driverId);
+        if (driver == null || driver.getMemberId() == null) {
+            return;
+        }
+        Notice notice = new Notice();
+        notice.setUserType(1); // 1=鍙告満
+        notice.setUserId(driver.getMemberId());
+        notice.setTitle(notify.getTitle());
+        notice.setContent(notify.format(params));
+        notice.setObjId(orderId);
+        notice.setObjType(0); // 0=璁㈠崟
+        notice.setStatus(0);  // 0=鏈
+        notice.setIsdeleted(Constants.ZERO);
+        notice.setCreateDate(new Date());
+        noticeService.create(notice);
+    }
+
     @Override
     public Integer create(DriverInfo driverInfo) {
         driverInfoMapper.insert(driverInfo);
@@ -1169,6 +1190,12 @@
         // 閫氱煡浼氬憳锛氬徃鏈哄彉鏇�
         sendOrderNotice(order.getMemberId(), Constants.MemberOrderNotify.DRIVER_CHANGED, orderId,
                 "orderNo", order.getCode());
+
+        // 閫氱煡鍙告満锛氬彇娑堟垚鍔�
+        int remainLimit = limit - (todayCancelCount != null ? todayCancelCount.intValue() + 1 : 1);
+        sendDriverNotice(driverId, Constants.DriverOrderNotify.CANCELLED, orderId,
+                "orderNo", order.getCode(),
+                "cancelLimit", String.valueOf(Math.max(remainLimit, 0)));
     }
 
     @Override
@@ -1243,6 +1270,12 @@
             sendShopNotice(order.getDepositShopId(), Constants.ShopOrderNotify.WAIT_PICKUP, orderId,
                     "orderNo", order.getCode());
         }
+
+        // 閫氱煡鍙告満锛氭姠鍗曟垚鍔�
+        String shopName = order.getDepositShopName() != null ? order.getDepositShopName() : order.getDepositLocation();
+        sendDriverNotice(driverId, Constants.DriverOrderNotify.WAIT_DELIVER, orderId,
+                "orderNo", order.getCode(),
+                "shopName", shopName != null ? shopName : "");
     }
 
     @Override
@@ -1318,6 +1351,88 @@
                     "orderNo", order.getCode(),
                     "driverName", driver.getName());
         }
+
+        // 閫氱煡鍙告満锛氬凡鍙栦欢閰嶉�佷腑
+        sendDriverNotice(driverId, Constants.DriverOrderNotify.DELIVERING, orderId,
+                "orderNo", order.getCode());
+    }
+
+    @Override
+    @Transactional
+    public void confirmDeliver(Integer driverId, DriverDeliverDTO dto) {
+        Integer orderId = dto.getOrderId();
+
+        // 1. 鏍¢獙鍙告満
+        DriverInfo driver = driverInfoMapper.selectById(driverId);
+        if (driver == null) {
+            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(), "鍙告満淇℃伅涓嶅瓨鍦�");
+        }
+
+        // 2. 鏍¢獙璁㈠崟
+        Orders order = ordersMapper.selectById(orderId);
+        if (order == null || Constants.ONE.equals(order.getDeleted())) {
+            throw new BusinessException(ResponseStatus.DATA_EMPTY.getCode(), "璁㈠崟涓嶅瓨鍦�");
+        }
+        if (!Constants.ONE.equals(order.getType())) {
+            throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "浠呭紓鍦板瘎瀛樿鍗曟敮鎸佹鎿嶄綔");
+        }
+        if (order.getTakeShopId() != null) {
+            throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "鏈夊彇浠堕棬搴楃殑璁㈠崟璇烽�佽揪鑷抽棬搴楁牳閿�");
+        }
+        if (!Constants.equalsInteger(order.getStatus(), Constants.OrderStatus.delivering.getStatus())) {
+            throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "褰撳墠璁㈠崟鐘舵�佷笉鍏佽纭閫佽揪");
+        }
+        if (!driverId.equals(order.getAcceptDriver())) {
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "鏃犳潈鎿嶄綔璇ヨ鍗�");
+        }
+
+        // 3. 淇濆瓨閫佽揪鍥剧墖
+        Date now = new Date();
+        if (dto.getImages() != null && !dto.getImages().isEmpty()) {
+            int sortNum = 0;
+            for (String url : dto.getImages()) {
+                Multifile multifile = new Multifile();
+                multifile.setObjId(orderId);
+                multifile.setObjType(Constants.FileType.DRIVER_DONE.getKey());
+                multifile.setType(Constants.ZERO);
+                multifile.setFileurl(url);
+                multifile.setIsdeleted(Constants.ZERO);
+                multifile.setCreateDate(now);
+                multifile.setSortnum(sortNum++);
+                multifileMapper.insert(multifile);
+            }
+        }
+
+        // 4. 鏇存柊璁㈠崟鐘舵�佷负宸查�佽揪(5)
+        ordersMapper.update(new UpdateWrapper<Orders>().lambda()
+                .set(Orders::getStatus, Constants.OrderStatus.arrived.getStatus())
+                .set(Orders::getArriveTime, now)
+                .set(Orders::getUpdateTime, now)
+                .eq(Orders::getId, orderId));
+
+        // 5. 鍐欏叆鎿嶄綔鏃ュ織
+        OrderLog log = new OrderLog();
+        log.setOrderId(orderId);
+        log.setTitle("鍙告満纭閫佽揪");
+        log.setLogInfo(StringUtils.isNotBlank(dto.getRemark()) ? dto.getRemark() : "鍙告満銆�" + driver.getName() + "銆戝凡閫佽揪");
+        log.setObjType(Constants.ORDER_LOG_DRIVER_DELIVER);
+        log.setOptUserId(driver.getMemberId());
+        log.setOptUserType(Constants.ONE);
+        log.setOrderStatus(Constants.OrderStatus.arrived.getStatus());
+        log.setCreateTime(now);
+        log.setDeleted(Constants.ZERO);
+        orderLogMapper.insert(log);
+
+        // 6. 閫氱煡浼氬憳锛氳鍗曞凡閫佽揪锛堟棤鍙栦欢闂ㄥ簵锛�
+        String destination = StringUtils.isNotBlank(order.getTakeShopAddress()) ? order.getTakeShopAddress() : "鐩殑鍦�";
+        sendOrderNotice(order.getMemberId(), Constants.MemberOrderNotify.ARRIVED_NO_SHOP, orderId,
+                "orderNo", order.getCode(),
+                "destination", destination);
+
+        // 閫氱煡鍙告満锛氬凡閫佽揪
+        sendDriverNotice(driverId, Constants.DriverOrderNotify.ARRIVED, orderId,
+                "orderNo", order.getCode(),
+                "destination", destination);
     }
 
     private List<String> getFileUrls(Integer orderId, int objType, String prefix) {
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
index cbd6691..3ac3d57 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/MemberServiceImpl.java
@@ -447,9 +447,13 @@
     }
 
     @Override
-    public void logOut(String token,Integer memberId){
-        memberMapper.update(new UpdateWrapper<Member>().lambda().setSql(" openid = null ").eq(Member::getId,memberId));
-        jwtTokenUtil.logoutForH5(token);
+    public void logOut(String token,Integer userId,Integer userType){
+        if(Constants.equalsInteger(userType,Constants.ZERO)){
+            memberMapper.update(new UpdateWrapper<Member>().lambda().setSql(" openid = null ").eq(Member::getId,userId));
+        }else if(Constants.equalsInteger(userType,Constants.TWO)){
+            shopInfoMapper.update(new UpdateWrapper<ShopInfo>().lambda().setSql(" openid = null ").eq(ShopInfo::getId,userId));
+        }
+        jwtTokenUtil.logout(token);
     }
 
 
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/OrdersServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/OrdersServiceImpl.java
index e4f0227..01df4f5 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/OrdersServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/OrdersServiceImpl.java
@@ -294,7 +294,7 @@
             return BigDecimal.ZERO;
         }
         String rateStr = systemDictDataBiz.queryByCode(Constants.OPERATION_CONFIG, Constants.OP_INSURANCE_RATE).getCode();
-        BigDecimal rate = new BigDecimal(rateStr);
+        BigDecimal rate = new BigDecimal(rateStr).divide(new BigDecimal("100"), 4, BigDecimal.ROUND_HALF_UP);
         return declaredValue.multiply(rate).setScale(2, BigDecimal.ROUND_HALF_UP);
     }
 
@@ -342,9 +342,11 @@
         List<Category> categories = categoryMapper.selectBatchIds(categoryIds);
         Map<Integer, String> categoryNameMap = new HashMap<>();
         Map<Integer, String> categoryDetailMap = new HashMap<>();
+        Map<Integer, String> categoryOtherFieldMap = new HashMap<>();
         for (Category c : categories) {
             categoryNameMap.put(c.getId(), c.getName());
             categoryDetailMap.put(c.getId(), c.getDetail());
+            categoryOtherFieldMap.put(c.getId(),c.getOtherField());
         }
 
         // 璁$畻姣忛」鐗╁搧璐圭敤锛氬皬璁� = 鍗曚环 脳 鏁伴噺 脳 澶╂暟
@@ -364,7 +366,7 @@
             ItemPriceVO vo = new ItemPriceVO();
             vo.setCategoryId(item.getCategoryId());
             vo.setCategoryName(categoryNameMap.getOrDefault(item.getCategoryId(), ""));
-            vo.setDetail(categoryDetailMap.get(item.getCategoryId()));
+            vo.setDetail(categoryOtherFieldMap.get(item.getCategoryId()));
             vo.setQuantity(item.getQuantity());
             vo.setUnitPrice(unitPrice);
             vo.setLocallyPrice(unitPrice);
@@ -462,9 +464,11 @@
         List<Category> categories = categoryMapper.selectBatchIds(categoryIds);
         Map<Integer, String> categoryNameMap = new HashMap<>();
         Map<Integer, String> categoryDetailMap = new HashMap<>();
+        Map<Integer, String> categoryOtherFieldMap = new HashMap<>();
         for (Category c : categories) {
             categoryNameMap.put(c.getId(), c.getName());
             categoryDetailMap.put(c.getId(), c.getDetail());
+            categoryOtherFieldMap.put(c.getId(),c.getOtherField());
         }
 
         // 3. 閫愰」璁$畻杩愯垂锛氳捣姝ヤ环 + 瓒呭嚭閮ㄥ垎闃舵浠�
@@ -503,7 +507,7 @@
             ItemPriceVO vo = new ItemPriceVO();
             vo.setCategoryId(item.getCategoryId());
             vo.setCategoryName(categoryNameMap.getOrDefault(item.getCategoryId(), ""));
-            vo.setDetail(categoryDetailMap.get(item.getCategoryId()));
+            vo.setDetail(categoryOtherFieldMap.get(item.getCategoryId()));
             vo.setQuantity(item.getQuantity());
             vo.setUnitPrice(unitPrice);
             vo.setLocallyPrice(locallyPrice);
@@ -1189,9 +1193,9 @@
                 item.setLuggageName(d.getLuggageName());
                 item.setLuggageDetail(d.getLuggageDetail());
                 item.setNum(d.getNum());
-                double unitPriceYuan = d.getUnitPrice() != null ? Constants.getFormatMoney(d.getUnitPrice()) : 0;
-                item.setUnitPriceYuan(unitPriceYuan);
-                item.setSubtotal(unitPriceYuan * (d.getNum() != null ? d.getNum() : 0));
+                long unitPriceFen = d.getUnitPrice() != null ? d.getUnitPrice() : 0L;
+                item.setUnitPrice(unitPriceFen);
+                item.setSubtotal(unitPriceFen * (d.getNum() != null ? d.getNum() : 0));
                 items.add(item);
             }
         }
@@ -1375,16 +1379,22 @@
                 vo.setCode(o.getCode());
                 vo.setType(o.getType());
                 vo.setStatus(o.getStatus());
+                vo.setStatusName(Constants.OrderStatus.getDescByKey(o.getStatus(),
+                        Constants.equalsInteger(o.getType(), Constants.ZERO)?o.getType():Objects.nonNull(o.getTakeShopId())?Constants.ONE:Constants.TWO)
+                );
                 vo.setCreateTime(o.getCreateTime());
                 vo.setExpectedTakeTime(o.getExpectedTakeTime());
+                vo.setMemberVerifyCode(o.getMemberVerifyCode());
 
                 // 瀛樹欢闂ㄥ簵锛堝叧鑱旀煡璇㈢洿鎺ュ彇鍊硷級
+                vo.setDepositShopId(o.getDepositShopId());
                 vo.setDepositShopName(o.getDepositShopName());
                 vo.setDepositShopLinkName(o.getDepositShopLinkName());
                 vo.setDepositShopPhone(o.getDepositShopLinkPhone());
 
                 // 鍙栦欢淇℃伅锛氭湁鍙栦欢闂ㄥ簵鍙栭棬搴楋紝鏃犲垯鍙栫敤鎴疯嚜閫夊彇浠剁偣
                 if (o.getTakeShopId() != null) {
+                    vo.setTakeShopId(o.getTakeShopId());
                     vo.setTakeShopName(o.getTakeShopName());
                     vo.setTakeShopAddress(o.getTakeShopAddress());
                 } else {
@@ -1399,6 +1409,9 @@
                 // 璐圭敤锛堝垎锛�
                 vo.setDeclaredFee(o.getDeclaredFee());
                 vo.setEstimatedAmount(o.getEstimatedAmount());
+
+                // 璇勪环鐘舵��
+                vo.setCommentStatus(o.getCommentStatus());
 
                 // 鏌ヨ鐗╁搧鏄庣粏锛堜竴娆℃煡璇紝鍚屾椂鐢ㄤ簬鐗╁搧鍒楄〃鍜岄�炬湡璁$畻锛�
                 List<OrdersDetail> details = ordersDetailMapper.selectList(
@@ -1472,6 +1485,9 @@
                 vo.setCode(o.getCode());
                 vo.setType(o.getType());
                 vo.setStatus(o.getStatus());
+                vo.setStatusName(Constants.OrderStatus.getDescByKey(o.getStatus(),
+                        Constants.equalsInteger(o.getType(), Constants.ZERO)?o.getType():Objects.nonNull(o.getTakeShopId())?Constants.ONE:Constants.TWO)
+                );
                 vo.setCreateTime(o.getCreateTime());
                 vo.setExpectedTakeTime(o.getExpectedTakeTime());
 
@@ -1687,11 +1703,6 @@
             throw new BusinessException(ResponseStatus.DATA_EMPTY);
         }
 
-        // 浠呭紓鍦板瘎瀛樺彲鍙栨秷
-        if (!Constants.equalsInteger(order.getType(), Constants.ONE)) {
-            throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "浠呭紓鍦板瘎瀛樿鍗曞彲鍙栨秷");
-        }
-
         Integer status = order.getStatus();
         if (status == null) {
             throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "璁㈠崟鐘舵�佸紓甯�");
@@ -1699,7 +1710,7 @@
 
         Date now = new Date();
 
-        // 寰呮敮浠橈細鐩存帴鍙栨秷
+        // 寰呮敮浠橈細鐩存帴鍙栨秷锛堜笉闄愯鍗曠被鍨嬶級
         if (Constants.equalsInteger(status, Constants.OrderStatus.waitPay.getStatus())) {
             order.setStatus(Constants.OrderStatus.cancelled.getStatus());
             order.setCancelTime(now);
@@ -1708,7 +1719,7 @@
             return;
         }
 
-        // 寰呭瘎瀛橈細鐩存帴鍙栨秷锛屽叏棰濋��娆�
+        // 寰呭瘎瀛橈細鐩存帴鍙栨秷锛屽叏棰濋��娆撅紙涓嶉檺璁㈠崟绫诲瀷锛�
         if (Constants.equalsInteger(status, Constants.OrderStatus.waitDeposit.getStatus())) {
             // 璁板綍閫�娆句俊鎭�
             OrdersRefund refund = new OrdersRefund();
@@ -1737,6 +1748,11 @@
             return;
         }
 
+        // 宸插瘎瀛�/宸叉帴鍗曪細浠呭紓鍦板瘎瀛樺彲鍙栨秷
+        if (!Constants.equalsInteger(order.getType(), Constants.ONE)) {
+            throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "浠呭紓鍦板瘎瀛樿鍗曞彲鍙栨秷");
+        }
+
         // 宸插瘎瀛�/宸叉帴鍗曪細杩涘叆鍙栨秷涓姸鎬�
         if (Constants.equalsInteger(status, Constants.OrderStatus.deposited.getStatus())
                 || Constants.equalsInteger(status, Constants.OrderStatus.accepted.getStatus())) {
@@ -1747,6 +1763,11 @@
             // 閫氱煡瀛樹欢闂ㄥ簵锛氶��娆剧敵璇�
             if (order.getDepositShopId() != null) {
                 sendShopNotice(order.getDepositShopId(), Constants.ShopOrderNotify.REFUNDING, orderId,
+                        "orderNo", order.getCode());
+            }
+            // 閫氱煡鍙告満锛氳鍗曢��娆句腑锛堝凡鎺ュ崟鎯呭喌涓嬪徃鏈洪渶鍋滄鏈嶅姟锛�
+            if (order.getAcceptDriver() != null && Constants.equalsInteger(order.getStatus(), Constants.OrderStatus.accepted.getStatus())) {
+                sendDriverNotice(order.getAcceptDriver(), Constants.DriverOrderNotify.REFUNDING, orderId,
                         "orderNo", order.getCode());
             }
             return;
@@ -1833,6 +1854,27 @@
         if (order.getTakeShopId() != null) {
             sendShopNotice(order.getTakeShopId(), notify, order.getId(), params);
         }
+    }
+
+    /**
+     * 鍙戦�佸徃鏈虹珯鍐呬俊閫氱煡
+     */
+    private void sendDriverNotice(Integer driverId, Constants.DriverOrderNotify notify, Integer orderId, String... params) {
+        DriverInfo driver = driverInfoMapper.selectById(driverId);
+        if (driver == null || driver.getMemberId() == null) {
+            return;
+        }
+        Notice notice = new Notice();
+        notice.setUserType(1); // 1=鍙告満
+        notice.setUserId(driver.getMemberId());
+        notice.setTitle(notify.getTitle());
+        notice.setContent(notify.format(params));
+        notice.setObjId(orderId);
+        notice.setObjType(0); // 0=璁㈠崟
+        notice.setStatus(0);  // 0=鏈
+        notice.setIsdeleted(Constants.ZERO);
+        notice.setCreateDate(new Date());
+        noticeService.create(notice);
     }
 
     @Override
@@ -2178,6 +2220,14 @@
                     "orderNo", order.getCode(),
                     "amount", String.valueOf(Constants.getFormatMoney(
                             order.getTotalAmount() != null ? order.getTotalAmount() : 0L)));
+
+            // 閫氱煡鍙告満锛氳鍗曞凡缁撶畻
+            if (order.getAcceptDriver() != null) {
+                sendDriverNotice(order.getAcceptDriver(), Constants.DriverOrderNotify.SETTLED, order.getId(),
+                        "orderNo", order.getCode(),
+                        "amount", String.valueOf(Constants.getFormatMoney(
+                                order.getDriverFee() != null ? order.getDriverFee() : 0L)));
+            }
         }
     }
 
@@ -2282,6 +2332,12 @@
         // 閫氱煡瀛樹欢闂ㄥ簵鍜屽彇浠堕棬搴楋細璁㈠崟宸茶瘎浠�
         notifyBothShops(order, Constants.ShopOrderNotify.EVALUATED,
                 "orderNo", order.getCode());
+
+        // 閫氱煡鍙告満锛氳鍗曞凡璇勪环
+        if (order.getAcceptDriver() != null) {
+            sendDriverNotice(order.getAcceptDriver(), Constants.DriverOrderNotify.EVALUATED, order.getId(),
+                    "orderNo", order.getCode());
+        }
     }
 
     /**
@@ -2424,6 +2480,12 @@
             notifyBothShops(order, Constants.ShopOrderNotify.FINISHED,
                     "orderNo", order.getCode(),
                     "settleDays", settleDays != null ? settleDays : "7");
+            // 閫氱煡鍙告満锛氳鍗曞凡瀹屾垚
+            if (order.getAcceptDriver() != null) {
+                sendDriverNotice(order.getAcceptDriver(), Constants.DriverOrderNotify.FINISHED, order.getId(),
+                        "orderNo", order.getCode(),
+                        "settleDays", settleDays != null ? settleDays : "7");
+            }
         } else {
             throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), "褰撳墠璁㈠崟鐘舵�佷笉鍏佽鏍搁攢");
         }
@@ -2529,6 +2591,12 @@
         notifyBothShops(order, Constants.ShopOrderNotify.FINISHED,
                 "orderNo", order.getCode(),
                 "settleDays", settleDays != null ? settleDays : "7");
+        // 閫氱煡鍙告満锛氳鍗曞凡瀹屾垚
+        if (order.getAcceptDriver() != null) {
+            sendDriverNotice(order.getAcceptDriver(), Constants.DriverOrderNotify.FINISHED, order.getId(),
+                    "orderNo", order.getCode(),
+                    "settleDays", settleDays != null ? settleDays : "7");
+        }
     }
 
     @Override
@@ -2575,6 +2643,12 @@
         notifyBothShops(order, Constants.ShopOrderNotify.FINISHED,
                 "orderNo", order.getCode(),
                 "settleDays", settleDays != null ? settleDays : "7");
+        // 閫氱煡鍙告満锛氳鍗曞凡瀹屾垚
+        if (order.getAcceptDriver() != null) {
+            sendDriverNotice(order.getAcceptDriver(), Constants.DriverOrderNotify.FINISHED, order.getId(),
+                    "orderNo", order.getCode(),
+                    "settleDays", settleDays != null ? settleDays : "7");
+        }
     }
 
     @Override
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/ShopInfoServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/ShopInfoServiceImpl.java
index cd636c8..cfc176a 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/ShopInfoServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/ShopInfoServiceImpl.java
@@ -1059,12 +1059,13 @@
     }
 
     @Override
-    public ShopLoginVO shopSilentLogin(String openid) {
-        if (StringUtils.isBlank(openid)) {
-            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "openid涓嶈兘涓虹┖");
+    public ShopLoginVO shopSilentLogin(Integer memberId) {
+        Member member = memberMapper.selectById(memberId);
+        if(Objects.isNull(member)||StringUtils.isBlank(member.getOpenid())){
+            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "褰撳墠鐧诲綍浼氬憳韬唤寮傚父,璇疯仈绯荤鐞嗗憳!");
         }
         ShopInfo shop = shopInfoMapper.selectOne(new QueryWrapper<ShopInfo>().lambda()
-                .eq(ShopInfo::getOpenid, openid)
+                .eq(ShopInfo::getOpenid, member.getOpenid())
                 .eq(ShopInfo::getDeleted, Constants.ZERO)
                 .last("limit 1"));
         if (shop == null) {
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/WithdrawalOrdersServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/WithdrawalOrdersServiceImpl.java
index 0d0b4c4..3fec8ed 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/WithdrawalOrdersServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/WithdrawalOrdersServiceImpl.java
@@ -258,7 +258,7 @@
         String doneInfo = null;
         if (Constants.ONE.equals(dto.getStatus())) {
             String aliAccount = order.getAliAccount();
-            String aliName = null;
+            String aliName = order.getAliName();
 
             // 浠庡徃鏈烘垨闂ㄥ簵鑾峰彇鏀粯瀹濊处鎴峰拰瀹炲悕濮撳悕
             if (StringUtils.isBlank(aliAccount)) {
@@ -478,6 +478,7 @@
         order.setType(Constants.ZERO);
         order.setOutBillNo(billNo);
         order.setAliAccount(dto.getAliAccount());
+        order.setAliName(driver.getAliName());
         order.setDeleted(Constants.ZERO);
         order.setCreateTime(now);
         order.setUpdateTime(now);
@@ -529,6 +530,7 @@
         order.setType(Constants.ZERO);
         order.setOutBillNo(billNo);
         order.setAliAccount(dto.getAliAccount());
+        order.setAliName(shop.getAliName());
         order.setDeleted(Constants.ZERO);
         order.setCreateTime(now);
         order.setUpdateTime(now);
diff --git a/server/services/src/main/resources/application-dev.yml b/server/services/src/main/resources/application-dev.yml
index 6292a33..04d8331 100644
--- a/server/services/src/main/resources/application-dev.yml
+++ b/server/services/src/main/resources/application-dev.yml
@@ -83,34 +83,15 @@
 ########################寰俊鏀粯鐩稿叧閰嶇疆########################
 wx:
   pay:
-#    appId: wxcd2b89fd2ff065f8
-#    appSecret: 3462fa186da7cb06c544df8d8664b63a
-#    mchId: 1229817002
-#    mchKey: u4TSNtv0wFP7WRfnxBgijYOtRhS9FvlM
-#    notifyUrl: http://xiaopiqiu2.natapp1.cc/web/api/wxPayNotify
-#    keyPath: D:\DouMee\dmkjWxcert\apiclient_cert.p12
     appId: wxb1b59320e803dc6c
     appSecret: eb93785c7bca3f0ff0364b0e26bfeb59
-    mchId: 1229817002    #鍟嗘埛鍙�
-    mchKey: u4TSNtv0wFP7WRfnxBgijYOtRhS9FvlM #鍟嗘埛绉橀挜
-    apiV3Key: 7tG4Vk9Zp2L8dXw5Jq0N3hR6yE1sF3cB #apiV3Key
-    serialNumer: 3FE90C2F3D40A56E1C51926F31B8A8D22426CCE0 #鍟嗘埛璇佷功搴忓垪鍙�
-    publicKeyId: PUB_KEY_ID_0112298170022025071700291836000600
-    pubKeyPath: D:\DouMee\1229817002_20220310_cert\pub_key.pem #鍟嗘埛鏀粯鍏挜
-    keyPath: D:\DouMee\1229817002_20220310_cert\apiclient_cert.p12
-    privateCertPath: D:\DouMee\1229817002_20220310_cert\apiclient_cert.pem
-    privateKeyPath: D:\DouMee\1229817002_20220310_cert\apiclient_key.pem
-    notifyUrl: http://xiaopiqiu2.natapp1.cc/web/wxPayNotify
-    refundNotifyUrl: http://xiaopiqiu2.natapp1.cc/web/wxRefundNotify
+    mchId: 1629568742    #鍟嗘埛鍙�
+    apiV3Key: NJTLJSTZYXZRGScaiwubuzichanbu666 #apiV3Key
+    serialNumer: 25D19D18217F4588841E5CD1AA0D1533DE8AF84A #鍟嗘埛璇佷功搴忓垪鍙�
+    privateKeyPath: pay/pro/wx/apiclient_key.pem
     v3NotifyUrl: http://xiaopiqiu2.natapp1.cc/web/api/wxPayV3Notify
     v3RefundNotifyUrl: http://xiaopiqiu2.natapp1.cc/web/api/wxRefundV3Notify
 
-#    appId: wx6264b4f3a697cbe8
-#    appSecret: 23734577e8978138c946b727f0394027
-#    mchId: 1629568742
-#    mchKey: NJTLJSTZYXZRGScaiwubuzichanbu666
-#    notifyUrl: https://test.doumee.cn/dmmall_web_api/web/api/wxPayNotify
-#    keyPath: D:\DouMee\gtxljcWxcert\apiclient_cert.p12
 
 alipay:
   pay:
diff --git a/server/web/src/main/java/com/doumee/api/web/AccountApi.java b/server/web/src/main/java/com/doumee/api/web/AccountApi.java
index fcaf0aa..4860a59 100644
--- a/server/web/src/main/java/com/doumee/api/web/AccountApi.java
+++ b/server/web/src/main/java/com/doumee/api/web/AccountApi.java
@@ -3,6 +3,7 @@
 import com.doumee.config.jwt.JwtTokenUtil;
 import com.doumee.core.annotation.LoginRequired;
 import com.doumee.core.annotation.trace.Trace;
+import com.doumee.core.constants.Constants;
 import com.doumee.core.model.ApiResponse;
 import com.doumee.dao.business.model.Member;
 import com.doumee.dao.dto.ShopLoginDTO;
@@ -68,27 +69,42 @@
         return ApiResponse.success("鎿嶄綔鎴愬姛", shopInfoService.shopPasswordLogin(dto));
     }
 
+    @LoginRequired
     @ApiOperation(value = "闂ㄥ簵闈欓粯鐧诲綍", notes = "鏍规嵁openid鑷姩鐧诲綍闂ㄥ簵锛屾湭缁戝畾鍒欒繑鍥炵┖")
     @GetMapping("/shopSilentLogin")
     @ApiImplicitParams({
-            @ApiImplicitParam(paramType = "query", dataType = "String", name = "openid", value = "寰俊openid", required = true)
+            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
     })
-    public ApiResponse<ShopLoginVO> shopSilentLogin(@RequestParam String openid) {
-        return ApiResponse.success("鎿嶄綔鎴愬姛", shopInfoService.shopSilentLogin(openid));
+    public ApiResponse<ShopLoginVO> shopSilentLogin() {
+        return ApiResponse.success("鎿嶄綔鎴愬姛", shopInfoService.shopSilentLogin(getMemberId()));
     }
 
     @LoginRequired
-    @ApiOperation(value = "閫�鍑虹櫥褰�", notes = "灏忕▼搴忕")
+    @ApiOperation(value = "浼氬憳閫�鍑虹櫥褰�", notes = "灏忕▼搴忕")
     @GetMapping("/logOut")
     @ApiImplicitParams({
             @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
     })
     public ApiResponse logOut() {
         String token = this.getRequest().getHeader(JwtTokenUtil.HEADER_KEY);
-        memberService.logOut(token,getMemberId());
+        memberService.logOut(token,getMemberId(), Constants.ZERO);
         return  ApiResponse.success("鎿嶄綔鎴愬姛");
     }
 
+
+    @LoginRequired
+    @ApiOperation(value = "闂ㄥ簵閫�鍑虹櫥褰�", notes = "灏忕▼搴忕")
+    @GetMapping("/logOutShop")
+    @ApiImplicitParams({
+            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true),
+    })
+    public ApiResponse logOutShop() {
+        String token = this.getRequest().getHeader(JwtTokenUtil.HEADER_KEY);
+        memberService.logOut(token,getShopId(), Constants.TWO);
+        return  ApiResponse.success("鎿嶄綔鎴愬姛");
+    }
+
+
     @LoginRequired
     @ApiOperation(value = "鐢ㄦ埛娉ㄩ攢", notes = "灏忕▼搴忕")
     @GetMapping("/logOff")
diff --git a/server/web/src/main/java/com/doumee/api/web/DriverInfoApi.java b/server/web/src/main/java/com/doumee/api/web/DriverInfoApi.java
index 45b6b08..966cb84 100644
--- a/server/web/src/main/java/com/doumee/api/web/DriverInfoApi.java
+++ b/server/web/src/main/java/com/doumee/api/web/DriverInfoApi.java
@@ -10,6 +10,7 @@
 import com.doumee.dao.dto.DriverActiveOrderDTO;
 import com.doumee.dao.dto.DriverGrabOrderDTO;
 import com.doumee.dao.dto.DriverLoginRequest;
+import com.doumee.dao.dto.DriverDeliverDTO;
 import com.doumee.dao.dto.DriverPickupDTO;
 import com.doumee.dao.dto.DriverRegisterRequest;
 import com.doumee.dao.dto.DriverVerifyRequest;
@@ -202,4 +203,16 @@
         return ApiResponse.success("鎿嶄綔鎴愬姛");
     }
 
+    @LoginDriverRequired
+    @Trace
+    @ApiOperation(value = "鍙告満纭閫佽揪", notes = "寮傚湴瀵勫瓨鏃犲彇浠堕棬搴楄鍗曪紝娲鹃�佷腑(status=4)鏃剁‘璁ら�佽揪锛岃鍗曡繘鍏ュ凡閫佽揪(status=5)")
+    @PostMapping("/confirmDeliver")
+    @ApiImplicitParams({
+            @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true)
+    })
+    public ApiResponse confirmDeliver(@RequestBody @Valid DriverDeliverDTO dto) {
+        driverInfoService.confirmDeliver(this.getDriverId(), dto);
+        return ApiResponse.success("鎿嶄綔鎴愬姛");
+    }
+
 }
diff --git a/server/web/src/main/java/com/doumee/api/web/OrdersApi.java b/server/web/src/main/java/com/doumee/api/web/OrdersApi.java
index d966ade..991f892 100644
--- a/server/web/src/main/java/com/doumee/api/web/OrdersApi.java
+++ b/server/web/src/main/java/com/doumee/api/web/OrdersApi.java
@@ -216,11 +216,11 @@
 
     @LoginRequired
     @ApiOperation(value = "浼氬憳纭鏀惰揣", notes = "寮傚湴瀵勫瓨涓旀棤鍙栦欢闂ㄥ簵鐨勮鍗曪紝閫佽揪鍚庣‘璁ゆ敹璐ф爣璁拌鍗曞畬鎴�")
-    @PostMapping("/confirmReceipt")
+    @PostMapping("/confirmReceipt/{orderId}")
     @ApiImplicitParams({
             @ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "鐢ㄦ埛token鍊�", required = true)
     })
-    public ApiResponse confirmReceipt(@RequestParam Integer orderId) {
+    public ApiResponse confirmReceipt(@PathVariable Integer orderId) {
         ordersService.memberConfirmReceipt(orderId, getMemberId());
         return ApiResponse.success("纭鏀惰揣鎴愬姛");
     }
diff --git a/server/web/src/main/resources/application.yml b/server/web/src/main/resources/application.yml
index 17dde0d..c4b6cec 100644
--- a/server/web/src/main/resources/application.yml
+++ b/server/web/src/main/resources/application.yml
@@ -3,7 +3,7 @@
   port: 10011
 # 椤圭洰淇℃伅閰嶇疆
 project:
-  name: 杩戝揩
+  name: 楂橀搧琛屾潕瀵勫瓨
   version: 1.0.0
   # 鐜锛岀敓浜х幆澧僷roduction锛屽紑鍙戠幆澧僤evelopment
   env: development
diff --git a/small-program/App.vue b/small-program/App.vue
index b135e6e..cabc044 100644
--- a/small-program/App.vue
+++ b/small-program/App.vue
@@ -39,7 +39,7 @@
 				let res = await that.$u.api.getMemberInfo({})
 				if (res.code === 200) {
 					await that.$store.commit('setUserInfo', res.data)
-					await that.$store.commit('setOpenid', res.data.openId)
+					await that.$store.commit('setOpenid', res.data.openid)
 				}
 				// 璁剧疆瀹氫綅
 				await that.checkLocationAuth()
diff --git a/small-program/components/custom-tabbar/custom-tabbar.vue b/small-program/components/custom-tabbar/custom-tabbar.vue
index ca09a2a..5af402a 100644
--- a/small-program/components/custom-tabbar/custom-tabbar.vue
+++ b/small-program/components/custom-tabbar/custom-tabbar.vue
@@ -59,7 +59,7 @@
 					},
 					{
 						text: '娑堟伅',
-						pagePath: '/pages/message/message',
+						pagePath: '/shop/pages/message/message',
 						iconPath: '/static/icon/nav_xiaoxi@2x.png',
 						selectedIconPath: '/static/icon/nav_xiaoxi_sel@2x.png'
 					},
@@ -99,10 +99,18 @@
 			},
 			switchTab(item) {
 				const currentPath = getCurrentPages()[getCurrentPages().length - 1].$page.fullPath
-				if (currentPath !== item.pagePath) {
-					uni.switchTab({
-						url: item.pagePath
-					})
+				if (this.userType === 1) {
+					if (currentPath !== item.pagePath) {
+						uni.redirectTo({
+							url: item.pagePath
+						})
+					}
+				} else {
+					if (currentPath !== item.pagePath) {
+						uni.switchTab({
+							url: item.pagePath
+						})
+					}
 				}
 			}
 		}
diff --git a/small-program/pages.json b/small-program/pages.json
index 0a9e43e..30f717c 100644
--- a/small-program/pages.json
+++ b/small-program/pages.json
@@ -63,18 +63,6 @@
 			}
 		},
 		{
-			"path": "pages/qualification/qualification",
-			"style": {
-				"navigationBarTitleText": "鎴戠殑璧勮川"
-			}
-		},
-		{
-			"path": "pages/store-info/store-info",
-			"style": {
-				"navigationBarTitleText": "闂ㄥ簵淇℃伅"
-			}
-		},
-		{
 			"path": "pages/all-orders/all-orders",
 			"style": {
 				"navigationBarTitleText": "鍏ㄩ儴璁㈠崟"
@@ -129,26 +117,10 @@
 				"navigationBarTitleText": "閫夋嫨鍩庡競"
 			}
 		},
-
 		{
-			"path": "pages/shop-index/shop-index",
+			"path": "pages/evaluate/evaluate",
 			"style": {
-				"navigationBarTitleText": "闂ㄥ簵棣栭〉",
-				"navigationStyle": "custom"
-			}
-		},
-		{
-			"path": "pages/shop-mine/shop-mine",
-			"style": {
-				"navigationBarTitleText": "闂ㄥ簵鎴戠殑",
-				"navigationStyle": "custom"
-			}
-		},
-		{
-			"path": "pages/shop-wallet/shop-wallet",
-			"style": {
-				"navigationBarTitleText": "闂ㄥ簵閽卞寘",
-				"navigationStyle": "custom"
+				"navigationBarTitleText": "璇勪环"
 			}
 		}
 	],
@@ -179,12 +151,44 @@
 				{
 					"path": "pages/wallet/wallet",
 					"style": {
-						"navigationBarTitleText": "闂ㄥ簵閽卞寘"
+						"navigationBarTitleText": "闂ㄥ簵閽卞寘",
+						"navigationStyle": "custom"
+					}
+				},
+				{
+					"path": "pages/write-off/write-off",
+					"style": {
+						"navigationBarTitleText": "鎵嬪姩鏍搁獙"
+					}
+				},
+				{
+					"path": "pages/qualification/qualification",
+					"style": {
+						"navigationBarTitleText": "鎴戠殑璧勮川"
+					}
+				},
+				{
+					"path": "pages/store-info/store-info",
+					"style": {
+						"navigationBarTitleText": "闂ㄥ簵淇℃伅"
+					}
+				},
+				{
+					"path": "pages/message/message",
+					"style": {
+						"navigationBarTitleText": "娑堟伅",
+						"navigationStyle": "custom"
 					}
 				}
 			]
 		}
 	],
+	"preloadRule": {
+	    "pages/index/index": {
+			"network": "all",
+			"packages": ["shop"]
+	    }
+	},
 	"globalStyle": {
 		"navigationBarTextStyle": "black",
 		"navigationBarTitleText": "",
@@ -221,24 +225,6 @@
 				"iconPath": "static/icon/nav_wode@2x.png",
 				"selectedIconPath": "static/icon/nav_wode_sel@2x.png",
 				"text": "鎴戠殑"
-			},
-			{
-				"pagePath": "pages/shop-index/shop-index",
-				"iconPath": "static/icon/nav_home@2x.png",
-				"selectedIconPath": "static/icon/nav_home_sel@2x.png",
-				"text": "闂ㄥ簵棣栭〉"
-			},
-			{
-				"pagePath": "pages/shop-wallet/shop-wallet",
-				"iconPath": "static/icon/nav_home@2x.png",
-				"selectedIconPath": "static/icon/nav_home_sel@2x.png",
-				"text": "闂ㄥ簵閽卞寘"
-			},
-			{
-				"pagePath": "pages/shop-mine/shop-mine",
-				"iconPath": "static/icon/nav_wode@2x.png",
-				"selectedIconPath": "static/icon/nav_wode_sel@2x.png",
-				"text": "闂ㄥ簵鎴戠殑"
 			}
 		]
 	}
diff --git a/small-program/pages/evaluate/evaluate.vue b/small-program/pages/evaluate/evaluate.vue
new file mode 100644
index 0000000..2710250
--- /dev/null
+++ b/small-program/pages/evaluate/evaluate.vue
@@ -0,0 +1,329 @@
+<template>
+	<view class="evaluate-page">
+		<view class="content-wrap">
+			<view class="rate-block">
+				<view class="title-row">
+					<text class="title-label">瀵勪欢闂ㄥ簵锛�</text>
+					<text class="title-value">涓搧蹇繍鍗楃珯鏃楄埌搴�</text>
+				</view>
+				<view class="star-row">
+					<view class="star-list">
+						<view
+							v-for="n in 5"
+							:key="'shop-' + n"
+							class="star-item"
+							:class="{ active: n <= shopRate, dashed: n === 1 || n === 3 }"
+							@tap="shopRate = n"
+						>鈽�</view>
+					</view>
+					<text class="rate-text">{{ shopRate }}鏄�</text>
+				</view>
+			</view>
+
+			<view class="divider"></view>
+
+			<view class="rate-block">
+				<view class="title-row">
+					<text class="title-label">閰嶉�佸徃鏈猴細</text>
+					<text class="title-value">寮犱紵</text>
+				</view>
+				<view class="star-row no-text-row">
+					<view class="star-list">
+						<view
+							v-for="n in 5"
+							:key="'driver-' + n"
+							class="star-item"
+							:class="{ active: n <= driverRate, dashed: n === 1 }"
+							@tap="driverRate = n"
+						>鈽�</view>
+					</view>
+				</view>
+			</view>
+
+			<view class="divider"></view>
+
+			<view class="rate-block">
+				<view class="title-row">
+					<text class="title-label">鏀朵欢闂ㄥ簵锛�</text>
+					<text class="title-value">涓搧蹇繍鍚堣偉绔欐棗鑸板簵</text>
+				</view>
+				<view class="star-row no-text-row">
+					<view class="star-list">
+						<view
+							v-for="n in 5"
+							:key="'receive-' + n"
+							class="star-item"
+							:class="{ active: n <= receiveRate, dashed: n === 1 }"
+							@tap="receiveRate = n"
+						>鈽�</view>
+					</view>
+				</view>
+			</view>
+
+			<view class="divider"></view>
+
+			<view class="upload-row">
+				<view class="upload-box">
+					<view class="upload-plus">+</view>
+					<text class="upload-text">涓婁紶鐓х墖</text>
+				</view>
+				<view v-for="(item, index) in photoList" :key="index" class="photo-box">
+					<image class="photo-image" :src="item" mode="aspectFill"></image>
+					<text class="photo-delete">鍒犻櫎</text>
+				</view>
+			</view>
+
+			<view class="textarea-box">
+				<view class="textarea-placeholder-wrap">
+					<view class="textarea-icon"></view>
+					<textarea v-model="content" class="textarea" maxlength="200" placeholder="璇疯璇存偍瀵规湰娆℃湇鍔$殑鎰熷彈" placeholder-class="textarea-placeholder"></textarea>
+				</view>
+				<text class="textarea-count">{{ content.length }}/200</text>
+			</view>
+		</view>
+
+		<view class="submit-wrap">
+			<view class="submit-btn">鎻愪氦璇勪环</view>
+		</view>
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+				shopRate: 2,
+				driverRate: 0,
+				receiveRate: 0,
+				content: '',
+				photoList: [
+					'/static/icon/nav_home_sel@2x.png',
+					'/static/icon/nav_xingcheng_sel@2x.png'
+				]
+			}
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.evaluate-page {
+		background: #ffffff;
+		padding: 0 30rpx;
+		box-sizing: border-box;
+	}
+
+	.content-wrap {
+		padding-bottom: 40rpx;
+	}
+
+	.rate-block {
+		padding: 40rpx 0;
+		box-sizing: border-box;
+	}
+
+	.title-row {
+		display: flex;
+		align-items: center;
+		flex-wrap: wrap;
+	}
+
+	.title-label,
+	.title-value {
+		font-weight: 400;
+		font-size: 30rpx;
+		color: #222222;
+	}
+
+	.title-label {
+		font-weight: 500;
+	}
+
+	.title-value {
+		font-weight: 500;
+	}
+
+	.star-row {
+		margin-top: 30rpx;
+		display: flex;
+		align-items: center;
+		justify-content: space-between;
+	}
+
+	.no-text-row {
+		justify-content: flex-start;
+	}
+
+	.star-list {
+		display: flex;
+		align-items: center;
+	}
+
+	.star-item {
+		width: 54rpx;
+		height: 54rpx;
+		margin-right: 10rpx;
+		display: flex;
+		align-items: center;
+		justify-content: center;
+		font-size: 50rpx;
+		line-height: 1;
+		color: #e5e7eb;
+		position: relative;
+	}
+
+	.star-item.active {
+		color: #ffc533;
+	}
+
+	.rate-text {
+		font-size: 30rpx;
+		color: #666666;
+	}
+
+	.divider {
+		height: 1rpx;
+		background: #f0f1f4;
+		margin-bottom: 26rpx;
+	}
+
+	.upload-row {
+		display: flex;
+		align-items: flex-start;
+		gap: 10rpx;
+		margin-bottom: 22rpx;
+	}
+
+	.upload-box,
+	.photo-box {
+		width: 122rpx;
+		height: 122rpx;
+		border-radius: 0;
+		overflow: hidden;
+		position: relative;
+		box-sizing: border-box;
+	}
+
+	.upload-box {
+		border: 1rpx dashed #c8ccd4;
+		display: flex;
+		flex-direction: column;
+		align-items: center;
+		justify-content: center;
+	}
+
+	.upload-plus {
+		font-size: 54rpx;
+		line-height: 1;
+		color: #999999;
+	}
+
+	.upload-text {
+		margin-top: 8rpx;
+		font-size: 24rpx;
+		color: #999999;
+	}
+
+	.photo-image {
+		width: 100%;
+		height: 100%;
+	}
+
+	.photo-delete {
+		position: absolute;
+		left: 0;
+		right: 0;
+		bottom: 0;
+		height: 32rpx;
+		line-height: 32rpx;
+		text-align: center;
+		font-size: 22rpx;
+		color: #ffffff;
+		background: rgba(0, 0, 0, 0.45);
+	}
+
+	.textarea-box {
+		background: #f6f8fb;
+		border-radius: 18rpx;
+		padding: 18rpx 18rpx 16rpx;
+		box-sizing: border-box;
+	}
+
+	.textarea-placeholder-wrap {
+		display: flex;
+		align-items: flex-start;
+	}
+
+	.textarea-icon {
+		width: 26rpx;
+		height: 26rpx;
+		border: 2rpx solid #b9bec7;
+		margin-top: 8rpx;
+		margin-right: 12rpx;
+		box-sizing: border-box;
+		position: relative;
+	}
+
+	.textarea-icon::before,
+	.textarea-icon::after {
+		content: '';
+		position: absolute;
+		background: #b9bec7;
+	}
+
+	.textarea-icon::before {
+		width: 20rpx;
+		height: 2rpx;
+		left: 2rpx;
+		top: 11rpx;
+		transform: rotate(-45deg);
+	}
+
+	.textarea-icon::after {
+		width: 2rpx;
+		height: 12rpx;
+		right: 4rpx;
+		top: 3rpx;
+		transform: rotate(-45deg);
+	}
+
+	.textarea {
+		flex: 1;
+		min-height: 260rpx;
+		font-size: 28rpx;
+		line-height: 1.6;
+		color: #333333;
+		background: transparent;
+	}
+
+	.textarea-placeholder {
+		font-size: 28rpx;
+		color: #b9bec7;
+	}
+
+	.textarea-count {
+		display: block;
+		margin-top: 8rpx;
+		text-align: right;
+		font-size: 20rpx;
+		color: #999999;
+	}
+
+	.submit-wrap {
+		position: fixed;
+		left: 18rpx;
+		right: 18rpx;
+		bottom: calc(16rpx + env(safe-area-inset-bottom));
+	}
+
+	.submit-btn {
+		height: 78rpx;
+		border-radius: 39rpx;
+		background: #22abf4;
+		display: flex;
+		align-items: center;
+		justify-content: center;
+		font-size: 34rpx;
+		font-weight: 500;
+		color: #ffffff;
+	}
+</style>
diff --git a/small-program/pages/shop-index/shop-index.vue b/small-program/pages/shop-index/shop-index.vue
deleted file mode 100644
index bcf7799..0000000
--- a/small-program/pages/shop-index/shop-index.vue
+++ /dev/null
@@ -1,13 +0,0 @@
-<template>
-	<view></view>
-</template>
-
-<script>
-	export default {
-		onLoad(options) {
-			uni.redirectTo('/shop/pages/store-home/store-home')
-		}
-	}
-</script>
-
-<style lang="scss" scoped></style>
\ No newline at end of file
diff --git a/small-program/pages/shop-mine/shop-mine.vue b/small-program/pages/shop-mine/shop-mine.vue
deleted file mode 100644
index 27347cd..0000000
--- a/small-program/pages/shop-mine/shop-mine.vue
+++ /dev/null
@@ -1,13 +0,0 @@
-<template>
-	<view></view>
-</template>
-
-<script>
-	export default {
-		onLoad(options) {
-			uni.redirectTo('/shop/pages/mine/mine')
-		}
-	}
-</script>
-
-<style lang="scss" scoped></style>
\ No newline at end of file
diff --git a/small-program/pages/shop-wallet/shop-wallet.vue b/small-program/pages/shop-wallet/shop-wallet.vue
deleted file mode 100644
index 487d6f5..0000000
--- a/small-program/pages/shop-wallet/shop-wallet.vue
+++ /dev/null
@@ -1,13 +0,0 @@
-<template>
-	<view></view>
-</template>
-
-<script>
-	export default {
-		onLoad(options) {
-			uni.redirectTo('/shop/pages/wallet/wallet')
-		}
-	}
-</script>
-
-<style lang="scss" scoped></style>
\ No newline at end of file
diff --git a/small-program/shop/images/ic_saoma@2x.png b/small-program/shop/images/ic_saoma@2x.png
new file mode 100644
index 0000000..30bc367
--- /dev/null
+++ b/small-program/shop/images/ic_saoma@2x.png
Binary files differ
diff --git a/small-program/shop/pages/login/login.vue b/small-program/shop/pages/login/login.vue
index de6bb48..230bd54 100644
--- a/small-program/shop/pages/login/login.vue
+++ b/small-program/shop/pages/login/login.vue
@@ -39,7 +39,7 @@
 
 	export default {
 		computed: {
-			...mapState(['openid'])
+			...mapState(['openid', 'userInfo'])
 		},
 		data() {
 			return {
@@ -48,6 +48,23 @@
 					telephone: '',
 					password: ''
 				}
+			}
+		},
+		onLoad() {
+			// 闈欓粯鐧诲綍
+			if (this.userInfo.bindShopId) {
+				this.$u.api.shopSilentLogin({})
+					.then(res => {
+						if (res.code === 200) {
+							this.$store.commit('setUserType', 1)
+							this.$store.commit('setShopToken', res.data.token)
+							setTimeout(() => {
+								uni.reLaunch({
+									url: '/shop/pages/store-home/store-home'
+								});
+							}, 500)
+						}
+					})
 			}
 		},
 		methods: {
@@ -86,9 +103,9 @@
 						this.$store.commit('setShopToken', res.data.token)
 						uni.showToast({ title: '鐧诲綍鎴愬姛', icon: 'success' })
 						setTimeout(() => {
-							uni.switchTab({
-								url: '/pages/shop-index/shop-index'
-							})
+							uni.reLaunch({
+								url: '/shop/pages/store-home/store-home'
+							});
 						}, 1500)
 					} else {
 						uni.showToast({
diff --git a/small-program/shop/pages/message/message.vue b/small-program/shop/pages/message/message.vue
new file mode 100644
index 0000000..e935e2f
--- /dev/null
+++ b/small-program/shop/pages/message/message.vue
@@ -0,0 +1,187 @@
+<template>
+	<view class="itinerary-page">
+		<view class="top-fixed">
+			<view class="top-gradient"></view>
+			<view class="top-inner">
+				<view :style="{ height: statusbarHeight + 'px' }"></view>
+				<view class="header-bar" :style="{ height: navHeight + 'px' }">
+					<text class="header-title">鎴戠殑娑堟伅</text>
+				</view>
+			</view>
+		</view>
+		<view class="content">
+			<view class="message-item" v-for="item in noticeList" :key="item.id">
+				<view class="message-item-image">
+					<view class="message-item-image-dian" v-if="item.status === 0"></view>
+					<image src="/static/icon/xiaoxi_ic_tongzhi3@2x.png" mode="widthFix"></image>
+				</view>
+				<view class="message-item-info">
+					<text>{{ item.title }}</text>
+					<text>{{ item.content }}</text>
+					<text>{{ item.createDate }}</text>
+				</view>
+			</view>
+		</view>
+		<custom-tabbar></custom-tabbar>
+	</view>
+</template>
+
+<script>
+	import { mapState } from 'vuex'
+	import CustomTabbar from '@/components/custom-tabbar/custom-tabbar.vue'
+
+	export default {
+		components: {
+			CustomTabbar
+		},
+		data() {
+			return {
+				noticeList: [],
+				pageNum: 1,
+				pageSize: 10,
+				total: 0
+			}
+		},
+		computed: {
+			...mapState(['navHeight', 'statusbarHeight', 'token'])
+		},
+		async onShow() {
+			await this.$onLaunched
+			if (!this.token) {
+				return
+			}
+			this.pageNum = 1
+			this.total = 0
+			this.noticeList = []
+			this.getNoticeList()
+		},
+		onReachBottom() {
+			if (this.noticeList.length < this.total) {
+				this.pageNum++
+				this.getNoticeList()
+			}
+		},
+		methods: {
+			async getNoticeList() {
+				const res = await this.$u.api.getMemberNoticePage({
+					page: this.pageNum,
+					capacity: this.pageSize,
+					model: {
+						userType: 0
+					}
+				})
+				if (res.code === 200) {
+					if (this.pageNum === 1) {
+						this.noticeList = res.data.records || []
+					} else {
+						this.noticeList = [...this.noticeList, ...(res.data.records || [])]
+					}
+					this.total = res.data.total || 0
+				}
+			}
+		}
+	}
+</script>
+<style>
+	page {
+		background-color: #F8F9FB;
+	}
+</style>
+<style lang="scss" scoped>
+	.top-fixed {
+		position: sticky;
+		left: 0;
+		top: 0;
+		width: 100%;
+		z-index: 20;
+	}
+
+	.top-gradient {
+		position: absolute;
+		left: 0;
+		top: 0;
+		width: 100%;
+		height: 100%;
+		background: linear-gradient(90deg, #1ba8fa 0%, #73e5cf 100%);
+	}
+
+	.top-inner {
+		position: relative;
+		z-index: 1;
+		padding-bottom: 18rpx;
+	}
+
+	.header-bar {
+		padding: 0 30rpx;
+		display: flex;
+		align-items: center;
+		justify-content: space-between;
+		box-sizing: border-box;
+	}
+
+	.header-title {
+		font-weight: 600;
+		font-size: 40rpx;
+		color: #FFFFFF;
+	}
+
+	.content {
+		width: 100%;
+		padding: 20rpx 30rpx;
+		box-sizing: border-box;
+		.message-item {
+			width: 100%;
+			padding: 30rpx;
+			box-sizing: border-box;
+			background: #FFFFFF;
+			border-radius: 16rpx;
+			display: flex;
+			align-items: flex-start;
+			margin-bottom: 20rpx;
+			.message-item-image {
+				flex-shrink: 0;
+				width: 64rpx;
+				height: 64rpx;
+				margin-right: 20rpx;
+				position: relative;
+				image {
+					width: 100%;
+					height: 100%;
+				}
+				.message-item-image-dian {
+					position: absolute;
+					right: 0;
+					top: 0;
+					width: 18rpx;
+					height: 18rpx;
+					background: #FF0000;
+					border-radius: 50%;
+				}
+			}
+			.message-item-info {
+				flex: 1;
+				display: flex;
+				flex-direction: column;
+				text {
+					&:nth-child(1) {
+						font-weight: 500;
+						font-size: 30rpx;
+						color: #222222;
+					}
+					&:nth-child(2) {
+						font-weight: 400;
+						font-size: 26rpx;
+						color: #666666;
+						margin-top: 16rpx;
+					}
+					&:nth-child(3) {
+						font-weight: 400;
+						font-size: 24rpx;
+						color: #999999;
+						margin-top: 16rpx;
+					}
+				}
+			}
+		}
+	}
+</style>
diff --git a/small-program/shop/pages/mine/mine.vue b/small-program/shop/pages/mine/mine.vue
index d16c8be..45877d2 100644
--- a/small-program/shop/pages/mine/mine.vue
+++ b/small-program/shop/pages/mine/mine.vue
@@ -1,10 +1,11 @@
 <template>
 	<view class="shop-mine-page">
-		<view :style="{ height: statusbarHeight + 'px' }"></view>
-		<view class="header">
-			<text class="title">鎴戠殑</text>
+		<view class="nav-bar" :style="{ paddingTop: statusbarHeight + 'px' }">
+			<view class="nav-content">
+				<text class="nav-title">鎴戠殑</text>
+			</view>
 		</view>
-		<view class="content">
+		<view class="page-content">
 			<text>闂ㄥ簵鎴戠殑椤甸潰</text>
 		</view>
 		<custom-tabbar></custom-tabbar>
@@ -30,14 +31,31 @@
 		min-height: 100vh;
 		background: #f8f8f8;
 	}
-	.header {
-		padding: 30rpx;
-		.title {
-			font-size: 40rpx;
-			font-weight: 600;
-		}
+
+	.nav-bar {
+		position: fixed;
+		top: 0;
+		left: 0;
+		right: 0;
+		background: #ffffff;
+		z-index: 100;
 	}
-	.content {
-		padding: 30rpx;
+
+	.nav-content {
+		height: 44px;
+		display: flex;
+		align-items: center;
+		justify-content: center;
+	}
+
+	.nav-title {
+		font-size: 34rpx;
+		font-weight: 600;
+		color: #333333;
+	}
+
+	.page-content {
+		padding-top: calc(44px + 44px);
+		min-height: 100vh;
 	}
 </style>
diff --git a/small-program/pages/qualification/qualification.vue b/small-program/shop/pages/qualification/qualification.vue
similarity index 100%
rename from small-program/pages/qualification/qualification.vue
rename to small-program/shop/pages/qualification/qualification.vue
diff --git a/small-program/shop/pages/store-home/store-home.vue b/small-program/shop/pages/store-home/store-home.vue
index b144a38..991a139 100644
--- a/small-program/shop/pages/store-home/store-home.vue
+++ b/small-program/shop/pages/store-home/store-home.vue
@@ -6,30 +6,40 @@
       <view class="custom-nav">
         <view :style="{ height: statusbarHeight + 'px' }"></view>
         <view class="nav-content" :style="{ height: navHeight + 'px' }">
+          <image class="nav-icon" src="/static/icon/ic_home@2x.png"></image>
           <text class="nav-title">涓搧蹇繍鍗楃珯鏃楄埌搴�</text>
         </view>
       </view>
-
+      <view :style="{ height: (statusbarHeight + navHeight) + 'px' }"></view>
       <!-- 鏁版嵁缁熻 -->
     <view class="stats-section" :style="{ backgroundImage: 'url(' + bgImg + ')' }">
       <view class="stats-tabs">
-        <text class="tab-item active">浠婃棩</text>
-        <text class="tab-item">鏈湀</text>
-        <text class="tab-item">涓婃湀</text>
+        <view class="stats-tabs-left">
+          <text class="tab-item active">浠婃棩</text>
+          <text class="tab-item">鏈湀</text>
+          <text class="tab-item">涓婃湀</text>
+        </view>
         <text class="tab-item right">鍦ㄥ簱璁㈠崟: 10</text>
       </view>
       
       <view class="stats-cards">
         <view class="stat-card">
-          <text class="stat-label">閿�鍞(鍏�)</text>
+          <view class="stat-label">
+            <text>閿�鍞(鍏�)</text>
+            <image class="stat-icon" src="/static/icon/ic_visible@2x.png"></image>
+          </view>
           <text class="stat-value">12,000.00</text>
         </view>
         <view class="stat-card">
-          <text class="stat-label">缁撶畻鍒╂鼎(鍏�)</text>
+          <view class="stat-label">
+            <text>缁撶畻鍒╂鼎(鍏�)</text>
+          </view>
           <text class="stat-value">1,200.00</text>
         </view>
         <view class="stat-card">
-          <text class="stat-label">璁㈠崟鏁�</text>
+          <view class="stat-label">
+            <text>璁㈠崟鏁�</text>
+          </view>
           <text class="stat-value">23</text>
         </view>
       </view>
@@ -46,27 +56,28 @@
         <image class="func-icon" src="/static/icon/ic_dingdanguanli@2x.png"></image>
         <text class="func-text">璁㈠崟绠$悊</text>
       </view>
-      <view class="func-btn">
+      <view class="func-btn" @click="goToStoreInfo">
         <image class="func-icon" src="/static/icon/ic_wodezizhi@2x.png"></image>
         <text class="func-text">闂ㄥ簵淇℃伅</text>
       </view>
-      <view class="func-btn">
+      <view class="func-btn" @click="goToQualification">
         <image class="func-icon" src="/static/icon/ic_wodezizhi@2x.png"></image>
         <text class="func-text">闂ㄥ簵璧勮川</text>
       </view>
     </view>
 
+    <text class="section-title">寰呭鐞嗚鍗�(2)</text>
+
     <!-- 寰呭鐞嗚鍗� -->
     <view class="orders-section">
-      <!-- <text class="section-title">寰呭鐞嗚鍗�(2)</text> -->
-      
       <view class="order-item">
         <view class="order-header">
-          <view class="order-tag">灏卞湴瀵勫瓨</view>
-          <text class="order-user">鏉庢槑 181****1898</text>
+          <view style="display: flex; align-items: center;">
+            <view class="order-tag">灏卞湴瀵勫瓨</view>
+            <text class="order-user">鏉庢槑 181****1898</text>
+          </view>
           <text class="order-status">寰呮牳楠�</text>
         </view>
-        
         <view class="order-items">
           <view class="order-product">
           <view class="product-info">
@@ -91,94 +102,51 @@
         </view>
         
         <view class="order-footer">
-          <text class="total-price">瀹炰粯娆�: 楼80.00</text>
+          <text class="total-price">
+            <text>瀹炰粯娆�: </text>
+            <text>楼80.00</text>
+          </text>
           <view class="order-buttons">
-            <button class="btn btn-secondary">鑱旂郴瀹㈡埛</button>
-            <button class="btn btn-primary">鎵爜鏍搁攢</button>
+            <button class="btn secondary">鑱旂郴瀹㈡埛</button>
+            <button class="btn primary">鎵爜鏍搁攢</button>
           </view>
         </view>
         
-        <text class="order-note">璁㈠崟澶囨敞: 13:30鏉ュ瘎瀛�</text>
-      </view>
-
-      <view class="order-item">
-        <view class="order-header">
-          <view class="order-tag">灏卞湴瀵勫瓨</view>
-          <text class="order-user">寮犳澃 151****7678</text>
-          <text class="order-status">寰呭彇浠�</text>
-        </view>
-        
-        <view class="order-items">
-          <view class="order-product">
-            <text class="product-name">澶т欢琛屾潕绠�</text>
-            <text class="product-spec">24-28瀵�</text>
-            <text class="product-price">楼35</text>
-            <text class="product-count">x1</text>
-          </view>
-          <view class="order-product">
-            <text class="product-name">涓欢琛屾潕绠�</text>
-            <text class="product-spec">24-28瀵�</text>
-            <text class="product-price">楼35</text>
-            <text class="product-count">x1</text>
-          </view>
-        </view>
-        
-        <view class="order-footer">
-          <text class="total-price">瀹炰粯娆�: 楼70.00</text>
-          <view class="order-buttons">
-            <button class="btn btn-secondary">鑱旂郴瀹㈡埛</button>
-            <button class="btn btn-primary">鎵爜鏍搁攢</button>
-          </view>
-        </view>
-        
-        <text class="order-note">璁㈠崟澶囨敞: -</text>
-      </view>
-      <view class="order-item">
-        <view class="order-header">
-          <view class="order-tag">灏卞湴瀵勫瓨</view>
-          <text class="order-user">寮犳澃 151****7678</text>
-          <text class="order-status">寰呭彇浠�</text>
-        </view>
-        
-        <view class="order-items">
-          <view class="order-product">
-            <text class="product-name">澶т欢琛屾潕绠�</text>
-            <text class="product-spec">24-28瀵�</text>
-            <text class="product-price">楼35</text>
-            <text class="product-count">x1</text>
-          </view>
-          <view class="order-product">
-            <text class="product-name">涓欢琛屾潕绠�</text>
-            <text class="product-spec">24-28瀵�</text>
-            <text class="product-price">楼35</text>
-            <text class="product-count">x1</text>
-          </view>
-        </view>
-        
-        <view class="order-footer">
-          <text class="total-price">瀹炰粯娆�: 楼70.00</text>
-          <view class="order-buttons">
-            <button class="btn btn-secondary">鑱旂郴瀹㈡埛</button>
-            <button class="btn btn-primary">鎵爜鏍搁攢</button>
-          </view>
-        </view>
-        
-        <text class="order-note">璁㈠崟澶囨敞: -</text>
+        <view class="order-note">璁㈠崟澶囨敞: 13:30鏉ュ瘎瀛�</view>
       </view>
     </view>
+    <custom-tabbar></custom-tabbar>
   </view>
 </template>
 
 <script>
 import { mapState } from 'vuex'
-
+import CustomTabbar from '@/components/custom-tabbar/custom-tabbar.vue'
 export default {
+  components: {
+    CustomTabbar
+  },
   computed: {
     ...mapState(['navHeight', 'statusbarHeight'])
   },
+  onReachBottom() {
+    console.log('store-home onReachBottom')
+  },
+  methods: {
+    goToStoreInfo() {
+      uni.navigateTo({
+        url: '/shop/pages/store-info/store-info'
+      })
+    },
+    goToQualification() {
+      uni.navigateTo({
+        url: '/shop/pages/qualification/qualification'
+      })
+    }
+  },
   data() {
     return {
-        bgImg: require('@/static/image/bg_card@2x.png'),
+      bgImg: require('@/static/image/bg_card@2x.png'),
       orders: [
         {
           id: 1,
@@ -211,10 +179,8 @@
 <style lang="scss" scoped>
 $bg-color: #f5f5f5;
 $primary-color: #1677ff;
-$success-color: #52c41a;
 $danger-color: #ff4d4f;
 $text-color: #333;
-$text-secondary-color: #666;
 $text-tertiary-color: #999;
 
 .container {
@@ -224,6 +190,9 @@
 
 /* 娓愬彉鑳屾櫙瀹瑰櫒 */
 .gradient-background {
+  padding: 0 30rpx;
+  box-sizing: border-box;
+  width: 100%;
   background: #C8F3FF;
   color: #1a1a1a;
   position: relative;
@@ -242,13 +211,25 @@
 
 /* 鑷畾涔夊鑸爮 */
 .custom-nav {
+  width: 100%;
   color: #1a1a1a;
+  background-color: #C8F3FF;
+  position: fixed;
+  top: 0;
+  left: 0;
+  z-index: 100;
 }
 
 .nav-content {
   display: flex;
   align-items: center;
   padding: 0 20rpx;
+}
+
+.nav-icon {
+  width: 64rpx;
+  height: 64rpx;
+  margin-right: 14rpx;
 }
 
 .nav-title {
@@ -259,8 +240,13 @@
 .stats-section {
   height: 256rpx;
   width: 100%;
+  padding: 30rpx;
+  box-sizing: border-box;
   background-repeat: no-repeat;
   background-size: 100% 100%;
+  margin-top: 20rpx;
+  position: relative;
+  z-index: 99;
 }
 
 .stats-tabs {
@@ -272,13 +258,21 @@
   z-index: 1;
 }
 
+.stats-tabs-left {
+  width: 43%;
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+}
+
 .tab-item {
   font-size: 28rpx;
-  color: #91d5ff;
+  color: rgba(255,255,255,0.8);
 
   &.active {
+    font-size: 32rpx;
     color: white;
-    font-weight: bold;
+    font-weight: 600;
   }
 
   &.right {
@@ -287,35 +281,54 @@
 }
 
 .stats-cards {
+  width: 100%;
+  height: 132rpx;
   display: flex;
   justify-content: space-between;
   position: relative;
   z-index: 1;
+  padding-top: 22rpx;
+  box-sizing: border-box;
+  border-top: 1rpx solid rgba(255,255,255,0.09);
 }
 
 .stat-card {
   flex: 1;
-  text-align: center;
+  text-align: left;
+  &:nth-child(1) {
+    flex: 2.3;
+  }
+  &:nth-child(2) {
+    flex: 2;
+  }
 }
 
 .stat-label {
-  display: block;
-  font-size: 24rpx;
-  color: #91d5ff;
-  margin-bottom: 10rpx;
+  display: flex;
+  height: 40rpx;
+  text {
+    font-size: 24rpx;
+    font-weight: 400;
+    color: rgba(255,255,255,0.7);
+  }
+  .stat-icon {
+    width: 40rpx;
+    height: 40rpx;
+    margin-left: 10rpx;
+  }
 }
 
 .stat-value {
-  display: block;
-  font-size: 36rpx;
-  font-weight: bold;
-  color: white;
+  font-weight: 600;
+  font-size: 44rpx;
+  color: #FFFFFF;
+  margin-top: 14rpx;
 }
 
 .function-buttons {
   background-color: white;
-  margin: 0 20rpx 20rpx;
-  border-radius: 12rpx;
+  margin: 30rpx 30rpx 40rpx 30rpx;
+  border-radius: 16rpx;
   padding: 30rpx;
   display: flex;
   justify-content: space-between;
@@ -329,37 +342,39 @@
 }
 
 .func-icon {
-  width: 80rpx;
-  height: 80rpx;
-  margin-bottom: 10rpx;
+  width: 88rpx;
+  height: 88rpx;
+  margin-bottom: 16rpx;
 }
 
 .func-text {
-  font-size: 24rpx;
-  color: $text-secondary-color;
+  font-weight: 400;
+  font-size: 26rpx;
+  color: #333333;
+  white-space: nowrap;
 }
 
 .orders-section {
-  background-color: white;
-  margin: 0 20rpx 20rpx;
-  border-radius: 12rpx;
-  padding: 20rpx;
+  margin: 30rpx;
 }
 
 .section-title {
+  width: 100%;
+  font-weight: 600;
   font-size: 32rpx;
-  font-weight: bold;
-  color: $text-color;
-  margin-bottom: 20rpx;
-  display: block;
+  color: #111111;
+  padding: 0 30rpx;
+  box-sizing: border-box;
 }
 
 .order-item {
-  border-bottom: 1rpx solid #eee;
-  padding: 20rpx 0;
-
+  background: #FFFFFF;
+  border-radius: 16rpx;
+  padding: 30rpx;
+  box-sizing: border-box;
+  margin-bottom: 20rpx;
   &:last-child {
-    border-bottom: none;
+    margin-bottom: 0;
   }
 }
 
@@ -367,68 +382,81 @@
   display: flex;
   justify-content: space-between;
   align-items: center;
-  margin-bottom: 20rpx;
+  margin-bottom: 28rpx;
   flex-wrap: wrap;
 }
 
 .order-tag {
-  background-color: $success-color;
+  background-color: #10B2FA;
   color: white;
-  padding: 8rpx 16rpx;
-  border-radius: 20rpx;
-  font-size: 24rpx;
+  width: 104rpx;
+  height: 40rpx;
+  line-height: 40rpx;
+  font-weight: 400;
+  font-size: 22rpx;
+  color: #FFFFFF;
+  text-align: center;
+  background: #10B2FA;
+  border-radius: 8rpx;
+  margin-right: 20rpx;
 }
 
 .order-user {
+  font-weight: 400;
   font-size: 28rpx;
-  color: $text-color;
+  color: #333333;
 }
 
 .order-status {
-  font-size: 28rpx;
-  color: $danger-color;
+  font-weight: 400;
+  font-size: 26rpx;
+  color: #FF0020;
 }
 
 .order-product {
   display: flex;
   justify-content: space-between;
   align-items: flex-start;
-  margin-bottom: 30rpx;
+  margin-bottom: 26rpx;
 }
 
 .product-info {
   flex: 3;
+  display: flex;
+  flex-direction: column;
 }
 
 .product-name {
+  font-weight: 600;
   font-size: 28rpx;
-  color: $text-color;
-  display: block;
+  color: #333333;
 }
 
 .product-spec {
+  font-weight: 400;
   font-size: 24rpx;
-  color: $text-tertiary-color;
-  display: block;
-  margin-top: 5rpx;
+  color: #8C939F;
+  margin-top: 12rpx;
 }
 
 .product-price-count {
   flex: 1;
-  text-align: right;
+  display: flex;
+  flex-direction: column;
+  align-items: flex-end;
 }
 
 .product-price {
-  font-size: 28rpx;
-  color: $danger-color;
-  display: block;
+  font-weight: 400;
+  font-size: 30rpx;
+  color: #333333;
 }
 
 .product-count {
+  font-weight: 400;
   font-size: 24rpx;
-  color: $text-tertiary-color;
-  display: block;
-  margin-top: 5rpx;
+  color: #8C939F;
+  margin-top: 12rpx;
 }
 
 .order-footer {
@@ -439,9 +467,20 @@
 }
 
 .total-price {
-  font-size: 28rpx;
-  color: $text-color;
-  font-weight: bold;
+  display: flex;
+  align-items: center;
+  text {
+    &:nth-child(1) {
+      font-weight: 400;
+      font-size: 26rpx;
+      color: #333333;
+    }
+    &:nth-child(2) {
+      font-weight: 600;
+      font-size: 26rpx;
+      color: #222222;
+    }
+  }
 }
 
 .order-buttons {
@@ -450,28 +489,33 @@
 }
 
 .btn {
-  padding: 20rpx 40rpx;
-  border-radius: 40rpx;
+  width: 160rpx;
+  height: 64rpx;
+  line-height: 64rpx;
+  text-align: center;
+  border-radius: 34rpx;
   font-size: 28rpx;
-  border: none;
+  padding: 0 !important;
 
   &.secondary {
     background-color: white;
-    color: $primary-color;
-    border: 2rpx solid $primary-color;
+    color: #004096;
+    border: 2rpx solid #004096;
   }
 
   &.primary {
-    background-color: $primary-color;
+    background-color: #004096;
     color: white;
   }
 }
 
 .order-note {
-  font-size: 24rpx;
-  color: $text-tertiary-color;
-  background-color: $bg-color;
+  width: 100%;
+  font-size: 26rpx;
+  color: #666666;
+  background-color: #F8F9FB;
   padding: 20rpx;
+  box-sizing: border-box;
   border-radius: 8rpx;
   margin-top: 20rpx;
 }
diff --git a/small-program/pages/store-info/store-info.vue b/small-program/shop/pages/store-info/store-info.vue
similarity index 100%
rename from small-program/pages/store-info/store-info.vue
rename to small-program/shop/pages/store-info/store-info.vue
diff --git a/small-program/shop/pages/wallet/wallet.vue b/small-program/shop/pages/wallet/wallet.vue
index 082af70..497ee37 100644
--- a/small-program/shop/pages/wallet/wallet.vue
+++ b/small-program/shop/pages/wallet/wallet.vue
@@ -1,10 +1,11 @@
 <template>
 	<view class="wallet-page">
-		<view :style="{ height: statusbarHeight + 'px' }"></view>
-		<view class="header">
-			<text class="title">闂ㄥ簵閽卞寘</text>
+		<view class="nav-bar" :style="{ paddingTop: statusbarHeight + 'px' }">
+			<view class="nav-content">
+				<text class="nav-title">闂ㄥ簵閽卞寘</text>
+			</view>
 		</view>
-		<view class="content">
+		<view class="page-content">
 			<text>閽卞寘椤甸潰</text>
 		</view>
 		<custom-tabbar></custom-tabbar>
@@ -30,14 +31,30 @@
 		min-height: 100vh;
 		background: #f8f8f8;
 	}
-	.header {
-		padding: 30rpx;
-		.title {
-			font-size: 40rpx;
-			font-weight: 600;
-		}
+
+	.nav-bar {
+		position: fixed;
+		top: 0;
+		left: 0;
+		right: 0;
+		background: #ffffff;
+		z-index: 100;
 	}
-	.content {
-		padding: 30rpx;
+
+	.nav-content {
+		height: 44px;
+		display: flex;
+		align-items: center;
+		justify-content: center;
+	}
+
+	.nav-title {
+		font-size: 34rpx;
+		font-weight: 600;
+		color: #333333;
+	}
+
+	.page-content {
+		padding-top: calc(44px + 44px);
 	}
 </style>
diff --git a/small-program/shop/pages/write-off/write-off.vue b/small-program/shop/pages/write-off/write-off.vue
new file mode 100644
index 0000000..e777cba
--- /dev/null
+++ b/small-program/shop/pages/write-off/write-off.vue
@@ -0,0 +1,195 @@
+<template>
+	<view class="box">
+		<view class="title">杈撳叆鏍搁獙鐮�</view>
+		<view class="input">
+			<input type="number" v-model="code" placeholder="璇疯緭鍏�6浣嶅彇浠剁爜" />
+		</view>
+		<view class="btn" v-if="!loading" @click="confirmDo">纭</view>
+		<view class="btn1" v-if="loading" >姝e湪鏌ヨ</view>
+		<view class="footer" @click="scanCodeDo">
+			<image src="/shop/images/ic_saoma@2x.png" mode="widthFix"></image>
+			<text>鎵爜鏍搁攢</text>
+		</view>
+		<u-popup :show="show1" round="15" :safeAreaInsetBottom="false" mode="center">
+			<view class="tc">
+				<view class="tc-contemt">
+					<view class="tc-contemt-title">璁㈠崟鏌ヨ缁撴灉</view>
+					<view class="tc-contemt-nr">
+						璁㈠崟銆恵{info.code}}銆戜笉婊¤冻鏍搁攢鏉′欢锛�
+					</view>
+				</view>
+				<view class="tc-btn">
+					<view class="tc-btn-item" @click="show1=false ">纭</view>
+				</view>
+			</view>
+		</u-popup>
+	</view>
+</template>
+
+<script>
+	import { mapState } from 'vuex'
+	export default {
+		computed: {
+			...mapState(['navHeight', 'statusbarHeight'])
+		},
+		data() {
+			return {
+				code:null,
+				show1:false,
+				loading:false,
+				id:null,
+				info:{}
+			};
+		},
+		onShow() {
+			// this.loading =false
+			// this.show1 =false
+			// this.info={}
+			// this.code =''
+			// this.checkShopLogin()
+		},
+		methods:{
+			scanCodeDo(){
+				this.code = ''
+				var that =this
+				uni.scanCode({
+				    success: function (res) {
+				        console.log('鏉$爜绫诲瀷锛�' + res.scanType);
+				        console.log('鏉$爜鍐呭锛�' + res.result);
+				        // 澶勭悊鎵弿缁撴灉
+						that.code = res.result
+						that.confirmDo()
+				    },
+				    fail: function (err) {
+						uni.showToast({
+							title:'鎵爜澶辫触',
+							icon:'error'
+						})
+				    }
+				});
+			},
+			async confirmDo(){
+				if(this.code ){
+					this.getShopDetail()
+				}
+			},
+			jumpWriteoffA(){
+				if(this.info && this.info.orderId){
+					uni.navigateTo({
+						url: '/pagesA/pages/write-off-a/write-off-a?id='+this.info.orderId
+					})
+				}
+			},
+			jumpBack(){
+				uni.navigateBack({delta:1})
+			}, 
+			 getShopDetail(){
+				if(this.loading){
+					return
+				}
+				this.loading =true
+				var that =this 
+				that.$u.api.getOrderDetailByCode({exchangeCode:this.code,tokenType:1  })
+				.then(res=>{
+					console.log(res)
+					if (res.code === 200) {
+						that.info = res.data 
+						if(res.data.orderStatus == 1 && res.data.receiveType ==1){
+							that.jumpWriteoffA()
+						}else{
+							this.show1 = !this.show1
+							this.loading =false
+						}
+					} 
+				}).catch(e=>{
+					this.loading =false
+				}).finally(e=>{
+					// this.loading =false
+				})
+			},
+			checkShopLogin(){
+				var that =this
+				if( this.shopInfo ==null || this.shopInfo.id==null ||  this.shopToken==null || this.shopToken==''){
+					uni.navigateTo({
+						url: '/pages/login/login'
+					})
+				} 
+			},
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.box {
+		width: 100vw;
+		height: 100vh;
+		display: flex;
+		padding-top: 198rpx;
+		box-sizing: border-box;
+		align-items: center;
+		flex-direction: column;
+		background: linear-gradient( 180deg, #C8F3FF 0%, #FFFFFF 52.19%, #FFFFFF 100%);
+		.title {
+			font-weight: 600;
+			font-size: 34rpx;
+			color: #222222;
+		}
+		.input {
+			width: 630rpx;
+			height: 88rpx;
+			padding: 0 30rpx;
+			box-sizing: border-box;
+			background: #FFFFFF;
+			border-radius: 50rpx;
+			border: 2rpx solid #004096;
+			margin-top: 40rpx;
+			input {
+				width: 100%;
+				height: 100%;
+				font-weight: 400;
+				font-size: 32rpx;
+				color: #111111;
+				text-align: center;
+			}
+		}
+		.btn1{
+			width: 630rpx;
+			height: 88rpx;
+			line-height: 88rpx;
+			text-align: center;
+			background: #666666;
+			border-radius: 44rpx;
+			font-weight: 600;
+			font-size: 32rpx;
+			color: #FFFFFF;
+			margin-top: 40rpx;
+		}
+		.btn {
+			width: 630rpx;
+			height: 88rpx;
+			line-height: 88rpx;
+			text-align: center;
+			background: #004096;
+			border-radius: 44rpx;
+			font-weight: 600;
+			font-size: 32rpx;
+			color: #FFFFFF;
+			margin-top: 40rpx;
+		}
+		.footer {
+			display: flex;
+			align-items: center;
+			margin-top: 48rpx;
+			image {
+				width: 40rpx;
+				height: 40rpx;
+				margin-right: 12rpx;
+			}
+			text {
+				font-weight: 400;
+				font-size: 28rpx;
+				color: #004096;
+			}
+		}
+	}
+</style>
\ No newline at end of file
diff --git a/small-program/static/icon/ic_home@2x.png b/small-program/static/icon/ic_home@2x.png
new file mode 100644
index 0000000..418f63f
--- /dev/null
+++ b/small-program/static/icon/ic_home@2x.png
Binary files differ
diff --git a/small-program/static/icon/ic_visible@2x.png b/small-program/static/icon/ic_visible@2x.png
new file mode 100644
index 0000000..a788b30
--- /dev/null
+++ b/small-program/static/icon/ic_visible@2x.png
Binary files differ
diff --git a/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map b/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map
index e0e6883..39d8725 100644
--- a/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map
+++ b/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/common/runtime.js.map
@@ -1 +1 @@
-{"version":3,"sources":[null],"names":[],"mappings":";QAAA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA,QAAQ,oBAAoB;QAC5B;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA,iBAAiB,4BAA4B;QAC7C;QACA;QACA,kBAAkB,2BAA2B;QAC7C;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;;QAEA;;QAEA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;QAEA;QACA;QACA;QACA;;;;;QAKA;;QAEA;QACA,iCAAiC;;QAEjC;QACA;QACA;QACA,KAAK;QACL;QACA;QACA;QACA,MAAM;QACN;;QAEA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,wBAAwB,kCAAkC;QAC1D,MAAM;QACN;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;QAEA;QACA,0CAA0C,oBAAoB,WAAW;;QAEzE;QACA;QACA;QACA;QACA,gBAAgB,uBAAuB;QACvC;;;QAGA;QACA","file":"common/runtime.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"common/runtime\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"common/runtime\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"\" + chunkId + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = global[\"webpackJsonp\"] = global[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// run deferred modules from other chunks\n \tcheckDeferredModules();\n"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"sources":[null],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","jsonpScriptSrc","p","exports","module","l","e","promises","installedChunkData","promise","Promise","resolve","reject","onScriptComplete","script","document","createElement","charset","timeout","nc","setAttribute","src","error","Error","event","onerror","onload","clearTimeout","chunk","errorType","type","realSrc","target","message","name","request","undefined","setTimeout","head","appendChild","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","err","console","jsonpArray","global","oldJsonpFunction","slice"],"mappings":"aACE,SAASA,EAAqBC,GAQ7B,IAPA,IAMIC,EAAUC,EANVC,EAAWH,EAAK,GAChBI,EAAcJ,EAAK,GACnBK,EAAiBL,EAAK,GAIHM,EAAI,EAAGC,EAAW,GACpCD,EAAIH,EAASK,OAAQF,IACzBJ,EAAUC,EAASG,GAChBG,OAAOC,UAAUC,eAAeC,KAAKC,EAAiBX,IAAYW,EAAgBX,IACpFK,EAASO,KAAKD,EAAgBX,GAAS,IAExCW,EAAgBX,GAAW,EAE5B,IAAID,KAAYG,EACZK,OAAOC,UAAUC,eAAeC,KAAKR,EAAaH,KACpDc,EAAQd,GAAYG,EAAYH,IAG/Be,GAAqBA,EAAoBhB,GAE5C,MAAMO,EAASC,OACdD,EAASU,OAATV,GAOD,OAHAW,EAAgBJ,KAAKK,MAAMD,EAAiBb,GAAkB,IAGvDe,IAER,SAASA,IAER,IADA,IAAIC,EACIf,EAAI,EAAGA,EAAIY,EAAgBV,OAAQF,IAAK,CAG/C,IAFA,IAAIgB,EAAiBJ,EAAgBZ,GACjCiB,GAAY,EACRC,EAAI,EAAGA,EAAIF,EAAed,OAAQgB,IAAK,CAC9C,IAAIC,EAAQH,EAAeE,GACG,IAA3BX,EAAgBY,KAAcF,GAAY,GAE3CA,IACFL,EAAgBQ,OAAOpB,IAAK,GAC5Be,EAASM,EAAoBA,EAAoBC,EAAIN,EAAe,KAItE,OAAOD,EAIR,IAAIQ,EAAmB,GAUnBhB,EAAkB,CACrB,iBAAkB,GAGfK,EAAkB,GAGtB,SAASY,EAAe5B,GACvB,OAAOyB,EAAoBI,EAAI,GAAK7B,EAAU,MAI/C,SAASyB,EAAoB1B,GAG5B,GAAG4B,EAAiB5B,GACnB,OAAO4B,EAAiB5B,GAAU+B,QAGnC,IAAIC,EAASJ,EAAiB5B,GAAY,CACzCK,EAAGL,EACHiC,GAAG,EACHF,QAAS,IAUV,OANAjB,EAAQd,GAAUW,KAAKqB,EAAOD,QAASC,EAAQA,EAAOD,QAASL,GAG/DM,EAAOC,GAAI,EAGJD,EAAOD,QAKfL,EAAoBQ,EAAI,SAAuBjC,GAC9C,IAAIkC,EAAW,GAOXC,EAAqBxB,EAAgBX,GACzC,GAA0B,IAAvBmC,EAGF,GAAGA,EACFD,EAAStB,KAAKuB,EAAmB,QAC3B,CAEN,IAAIC,EAAU,IAAIC,SAAQ,SAASC,EAASC,GAC3CJ,EAAqBxB,EAAgBX,GAAW,CAACsC,EAASC,MAE3DL,EAAStB,KAAKuB,EAAmB,GAAKC,GAGtC,IACII,EADAC,EAASC,SAASC,cAAc,UAGpCF,EAAOG,QAAU,QACjBH,EAAOI,QAAU,IACbpB,EAAoBqB,IACvBL,EAAOM,aAAa,QAAStB,EAAoBqB,IAElDL,EAAOO,IAAMpB,EAAe5B,GAG5B,IAAIiD,EAAQ,IAAIC,MAChBV,EAAmB,SAAUW,GAE5BV,EAAOW,QAAUX,EAAOY,OAAS,KACjCC,aAAaT,GACb,IAAIU,EAAQ5C,EAAgBX,GAC5B,GAAa,IAAVuD,EAAa,CACf,GAAGA,EAAO,CACT,IAAIC,EAAYL,IAAyB,SAAfA,EAAMM,KAAkB,UAAYN,EAAMM,MAChEC,EAAUP,GAASA,EAAMQ,QAAUR,EAAMQ,OAAOX,IACpDC,EAAMW,QAAU,iBAAmB5D,EAAU,cAAgBwD,EAAY,KAAOE,EAAU,IAC1FT,EAAMY,KAAO,iBACbZ,EAAMQ,KAAOD,EACbP,EAAMa,QAAUJ,EAChBH,EAAM,GAAGN,GAEVtC,EAAgBX,QAAW+D,IAG7B,IAAIlB,EAAUmB,YAAW,WACxBxB,EAAiB,CAAEiB,KAAM,UAAWE,OAAQlB,MAC1C,MACHA,EAAOW,QAAUX,EAAOY,OAASb,EACjCE,SAASuB,KAAKC,YAAYzB,GAG5B,OAAOJ,QAAQ8B,IAAIjC,IAIpBT,EAAoB2C,EAAIvD,EAGxBY,EAAoB4C,EAAI1C,EAGxBF,EAAoB6C,EAAI,SAASxC,EAAS+B,EAAMU,GAC3C9C,EAAoB+C,EAAE1C,EAAS+B,IAClCtD,OAAOkE,eAAe3C,EAAS+B,EAAM,CAAEa,YAAY,EAAMC,IAAKJ,KAKhE9C,EAAoBmD,EAAI,SAAS9C,GACX,qBAAX+C,QAA0BA,OAAOC,aAC1CvE,OAAOkE,eAAe3C,EAAS+C,OAAOC,YAAa,CAAEC,MAAO,WAE7DxE,OAAOkE,eAAe3C,EAAS,aAAc,CAAEiD,OAAO,KAQvDtD,EAAoBuD,EAAI,SAASD,EAAOE,GAEvC,GADU,EAAPA,IAAUF,EAAQtD,EAAoBsD,IAC/B,EAAPE,EAAU,OAAOF,EACpB,GAAW,EAAPE,GAA8B,kBAAVF,GAAsBA,GAASA,EAAMG,WAAY,OAAOH,EAChF,IAAII,EAAK5E,OAAO6E,OAAO,MAGvB,GAFA3D,EAAoBmD,EAAEO,GACtB5E,OAAOkE,eAAeU,EAAI,UAAW,CAAET,YAAY,EAAMK,MAAOA,IACtD,EAAPE,GAA4B,iBAATF,EAAmB,IAAI,IAAIM,KAAON,EAAOtD,EAAoB6C,EAAEa,EAAIE,EAAK,SAASA,GAAO,OAAON,EAAMM,IAAQC,KAAK,KAAMD,IAC9I,OAAOF,GAIR1D,EAAoB8D,EAAI,SAASxD,GAChC,IAAIwC,EAASxC,GAAUA,EAAOmD,WAC7B,WAAwB,OAAOnD,EAAO,YACtC,WAA8B,OAAOA,GAEtC,OADAN,EAAoB6C,EAAEC,EAAQ,IAAKA,GAC5BA,GAIR9C,EAAoB+C,EAAI,SAASgB,EAAQC,GAAY,OAAOlF,OAAOC,UAAUC,eAAeC,KAAK8E,EAAQC,IAGzGhE,EAAoBI,EAAI,IAGxBJ,EAAoBiE,GAAK,SAASC,GAA2B,MAApBC,QAAQ3C,MAAM0C,GAAYA,GAEnE,IAAIE,EAAaC,OAAO,gBAAkBA,OAAO,iBAAmB,GAChEC,EAAmBF,EAAWjF,KAAK0E,KAAKO,GAC5CA,EAAWjF,KAAOf,EAClBgG,EAAaA,EAAWG,QACxB,IAAI,IAAI5F,EAAI,EAAGA,EAAIyF,EAAWvF,OAAQF,IAAKP,EAAqBgG,EAAWzF,IAC3E,IAAIU,EAAsBiF,EAI1B7E,K","file":"common/runtime.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"common/runtime\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"common/runtime\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"\" + chunkId + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = global[\"webpackJsonp\"] = global[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// run deferred modules from other chunks\n \tcheckDeferredModules();\n"],"sourceRoot":""}
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/pages/evaluate/evaluate.js.map b/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/pages/evaluate/evaluate.js.map
new file mode 100644
index 0000000..81dfced
--- /dev/null
+++ b/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/pages/evaluate/evaluate.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["uni-app:///main.js","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/pages/evaluate/evaluate.vue?1835","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/pages/evaluate/evaluate.vue?176d","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/pages/evaluate/evaluate.vue?db85","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/pages/evaluate/evaluate.vue?0f61","uni-app:///pages/evaluate/evaluate.vue","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/pages/evaluate/evaluate.vue?6207"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page","renderjs","component","options","__file","components","render","_vm","this","_h","$createElement","g0","_self","_c","content","length","_isMounted","e0","$event","n","_temp","arguments","currentTarget","dataset","_temp2","eventParams","shopRate","e1","_temp3","_temp4","driverRate","e2","_temp5","_temp6","receiveRate","$mp","data","Object","assign","$root","recyclableRender","staticRenderFns","_withStripped","photoList"],"mappings":"kJAAA,MAGA,aACA,YAFAA,EAAGC,kCAAoCC,EAGvCC,EAAWC,a,gFCLX,oIACIC,EADJ,QASIC,EAAY,qBACd,aACA,YACA,sBACA,EACA,KACA,WACA,MACA,EACA,gBACAD,GAGFC,EAAUC,QAAQC,OAAS,8BACZ,aAAAF,E,0CCvBf,uQ,iCCAA,IAAIG,EAAJ,0LACA,IAAIC,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eAETC,GADKJ,EAAIK,MAAMC,GACVN,EAAIO,QAAQC,QAChBR,EAAIS,aACPT,EAAIU,GAAK,SAAUC,EAAQC,GACzB,IAAIC,EAAQC,UAAUA,UAAUN,OAAS,GAAGO,cAAcC,QACxDC,EAASJ,EAAMK,aAAeL,EAAM,gBACpCD,EAAIK,EAAOL,EAEbZ,EAAImB,SAAWP,GAEjBZ,EAAIoB,GAAK,SAAUT,EAAQC,GACzB,IAAIS,EAASP,UAAUA,UAAUN,OAAS,GAAGO,cAAcC,QACzDM,EAASD,EAAOH,aAAeG,EAAO,gBACtCT,EAAIU,EAAOV,EAEbZ,EAAIuB,WAAaX,GAEnBZ,EAAIwB,GAAK,SAAUb,EAAQC,GACzB,IAAIa,EAASX,UAAUA,UAAUN,OAAS,GAAGO,cAAcC,QACzDU,EAASD,EAAOP,aAAeO,EAAO,gBACtCb,EAAIc,EAAOd,EAEbZ,EAAI2B,YAAcf,IAGtBZ,EAAI4B,IAAIC,KAAOC,OAAOC,OACpB,GACA,CACEC,MAAO,CACL5B,GAAIA,MAKR6B,GAAmB,EACnBC,EAAkB,GACtBnC,EAAOoC,eAAgB,G,iCCxCvB,yHAAqxB,eAAG,G,yGC2FxxB,CACAN,gBACA,OACAV,WACAI,aACAI,cACApB,WACA6B,WACA,mCACA,4CAIA,a,iCCxGA,yHAAw9C,eAAG,G","file":"pages/evaluate/evaluate.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './pages/evaluate/evaluate.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./evaluate.vue?vue&type=template&id=2208e2a6&scoped=true&\"\nvar renderjs\nimport script from \"./evaluate.vue?vue&type=script&lang=js&\"\nexport * from \"./evaluate.vue?vue&type=script&lang=js&\"\nimport style0 from \"./evaluate.vue?vue&type=style&index=0&id=2208e2a6&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"2208e2a6\",\n  null,\n  false,\n  components,\n  renderjs\n)\n\ncomponent.options.__file = \"pages/evaluate/evaluate.vue\"\nexport default component.exports","export * from \"-!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--17-0!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./evaluate.vue?vue&type=template&id=2208e2a6&scoped=true&\"","var components\nvar render = function () {\n  var _vm = this\n  var _h = _vm.$createElement\n  var _c = _vm._self._c || _h\n  var g0 = _vm.content.length\n  if (!_vm._isMounted) {\n    _vm.e0 = function ($event, n) {\n      var _temp = arguments[arguments.length - 1].currentTarget.dataset,\n        _temp2 = _temp.eventParams || _temp[\"event-params\"],\n        n = _temp2.n\n      var _temp, _temp2\n      _vm.shopRate = n\n    }\n    _vm.e1 = function ($event, n) {\n      var _temp3 = arguments[arguments.length - 1].currentTarget.dataset,\n        _temp4 = _temp3.eventParams || _temp3[\"event-params\"],\n        n = _temp4.n\n      var _temp3, _temp4\n      _vm.driverRate = n\n    }\n    _vm.e2 = function ($event, n) {\n      var _temp5 = arguments[arguments.length - 1].currentTarget.dataset,\n        _temp6 = _temp5.eventParams || _temp5[\"event-params\"],\n        n = _temp6.n\n      var _temp5, _temp6\n      _vm.receiveRate = n\n    }\n  }\n  _vm.$mp.data = Object.assign(\n    {},\n    {\n      $root: {\n        g0: g0,\n      },\n    }\n  )\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./evaluate.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./evaluate.vue?vue&type=script&lang=js&\"","<template>\n\t<view class=\"evaluate-page\">\n\t\t<view class=\"content-wrap\">\n\t\t\t<view class=\"rate-block\">\n\t\t\t\t<view class=\"title-row\">\n\t\t\t\t\t<text class=\"title-label\">瀵勪欢闂ㄥ簵锛�</text>\n\t\t\t\t\t<text class=\"title-value\">涓搧蹇繍鍗楃珯鏃楄埌搴�</text>\n\t\t\t\t</view>\n\t\t\t\t<view class=\"star-row\">\n\t\t\t\t\t<view class=\"star-list\">\n\t\t\t\t\t\t<view\n\t\t\t\t\t\t\tv-for=\"n in 5\"\n\t\t\t\t\t\t\t:key=\"'shop-' + n\"\n\t\t\t\t\t\t\tclass=\"star-item\"\n\t\t\t\t\t\t\t:class=\"{ active: n <= shopRate, dashed: n === 1 || n === 3 }\"\n\t\t\t\t\t\t\t@tap=\"shopRate = n\"\n\t\t\t\t\t\t>鈽�</view>\n\t\t\t\t\t</view>\n\t\t\t\t\t<text class=\"rate-text\">{{ shopRate }}鏄�</text>\n\t\t\t\t</view>\n\t\t\t</view>\n\n\t\t\t<view class=\"divider\"></view>\n\n\t\t\t<view class=\"rate-block\">\n\t\t\t\t<view class=\"title-row\">\n\t\t\t\t\t<text class=\"title-label\">閰嶉�佸徃鏈猴細</text>\n\t\t\t\t\t<text class=\"title-value\">寮犱紵</text>\n\t\t\t\t</view>\n\t\t\t\t<view class=\"star-row no-text-row\">\n\t\t\t\t\t<view class=\"star-list\">\n\t\t\t\t\t\t<view\n\t\t\t\t\t\t\tv-for=\"n in 5\"\n\t\t\t\t\t\t\t:key=\"'driver-' + n\"\n\t\t\t\t\t\t\tclass=\"star-item\"\n\t\t\t\t\t\t\t:class=\"{ active: n <= driverRate, dashed: n === 1 }\"\n\t\t\t\t\t\t\t@tap=\"driverRate = n\"\n\t\t\t\t\t\t>鈽�</view>\n\t\t\t\t\t</view>\n\t\t\t\t</view>\n\t\t\t</view>\n\n\t\t\t<view class=\"divider\"></view>\n\n\t\t\t<view class=\"rate-block\">\n\t\t\t\t<view class=\"title-row\">\n\t\t\t\t\t<text class=\"title-label\">鏀朵欢闂ㄥ簵锛�</text>\n\t\t\t\t\t<text class=\"title-value\">涓搧蹇繍鍚堣偉绔欐棗鑸板簵</text>\n\t\t\t\t</view>\n\t\t\t\t<view class=\"star-row no-text-row\">\n\t\t\t\t\t<view class=\"star-list\">\n\t\t\t\t\t\t<view\n\t\t\t\t\t\t\tv-for=\"n in 5\"\n\t\t\t\t\t\t\t:key=\"'receive-' + n\"\n\t\t\t\t\t\t\tclass=\"star-item\"\n\t\t\t\t\t\t\t:class=\"{ active: n <= receiveRate, dashed: n === 1 }\"\n\t\t\t\t\t\t\t@tap=\"receiveRate = n\"\n\t\t\t\t\t\t>鈽�</view>\n\t\t\t\t\t</view>\n\t\t\t\t</view>\n\t\t\t</view>\n\n\t\t\t<view class=\"divider\"></view>\n\n\t\t\t<view class=\"upload-row\">\n\t\t\t\t<view class=\"upload-box\">\n\t\t\t\t\t<view class=\"upload-plus\">+</view>\n\t\t\t\t\t<text class=\"upload-text\">涓婁紶鐓х墖</text>\n\t\t\t\t</view>\n\t\t\t\t<view v-for=\"(item, index) in photoList\" :key=\"index\" class=\"photo-box\">\n\t\t\t\t\t<image class=\"photo-image\" :src=\"item\" mode=\"aspectFill\"></image>\n\t\t\t\t\t<text class=\"photo-delete\">鍒犻櫎</text>\n\t\t\t\t</view>\n\t\t\t</view>\n\n\t\t\t<view class=\"textarea-box\">\n\t\t\t\t<view class=\"textarea-placeholder-wrap\">\n\t\t\t\t\t<view class=\"textarea-icon\"></view>\n\t\t\t\t\t<textarea v-model=\"content\" class=\"textarea\" maxlength=\"200\" placeholder=\"璇疯璇存偍瀵规湰娆℃湇鍔$殑鎰熷彈\" placeholder-class=\"textarea-placeholder\"></textarea>\n\t\t\t\t</view>\n\t\t\t\t<text class=\"textarea-count\">{{ content.length }}/200</text>\n\t\t\t</view>\n\t\t</view>\n\n\t\t<view class=\"submit-wrap\">\n\t\t\t<view class=\"submit-btn\">鎻愪氦璇勪环</view>\n\t\t</view>\n\t</view>\n</template>\n\n<script>\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tshopRate: 2,\n\t\t\t\tdriverRate: 0,\n\t\t\t\treceiveRate: 0,\n\t\t\t\tcontent: '',\n\t\t\t\tphotoList: [\n\t\t\t\t\t'/static/icon/nav_home_sel@2x.png',\n\t\t\t\t\t'/static/icon/nav_xingcheng_sel@2x.png'\n\t\t\t\t]\n\t\t\t}\n\t\t}\n\t}\n</script>\n\n<style lang=\"scss\" scoped>\n\t.evaluate-page {\n\t\tbackground: #ffffff;\n\t\tpadding: 0 30rpx;\n\t\tbox-sizing: border-box;\n\t}\n\n\t.content-wrap {\n\t\tpadding-bottom: 40rpx;\n\t}\n\n\t.rate-block {\n\t\tpadding: 40rpx 0;\n\t\tbox-sizing: border-box;\n\t}\n\n\t.title-row {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tflex-wrap: wrap;\n\t}\n\n\t.title-label,\n\t.title-value {\n\t\tfont-weight: 400;\n\t\tfont-size: 30rpx;\n\t\tcolor: #222222;\n\t}\n\n\t.title-label {\n\t\tfont-weight: 500;\n\t}\n\n\t.title-value {\n\t\tfont-weight: 500;\n\t}\n\n\t.star-row {\n\t\tmargin-top: 30rpx;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: space-between;\n\t}\n\n\t.no-text-row {\n\t\tjustify-content: flex-start;\n\t}\n\n\t.star-list {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t}\n\n\t.star-item {\n\t\twidth: 54rpx;\n\t\theight: 54rpx;\n\t\tmargin-right: 10rpx;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\tfont-size: 50rpx;\n\t\tline-height: 1;\n\t\tcolor: #e5e7eb;\n\t\tposition: relative;\n\t}\n\n\t.star-item.active {\n\t\tcolor: #ffc533;\n\t}\n\n\t.rate-text {\n\t\tfont-size: 30rpx;\n\t\tcolor: #666666;\n\t}\n\n\t.divider {\n\t\theight: 1rpx;\n\t\tbackground: #f0f1f4;\n\t\tmargin-bottom: 26rpx;\n\t}\n\n\t.upload-row {\n\t\tdisplay: flex;\n\t\talign-items: flex-start;\n\t\tgap: 10rpx;\n\t\tmargin-bottom: 22rpx;\n\t}\n\n\t.upload-box,\n\t.photo-box {\n\t\twidth: 122rpx;\n\t\theight: 122rpx;\n\t\tborder-radius: 0;\n\t\toverflow: hidden;\n\t\tposition: relative;\n\t\tbox-sizing: border-box;\n\t}\n\n\t.upload-box {\n\t\tborder: 1rpx dashed #c8ccd4;\n\t\tdisplay: flex;\n\t\tflex-direction: column;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t}\n\n\t.upload-plus {\n\t\tfont-size: 54rpx;\n\t\tline-height: 1;\n\t\tcolor: #999999;\n\t}\n\n\t.upload-text {\n\t\tmargin-top: 8rpx;\n\t\tfont-size: 24rpx;\n\t\tcolor: #999999;\n\t}\n\n\t.photo-image {\n\t\twidth: 100%;\n\t\theight: 100%;\n\t}\n\n\t.photo-delete {\n\t\tposition: absolute;\n\t\tleft: 0;\n\t\tright: 0;\n\t\tbottom: 0;\n\t\theight: 32rpx;\n\t\tline-height: 32rpx;\n\t\ttext-align: center;\n\t\tfont-size: 22rpx;\n\t\tcolor: #ffffff;\n\t\tbackground: rgba(0, 0, 0, 0.45);\n\t}\n\n\t.textarea-box {\n\t\tbackground: #f6f8fb;\n\t\tborder-radius: 18rpx;\n\t\tpadding: 18rpx 18rpx 16rpx;\n\t\tbox-sizing: border-box;\n\t}\n\n\t.textarea-placeholder-wrap {\n\t\tdisplay: flex;\n\t\talign-items: flex-start;\n\t}\n\n\t.textarea-icon {\n\t\twidth: 26rpx;\n\t\theight: 26rpx;\n\t\tborder: 2rpx solid #b9bec7;\n\t\tmargin-top: 8rpx;\n\t\tmargin-right: 12rpx;\n\t\tbox-sizing: border-box;\n\t\tposition: relative;\n\t}\n\n\t.textarea-icon::before,\n\t.textarea-icon::after {\n\t\tcontent: '';\n\t\tposition: absolute;\n\t\tbackground: #b9bec7;\n\t}\n\n\t.textarea-icon::before {\n\t\twidth: 20rpx;\n\t\theight: 2rpx;\n\t\tleft: 2rpx;\n\t\ttop: 11rpx;\n\t\ttransform: rotate(-45deg);\n\t}\n\n\t.textarea-icon::after {\n\t\twidth: 2rpx;\n\t\theight: 12rpx;\n\t\tright: 4rpx;\n\t\ttop: 3rpx;\n\t\ttransform: rotate(-45deg);\n\t}\n\n\t.textarea {\n\t\tflex: 1;\n\t\tmin-height: 260rpx;\n\t\tfont-size: 28rpx;\n\t\tline-height: 1.6;\n\t\tcolor: #333333;\n\t\tbackground: transparent;\n\t}\n\n\t.textarea-placeholder {\n\t\tfont-size: 28rpx;\n\t\tcolor: #b9bec7;\n\t}\n\n\t.textarea-count {\n\t\tdisplay: block;\n\t\tmargin-top: 8rpx;\n\t\ttext-align: right;\n\t\tfont-size: 20rpx;\n\t\tcolor: #999999;\n\t}\n\n\t.submit-wrap {\n\t\tposition: fixed;\n\t\tleft: 18rpx;\n\t\tright: 18rpx;\n\t\tbottom: calc(16rpx + env(safe-area-inset-bottom));\n\t}\n\n\t.submit-btn {\n\t\theight: 78rpx;\n\t\tborder-radius: 39rpx;\n\t\tbackground: #22abf4;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\tfont-size: 34rpx;\n\t\tfont-weight: 500;\n\t\tcolor: #ffffff;\n\t}\n</style>\n","import mod from \"-!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./evaluate.vue?vue&type=style&index=0&id=2208e2a6&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./evaluate.vue?vue&type=style&index=0&id=2208e2a6&lang=scss&scoped=true&\""],"sourceRoot":""}
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/pages/order/order.js.map b/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/pages/order/order.js.map
deleted file mode 100644
index c648421..0000000
--- a/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/pages/order/order.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["uni-app:///main.js"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,cAAI,CAAC,C","file":"pages/order/order.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './pages/order/order.vue'\ncreatePage(Page)"],"sourceRoot":""}
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/pages/shop-wallet/select-city.js.map b/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/pages/shop-wallet/select-city.js.map
deleted file mode 100644
index e890713..0000000
--- a/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/pages/shop-wallet/select-city.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["uni-app:///main.js"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page"],"mappings":";;;;;;;;;;;;;AAAA;AAGA;AACA;AAHA;AACAA,EAAE,CAACC,iCAAiC,GAAGC,mBAAmB;AAG1DC,UAAU,CAACC,mBAAI,CAAC,C","file":"pages/shop-wallet/select-city.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './pages/shop-wallet/select-city.vue'\ncreatePage(Page)"],"sourceRoot":""}
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/shop/pages/message/message.js.map b/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/shop/pages/message/message.js.map
new file mode 100644
index 0000000..cbc82ed
--- /dev/null
+++ b/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/shop/pages/message/message.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["uni-app:///main.js","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/shop/pages/message/message.vue?839c","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/shop/pages/message/message.vue?2b5c","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/shop/pages/message/message.vue?ee03","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/shop/pages/message/message.vue?926c","uni-app:///shop/pages/message/message.vue","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/shop/pages/message/message.vue?15c9","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/shop/pages/message/message.vue?c2ab"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page","renderjs","component","options","__file","components","customTabbar","e","message","indexOf","console","error","render","_vm","this","_h","$createElement","_self","_c","recyclableRender","staticRenderFns","_withStripped","CustomTabbar","data","noticeList","pageNum","pageSize","total","computed","onShow","onReachBottom","methods","getNoticeList","page","capacity","model","userType","res"],"mappings":"qJAAA,MAGA,aACA,YAFAA,EAAGC,kCAAoCC,EAGvCC,EAAWC,a,gFCLX,2IACIC,EADJ,QAUIC,EAAY,qBACd,aACA,YACA,sBACA,EACA,KACA,WACA,MACA,EACA,gBACAD,GAGFC,EAAUC,QAAQC,OAAS,iCACZ,aAAAF,E,0CCxBf,uQ,iCCAA,IAAIG,EAAJ,0LACA,IACEA,EAAa,CACXC,aAAc,WACZ,OAAO,uEAKX,MAAOC,GACP,IAC+C,IAA7CA,EAAEC,QAAQC,QAAQ,wBACa,IAA/BF,EAAEC,QAAQC,QAAQ,QAWlB,MAAMF,EATNG,QAAQC,MAAMJ,EAAEC,SAChBE,QAAQC,MAAM,mBACdD,QAAQC,MACN,uFAEFD,QAAQC,MACN,mDAMN,IAAIC,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACJH,EAAII,MAAMC,IAEjBC,GAAmB,EACnBC,EAAkB,GACtBR,EAAOS,eAAgB,G,iCCjCvB,yHAAmyB,eAAG,G,8JC6BtyB,utBAGA,CACAhB,YACAiB,gBAEAC,gBACA,OACAC,cACAC,UACAC,YACAC,UAGAC,eACA,wDAEAC,kBAAA,oJACA,wBACA,yDAGA,YACA,UACA,gBACA,4DARA,IAUAC,yBACA,oCACA,eACA,uBAGAC,SACAC,yBAAA,0JACA,8BACAC,eACAC,oBACAC,OACAC,cAEA,OANAC,SAOA,eACA,cACA,gCAEA,sFAEA,yBACA,0CAfA,MAkBA,a,iCClFA,yHAA4nC,eAAG,G,uDCA/nC,yHAAk/C,eAAG,G","file":"shop/pages/message/message.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './shop/pages/message/message.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./message.vue?vue&type=template&id=15f611e9&scoped=true&\"\nvar renderjs\nimport script from \"./message.vue?vue&type=script&lang=js&\"\nexport * from \"./message.vue?vue&type=script&lang=js&\"\nimport style0 from \"./message.vue?vue&type=style&index=0&lang=css&\"\nimport style1 from \"./message.vue?vue&type=style&index=1&id=15f611e9&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"15f611e9\",\n  null,\n  false,\n  components,\n  renderjs\n)\n\ncomponent.options.__file = \"shop/pages/message/message.vue\"\nexport default component.exports","export * from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--17-0!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./message.vue?vue&type=template&id=15f611e9&scoped=true&\"","var components\ntry {\n  components = {\n    customTabbar: function () {\n      return import(\n        /* webpackChunkName: \"components/custom-tabbar/custom-tabbar\" */ \"@/components/custom-tabbar/custom-tabbar.vue\"\n      )\n    },\n  }\n} catch (e) {\n  if (\n    e.message.indexOf(\"Cannot find module\") !== -1 &&\n    e.message.indexOf(\".vue\") !== -1\n  ) {\n    console.error(e.message)\n    console.error(\"1. 鎺掓煡缁勪欢鍚嶇О鎷煎啓鏄惁姝g‘\")\n    console.error(\n      \"2. 鎺掓煡缁勪欢鏄惁绗﹀悎 easycom 瑙勮寖锛屾枃妗o細https://uniapp.dcloud.net.cn/collocation/pages?id=easycom\"\n    )\n    console.error(\n      \"3. 鑻ョ粍浠朵笉绗﹀悎 easycom 瑙勮寖锛岄渶鎵嬪姩寮曞叆锛屽苟鍦� components 涓敞鍐岃缁勪欢\"\n    )\n  } else {\n    throw e\n  }\n}\nvar render = function () {\n  var _vm = this\n  var _h = _vm.$createElement\n  var _c = _vm._self._c || _h\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./message.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./message.vue?vue&type=script&lang=js&\"","<template>\n\t<view class=\"itinerary-page\">\n\t\t<view class=\"top-fixed\">\n\t\t\t<view class=\"top-gradient\"></view>\n\t\t\t<view class=\"top-inner\">\n\t\t\t\t<view :style=\"{ height: statusbarHeight + 'px' }\"></view>\n\t\t\t\t<view class=\"header-bar\" :style=\"{ height: navHeight + 'px' }\">\n\t\t\t\t\t<text class=\"header-title\">鎴戠殑娑堟伅</text>\n\t\t\t\t</view>\n\t\t\t</view>\n\t\t</view>\n\t\t<view class=\"content\">\n\t\t\t<view class=\"message-item\" v-for=\"item in noticeList\" :key=\"item.id\">\n\t\t\t\t<view class=\"message-item-image\">\n\t\t\t\t\t<view class=\"message-item-image-dian\" v-if=\"item.status === 0\"></view>\n\t\t\t\t\t<image src=\"/static/icon/xiaoxi_ic_tongzhi3@2x.png\" mode=\"widthFix\"></image>\n\t\t\t\t</view>\n\t\t\t\t<view class=\"message-item-info\">\n\t\t\t\t\t<text>{{ item.title }}</text>\n\t\t\t\t\t<text>{{ item.content }}</text>\n\t\t\t\t\t<text>{{ item.createDate }}</text>\n\t\t\t\t</view>\n\t\t\t</view>\n\t\t</view>\n\t\t<custom-tabbar></custom-tabbar>\n\t</view>\n</template>\n\n<script>\n\timport { mapState } from 'vuex'\n\timport CustomTabbar from '@/components/custom-tabbar/custom-tabbar.vue'\n\n\texport default {\n\t\tcomponents: {\n\t\t\tCustomTabbar\n\t\t},\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tnoticeList: [],\n\t\t\t\tpageNum: 1,\n\t\t\t\tpageSize: 10,\n\t\t\t\ttotal: 0\n\t\t\t}\n\t\t},\n\t\tcomputed: {\n\t\t\t...mapState(['navHeight', 'statusbarHeight', 'token'])\n\t\t},\n\t\tasync onShow() {\n\t\t\tawait this.$onLaunched\n\t\t\tif (!this.token) {\n\t\t\t\treturn\n\t\t\t}\n\t\t\tthis.pageNum = 1\n\t\t\tthis.total = 0\n\t\t\tthis.noticeList = []\n\t\t\tthis.getNoticeList()\n\t\t},\n\t\tonReachBottom() {\n\t\t\tif (this.noticeList.length < this.total) {\n\t\t\t\tthis.pageNum++\n\t\t\t\tthis.getNoticeList()\n\t\t\t}\n\t\t},\n\t\tmethods: {\n\t\t\tasync getNoticeList() {\n\t\t\t\tconst res = await this.$u.api.getMemberNoticePage({\n\t\t\t\t\tpage: this.pageNum,\n\t\t\t\t\tcapacity: this.pageSize,\n\t\t\t\t\tmodel: {\n\t\t\t\t\t\tuserType: 0\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t\tif (res.code === 200) {\n\t\t\t\t\tif (this.pageNum === 1) {\n\t\t\t\t\t\tthis.noticeList = res.data.records || []\n\t\t\t\t\t} else {\n\t\t\t\t\t\tthis.noticeList = [...this.noticeList, ...(res.data.records || [])]\n\t\t\t\t\t}\n\t\t\t\t\tthis.total = res.data.total || 0\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n</script>\n<style>\n\tpage {\n\t\tbackground-color: #F8F9FB;\n\t}\n</style>\n<style lang=\"scss\" scoped>\n\t.top-fixed {\n\t\tposition: sticky;\n\t\tleft: 0;\n\t\ttop: 0;\n\t\twidth: 100%;\n\t\tz-index: 20;\n\t}\n\n\t.top-gradient {\n\t\tposition: absolute;\n\t\tleft: 0;\n\t\ttop: 0;\n\t\twidth: 100%;\n\t\theight: 100%;\n\t\tbackground: linear-gradient(90deg, #1ba8fa 0%, #73e5cf 100%);\n\t}\n\n\t.top-inner {\n\t\tposition: relative;\n\t\tz-index: 1;\n\t\tpadding-bottom: 18rpx;\n\t}\n\n\t.header-bar {\n\t\tpadding: 0 30rpx;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: space-between;\n\t\tbox-sizing: border-box;\n\t}\n\n\t.header-title {\n\t\tfont-weight: 600;\n\t\tfont-size: 40rpx;\n\t\tcolor: #FFFFFF;\n\t}\n\n\t.content {\n\t\twidth: 100%;\n\t\tpadding: 20rpx 30rpx;\n\t\tbox-sizing: border-box;\n\t\t.message-item {\n\t\t\twidth: 100%;\n\t\t\tpadding: 30rpx;\n\t\t\tbox-sizing: border-box;\n\t\t\tbackground: #FFFFFF;\n\t\t\tborder-radius: 16rpx;\n\t\t\tdisplay: flex;\n\t\t\talign-items: flex-start;\n\t\t\tmargin-bottom: 20rpx;\n\t\t\t.message-item-image {\n\t\t\t\tflex-shrink: 0;\n\t\t\t\twidth: 64rpx;\n\t\t\t\theight: 64rpx;\n\t\t\t\tmargin-right: 20rpx;\n\t\t\t\tposition: relative;\n\t\t\t\timage {\n\t\t\t\t\twidth: 100%;\n\t\t\t\t\theight: 100%;\n\t\t\t\t}\n\t\t\t\t.message-item-image-dian {\n\t\t\t\t\tposition: absolute;\n\t\t\t\t\tright: 0;\n\t\t\t\t\ttop: 0;\n\t\t\t\t\twidth: 18rpx;\n\t\t\t\t\theight: 18rpx;\n\t\t\t\t\tbackground: #FF0000;\n\t\t\t\t\tborder-radius: 50%;\n\t\t\t\t}\n\t\t\t}\n\t\t\t.message-item-info {\n\t\t\t\tflex: 1;\n\t\t\t\tdisplay: flex;\n\t\t\t\tflex-direction: column;\n\t\t\t\ttext {\n\t\t\t\t\t&:nth-child(1) {\n\t\t\t\t\t\tfont-weight: 500;\n\t\t\t\t\t\tfont-size: 30rpx;\n\t\t\t\t\t\tcolor: #222222;\n\t\t\t\t\t}\n\t\t\t\t\t&:nth-child(2) {\n\t\t\t\t\t\tfont-weight: 400;\n\t\t\t\t\t\tfont-size: 26rpx;\n\t\t\t\t\t\tcolor: #666666;\n\t\t\t\t\t\tmargin-top: 16rpx;\n\t\t\t\t\t}\n\t\t\t\t\t&:nth-child(3) {\n\t\t\t\t\t\tfont-weight: 400;\n\t\t\t\t\t\tfont-size: 24rpx;\n\t\t\t\t\t\tcolor: #999999;\n\t\t\t\t\t\tmargin-top: 16rpx;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n</style>\n","import mod from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--6-oneOf-1-2!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./message.vue?vue&type=style&index=0&lang=css&\"; export default mod; export * from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--6-oneOf-1-2!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-3!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./message.vue?vue&type=style&index=0&lang=css&\"","import mod from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./message.vue?vue&type=style&index=1&id=15f611e9&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./message.vue?vue&type=style&index=1&id=15f611e9&lang=scss&scoped=true&\""],"sourceRoot":""}
\ No newline at end of file
diff --git "a/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/shop/pages/message\140/message.js.map" "b/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/shop/pages/message\140/message.js.map"
new file mode 100644
index 0000000..bb2742f
--- /dev/null
+++ "b/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/shop/pages/message\140/message.js.map"
@@ -0,0 +1 @@
+{"version":3,"sources":["uni-app:///main.js"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page"],"mappings":"sJAAA,MAGA,aACA,mIAFAA,EAAGC,kCAAoCC,EAGvCC,EAAWC,a","file":"shop/pages/message`/message.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './shop/pages/message`/message.vue'\ncreatePage(Page)"],"sourceRoot":""}
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/shop/pages/qualification/qualification.js.map b/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/shop/pages/qualification/qualification.js.map
new file mode 100644
index 0000000..52067f8
--- /dev/null
+++ b/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/shop/pages/qualification/qualification.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["uni-app:///main.js","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/shop/pages/qualification/qualification.vue?9e89","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/shop/pages/qualification/qualification.vue?00dd","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/shop/pages/qualification/qualification.vue?0fb8","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/shop/pages/qualification/qualification.vue?04e3","uni-app:///shop/pages/qualification/qualification.vue","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/shop/pages/qualification/qualification.vue?a711"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page","renderjs","component","options","__file","components","render","_vm","this","_h","$createElement","_self","_c","recyclableRender","staticRenderFns","_withStripped","data","currentType"],"mappings":"iKAAA,MAGA,aACA,YAFAA,EAAGC,kCAAoCC,EAGvCC,EAAWC,a,gFCLX,oIACIC,EADJ,QASIC,EAAY,qBACd,aACA,YACA,sBACA,EACA,KACA,WACA,MACA,EACA,gBACAD,GAGFC,EAAUC,QAAQC,OAAS,6CACZ,aAAAF,E,0CCvBf,uQ,iCCAA,IAAIG,EAAJ,0LACA,IAAIC,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACJH,EAAII,MAAMC,IAEjBC,GAAmB,EACnBC,EAAkB,GACtBR,EAAOS,eAAgB,G,iCCRvB,yHAAyyB,eAAG,G,yGCsG5yB,CACAC,gBACA,OACAC,0BAGA,a,iCC5GA,yHAAw/C,eAAG,G","file":"shop/pages/qualification/qualification.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './shop/pages/qualification/qualification.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./qualification.vue?vue&type=template&id=57d96ab9&scoped=true&\"\nvar renderjs\nimport script from \"./qualification.vue?vue&type=script&lang=js&\"\nexport * from \"./qualification.vue?vue&type=script&lang=js&\"\nimport style0 from \"./qualification.vue?vue&type=style&index=0&id=57d96ab9&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"57d96ab9\",\n  null,\n  false,\n  components,\n  renderjs\n)\n\ncomponent.options.__file = \"shop/pages/qualification/qualification.vue\"\nexport default component.exports","export * from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--17-0!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./qualification.vue?vue&type=template&id=57d96ab9&scoped=true&\"","var components\nvar render = function () {\n  var _vm = this\n  var _h = _vm.$createElement\n  var _c = _vm._self._c || _h\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./qualification.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./qualification.vue?vue&type=script&lang=js&\"","<template>\n\t<view class=\"qualification-page\">\n\t\t<!-- <view class=\"type-tabs\">\n\t\t\t<view class=\"tab-item\" :class=\"{ active: currentType === 'personal' }\" @tap=\"currentType = 'personal'\">涓汉璧勮川</view>\n\t\t\t<view class=\"tab-item\" :class=\"{ active: currentType === 'company' }\" @tap=\"currentType = 'company'\">浼佷笟璧勮川</view>\n\t\t</view> -->\n\n\t\t<view class=\"card base-card\">\n\t\t\t<view class=\"store-row\">\n\t\t\t\t<image class=\"store-cover\" src=\"\" mode=\"aspectFill\"></image>\n\t\t\t\t<view class=\"store-info\">\n\t\t\t\t\t<text class=\"store-name\">涓搧蹇繍鍗楃珯鏃楄埌搴�</text>\n\t\t\t\t\t<text class=\"store-line\">鑱旂郴浜猴細鑻忕湢鐪�</text>\n\t\t\t\t\t<text class=\"store-line\">鑱旂郴鐢佃瘽锛�18155114565</text>\n\t\t\t\t</view>\n\t\t\t</view>\n\n\t\t\t<view class=\"detail-block\">\n\t\t\t\t<view class=\"info-row\">\n\t\t\t\t\t<text class=\"info-label\">鐪佸競鍖猴細</text>\n\t\t\t\t\t<text class=\"info-value\">瀹夊窘鐪佸悎鑲ュ競缁忔祹鎶�鏈紑鍙戝尯</text>\n\t\t\t\t</view>\n\t\t\t\t<view class=\"info-row\">\n\t\t\t\t\t<text class=\"info-label\">闂ㄥ簵鍦板潃锛�</text>\n\t\t\t\t\t<text class=\"info-value\">鑾茶姳璺�200鍙疯幉鑺变骇涓氬洯F鏍�401</text>\n\t\t\t\t</view>\n\n\t\t\t\t<template v-if=\"currentType === 'personal'\">\n\t\t\t\t\t<view class=\"info-row\">\n\t\t\t\t\t\t<text class=\"info-label\">韬唤璇佸彿锛�</text>\n\t\t\t\t\t\t<text class=\"info-value\">3401823742786473267</text>\n\t\t\t\t\t</view>\n\t\t\t\t\t<view class=\"material-row top-align\">\n\t\t\t\t\t\t<text class=\"info-label\">韬唤璇侊細</text>\n\t\t\t\t\t\t<view class=\"material-list double-list\">\n\t\t\t\t\t\t\t<image class=\"material-image id-card\" src=\"\" mode=\"aspectFill\"></image>\n\t\t\t\t\t\t\t<image class=\"material-image id-card\" src=\"\" mode=\"aspectFill\"></image>\n\t\t\t\t\t\t</view>\n\t\t\t\t\t</view>\n\t\t\t\t</template>\n\n\t\t\t\t<template v-else>\n\t\t\t\t\t<view class=\"material-row top-align license-row\">\n\t\t\t\t\t\t<text class=\"info-label\">钀ヤ笟鎵х収锛�</text>\n\t\t\t\t\t\t<view class=\"material-list single-list\">\n\t\t\t\t\t\t\t<image class=\"material-image license-image\" src=\"\" mode=\"aspectFill\"></image>\n\t\t\t\t\t\t</view>\n\t\t\t\t\t</view>\n\t\t\t\t</template>\n\t\t\t</view>\n\t\t</view>\n\t\t\n\t\t<view style=\"width: 100%; height: 20rpx; background-color: #F7F7F7;\"></view>\n\t\t\n\t\t<view v-if=\"currentType === 'personal'\" class=\"card subject-card\">\n\t\t\t<text class=\"section-title\">涓讳綋璧勮川</text>\n\t\t\t<view class=\"material-group\">\n\t\t\t\t<view class=\"material-row top-align\">\n\t\t\t\t\t<text class=\"info-label\">鏈夋晥鍔冲姩鍚堝悓锛�</text>\n\t\t\t\t\t<view class=\"material-list triple-list\">\n\t\t\t\t\t\t<image class=\"material-image contract-image\" src=\"\" mode=\"aspectFill\"></image>\n\t\t\t\t\t\t<image class=\"material-image contract-image\" src=\"\" mode=\"aspectFill\"></image>\n\t\t\t\t\t\t<image class=\"material-image contract-image\" src=\"\" mode=\"aspectFill\"></image>\n\t\t\t\t\t</view>\n\t\t\t\t</view>\n\t\t\t\t<view class=\"material-row top-align proof-row\">\n\t\t\t\t\t<text class=\"info-label\">绀句繚缂寸撼璇佹槑锛�</text>\n\t\t\t\t\t<view class=\"material-list single-list\">\n\t\t\t\t\t\t<image class=\"material-image proof-image\" src=\"\" mode=\"aspectFill\"></image>\n\t\t\t\t\t</view>\n\t\t\t\t</view>\n\t\t\t</view>\n\t\t</view>\n\n\t\t<view v-else class=\"card subject-card legal-card\">\n\t\t\t<text class=\"section-title\">娉曚汉淇℃伅</text>\n\t\t\t<view class=\"detail-block legal-block\">\n\t\t\t\t<view class=\"info-row\">\n\t\t\t\t\t<text class=\"info-label\">娉曚汉濮撳悕锛�</text>\n\t\t\t\t\t<text class=\"info-value\">寮犲厜瀹�</text>\n\t\t\t\t</view>\n\t\t\t\t<view class=\"info-row\">\n\t\t\t\t\t<text class=\"info-label\">娉曚汉鐢佃瘽锛�</text>\n\t\t\t\t\t<text class=\"info-value\">181554462589</text>\n\t\t\t\t</view>\n\t\t\t\t<view class=\"info-row\">\n\t\t\t\t\t<text class=\"info-label\">韬唤璇佸彿锛�</text>\n\t\t\t\t\t<text class=\"info-value\">3401823742786473267</text>\n\t\t\t\t</view>\n\t\t\t\t<view class=\"material-row top-align\">\n\t\t\t\t\t<text class=\"info-label\">韬唤璇侊細</text>\n\t\t\t\t\t<view class=\"material-list double-list\">\n\t\t\t\t\t\t<image class=\"material-image id-card\" src=\"\" mode=\"aspectFill\"></image>\n\t\t\t\t\t\t<image class=\"material-image id-card\" src=\"\" mode=\"aspectFill\"></image>\n\t\t\t\t\t</view>\n\t\t\t\t</view>\n\t\t\t</view>\n\t\t</view>\n\t</view>\n</template>\n\n<script>\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tcurrentType: 'personal'\n\t\t\t}\n\t\t}\n\t}\n</script>\n\n<style lang=\"scss\" scoped>\n\t.qualification-page {\n\t\t\n\t}\n\n\t.type-tabs {\n\t\tmargin-bottom: 18rpx;\n\t\tdisplay: flex;\n\t\tgap: 12rpx;\n\t}\n\n\t.tab-item {\n\t\tmin-width: 140rpx;\n\t\theight: 56rpx;\n\t\tpadding: 0 22rpx;\n\t\tborder-radius: 28rpx;\n\t\tbackground: #ffffff;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\tfont-size: 24rpx;\n\t\tcolor: #6b7280;\n\t\tbox-sizing: border-box;\n\t}\n\n\t.tab-item.active {\n\t\tbackground: #ecf8ff;\n\t\tcolor: #18aaf7;\n\t\tbox-shadow: inset 0 0 0 2rpx #18aaf7;\n\t}\n\n\t.card {\n\t\tbackground: #ffffff;\n\t\tpadding: 30rpx;\n\t\tbox-sizing: border-box;\n\t}\n\n\t.base-card {\n\t\tpadding-bottom: 16rpx;\n\t}\n\n\t.legal-card {\n\t\tpadding-top: 18rpx;\n\t}\n\n\t.store-row {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tpadding-bottom: 30rpx;\n\t\tborder-bottom: 1rpx solid #f0f1f4;\n\t}\n\n\t.store-cover {\n\t\twidth: 144rpx;\n\t\theight: 144rpx;\n\t\tborder-radius: 8rpx;\n\t\tbackground: #e8edf5;\n\t\tflex-shrink: 0;\n\t}\n\n\t.store-info {\n\t\tmargin-left: 24rpx;\n\t\tmin-width: 0;\n\t}\n\n\t.store-name {\n\t\tdisplay: block;\n\t\tfont-weight: 500;\n\t\tfont-size: 32rpx;\n\t\tcolor: #111111;\n\t}\n\n\t.store-line {\n\t\tdisplay: block;\n\t\tmargin-top: 10rpx;\n\t\tfont-weight: 400;\n\t\tfont-size: 26rpx;\n\t\tcolor: #777777;\n\t}\n\n\t.detail-block,\n\t.material-group {\n\t\tpadding-top: 30rpx;\n\t}\n\n\t.legal-block {\n\t\tpadding-top: 6rpx;\n\t}\n\n\t.info-row,\n\t.material-row {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tmargin-bottom: 20rpx;\n\t}\n\n\t.material-row.top-align {\n\t\talign-items: flex-start;\n\t}\n\n\t.info-label {\n\t\twidth: 190rpx;\n\t\tflex-shrink: 0;\n\t\tfont-weight: 400;\n\t\tfont-size: 26rpx;\n\t\tcolor: #777777;\n\t}\n\n\t.info-value {\n\t\tflex: 1;\n\t\tfont-weight: 400;\n\t\tfont-size: 26rpx;\n\t\tcolor: #333333;\n\t\tword-break: break-all;\n\t}\n\n\t.section-title {\n\t\tdisplay: block;\n\t\tmargin-bottom: 20rpx;\n\t\tfont-weight: 600;\n\t\tfont-size: 32rpx;\n\t\tcolor: #111111;\n\t}\n\n\t.material-list {\n\t\tflex: 1;\n\t\tdisplay: flex;\n\t\talign-items: flex-start;\n\t\tflex-wrap: wrap;\n\t\tgap: 14rpx;\n\t}\n\n\t.material-image {\n\t\tbackground: #eef2f7;\n\t\tborder-radius: 10rpx;\n\t\tflex-shrink: 0;\n\t}\n\n\t.id-card {\n\t\twidth: 200rpx;\n\t\theight: 150rpx;\n\t}\n\n\t.contract-image {\n\t\twidth: 144rpx;\n\t\theight: 144rpx;\n\t}\n\n\t.proof-image {\n\t\twidth: 144rpx;\n\t\theight: 144rpx;\n\t}\n\n\t.license-image {\n\t\twidth: 220rpx;\n\t\theight: 156rpx;\n\t}\n\n\t.proof-row {\n\t\tmargin-top: 4rpx;\n\t}\n\n\t.license-row {\n\t\tmargin-bottom: 8rpx;\n\t}\n</style>\n","import mod from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./qualification.vue?vue&type=style&index=0&id=57d96ab9&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./qualification.vue?vue&type=style&index=0&id=57d96ab9&lang=scss&scoped=true&\""],"sourceRoot":""}
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/shop/pages/store-info/store-info.js.map b/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/shop/pages/store-info/store-info.js.map
new file mode 100644
index 0000000..386a56e
--- /dev/null
+++ b/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/shop/pages/store-info/store-info.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["uni-app:///main.js","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/shop/pages/store-info/store-info.vue?afcc","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/shop/pages/store-info/store-info.vue?85f2","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/shop/pages/store-info/store-info.vue?f668","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/shop/pages/store-info/store-info.vue?e122","uni-app:///shop/pages/store-info/store-info.vue","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/shop/pages/store-info/store-info.vue?cc3a"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page","renderjs","component","options","__file","components","render","_vm","this","_h","$createElement","_self","_c","_isMounted","e0","$event","form","fullTime","e1","recyclableRender","staticRenderFns","_withStripped","data","name","intro","businessHours","storageType","deliveryRange","chargeRule"],"mappings":"2JAAA,MAGA,aACA,YAFAA,EAAGC,kCAAoCC,EAGvCC,EAAWC,a,gFCLX,oIACIC,EADJ,QASIC,EAAY,qBACd,aACA,YACA,sBACA,EACA,KACA,WACA,MACA,EACA,gBACAD,GAGFC,EAAUC,QAAQC,OAAS,uCACZ,aAAAF,E,0CCvBf,uQ,iCCAA,IAAIG,EAAJ,0LACA,IAAIC,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACJH,EAAII,MAAMC,GACdL,EAAIM,aACPN,EAAIO,GAAK,SAAUC,GACjBR,EAAIS,KAAKC,UAAW,GAEtBV,EAAIW,GAAK,SAAUH,GACjBR,EAAIS,KAAKC,UAAW,KAItBE,GAAmB,EACnBC,EAAkB,GACtBd,EAAOe,eAAgB,G,iCChBvB,yHAAsyB,eAAG,G,yGC6EzyB,CACAC,gBACA,OACAN,MACAO,QACAC,SACAP,YACAQ,iBACAC,eACAC,iBACAC,kBAIA,a,iCC3FA,yHAAq/C,eAAG,G","file":"shop/pages/store-info/store-info.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './shop/pages/store-info/store-info.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./store-info.vue?vue&type=template&id=54dfab99&scoped=true&\"\nvar renderjs\nimport script from \"./store-info.vue?vue&type=script&lang=js&\"\nexport * from \"./store-info.vue?vue&type=script&lang=js&\"\nimport style0 from \"./store-info.vue?vue&type=style&index=0&id=54dfab99&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"54dfab99\",\n  null,\n  false,\n  components,\n  renderjs\n)\n\ncomponent.options.__file = \"shop/pages/store-info/store-info.vue\"\nexport default component.exports","export * from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--17-0!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./store-info.vue?vue&type=template&id=54dfab99&scoped=true&\"","var components\nvar render = function () {\n  var _vm = this\n  var _h = _vm.$createElement\n  var _c = _vm._self._c || _h\n  if (!_vm._isMounted) {\n    _vm.e0 = function ($event) {\n      _vm.form.fullTime = false\n    }\n    _vm.e1 = function ($event) {\n      _vm.form.fullTime = true\n    }\n  }\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./store-info.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./store-info.vue?vue&type=script&lang=js&\"","<template>\n\t<view class=\"store-info-page\">\n\t\t<view class=\"top-gradient\"></view>\n\t\t<view class=\"form-card\">\n\t\t\t<text class=\"page-title\">闂ㄥ簵淇℃伅</text>\n\n\t\t\t<view class=\"form-group\">\n\t\t\t\t<text class=\"label\">闂ㄥ簵鍚嶇О</text>\n\t\t\t\t<input v-model=\"form.name\" class=\"text-input align-left\" type=\"text\" placeholder=\"璇疯緭鍏ラ棬搴楀悕绉癨" placeholder-style=\"color: #B2B2B2;\" />\n\t\t\t</view>\n\n\t\t\t<view class=\"divider\"></view>\n\n\t\t\t<view class=\"form-group textarea-group\">\n\t\t\t\t<text class=\"label\">闂ㄥ簵浠嬬粛</text>\r\n\t\t\t\t<input v-model=\"form.intro\" class=\"text-input align-left\" type=\"text\" placeholder=\"璇疯緭鍏ラ棬搴椾粙缁峔" placeholder-style=\"color: #B2B2B2;\" />\n\t\t\t</view>\n\n\t\t\t<view class=\"divider\"></view>\n\n\t\t\t<view class=\"form-group switch-group\">\n\t\t\t\t<view class=\"label-row\">\n\t\t\t\t\t<text class=\"label\">鏄惁鍏ㄥぉ钀ヤ笟</text>\n\t\t\t\t\t<text class=\"required\">*</text>\n\t\t\t\t</view>\n\t\t\t\t<view class=\"switch-row\">\n\t\t\t\t\t<view class=\"switch-pill\" :class=\"{ active: !form.fullTime }\" @tap=\"form.fullTime = false\">鏄�</view>\n\t\t\t\t\t<view class=\"switch-pill\" :class=\"{ active: form.fullTime }\" @tap=\"form.fullTime = true\">鍚�</view>\n\t\t\t\t</view>\n\t\t\t</view>\n\n\t\t\t<view class=\"form-group\">\n\t\t\t\t<view class=\"label-row\">\n\t\t\t\t\t<text class=\"label\">钀ヤ笟鏃堕棿</text>\n\t\t\t\t\t<text class=\"required\">*</text>\n\t\t\t\t</view>\n\t\t\t\t<input v-model=\"form.businessHours\" class=\"text-input align-left\" type=\"text\" placeholder=\"蹇呭~锛岃杈撳叆闂ㄥ簵钀ヤ笟鏃堕棿\" placeholder-style=\"color: #B2B2B2;\" />\n\t\t\t</view>\n\n\t\t\t<view class=\"divider\"></view>\n\n\t\t\t<view class=\"form-group\">\n\t\t\t\t<text class=\"label\">瀵勫瓨绫诲瀷</text>\n\t\t\t\t<input v-model=\"form.storageType\" class=\"text-input align-left\" type=\"text\" placeholder=\"璇疯緭鍏ュ彲瀵勫瓨绫诲瀷\" placeholder-style=\"color: #B2B2B2;\" />\n\t\t\t</view>\n\n\t\t\t<view class=\"divider\"></view>\n\n\t\t\t<view class=\"form-group\">\n\t\t\t\t<view class=\"label-row\">\n\t\t\t\t\t<text class=\"label\">閰嶉�佽寖鍥�</text>\n\t\t\t\t\t<text class=\"required\">*</text>\n\t\t\t\t</view>\n\t\t\t\t<view class=\"input-with-unit\">\n\t\t\t\t\t<input v-model=\"form.deliveryRange\" class=\"text-input\" type=\"digit\" placeholder=\"蹇呭~锛岃杈撳叆\" placeholder-style=\"color: #B2B2B2;\" />\n\t\t\t\t\t<text class=\"unit-text\" style=\"font-size: 28rpx;\">鍏噷</text>\n\t\t\t\t</view>\n\t\t\t</view>\n\n\t\t\t<view class=\"divider\"></view>\n\n\t\t\t<view class=\"form-group textarea-group last-group\">\n\t\t\t\t<view class=\"label-row\">\n\t\t\t\t\t<text class=\"label\">鏀惰垂鏍囧噯</text>\n\t\t\t\t\t<text class=\"required\">*</text>\n\t\t\t\t</view>\n\t\t\t\t<textarea v-model=\"form.chargeRule\" class=\"text-area charge-area\" placeholder=\"蹇呭~锛岃杈撳叆闂ㄥ簵鏀惰垂鏍囧噯\" placeholder-style=\"color: #B2B2B2;\" auto-height></textarea>\n\t\t\t</view>\n\t\t</view>\n\n\t\t<view class=\"save-wrap\">\n\t\t\t<view class=\"save-btn\">淇濆瓨</view>\n\t\t</view>\n\t</view>\n</template>\n\n<script>\n\texport default {\n\t\tdata() {\n\t\t\treturn {\n\t\t\t\tform: {\n\t\t\t\t\tname: '',\n\t\t\t\t\tintro: '',\n\t\t\t\t\tfullTime: true,\n\t\t\t\t\tbusinessHours: '',\n\t\t\t\t\tstorageType: '',\n\t\t\t\t\tdeliveryRange: '',\n\t\t\t\t\tchargeRule: ''\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n</script>\n\n<style lang=\"scss\" scoped>\n\t.store-info-page {\n\t\tposition: relative;\n\t\theight: 482rpx;\n\t\tbackground: #f2fbff;\n\t\tpadding: 20rpx 30rpx;\n\t\tbox-sizing: border-box;\n\t}\n\n\t.top-gradient {\n\t\tposition: absolute;\n\t\tleft: 0;\n\t\ttop: 0;\n\t\twidth: 100%;\n\t\theight: 220rpx;\n\t\tbackground: linear-gradient(180deg, #bfeefe 0%, #ebfaff 58%, #f2fbff 100%);\n\t\tz-index: 0;\n\t}\n\n\t.form-card {\n\t\tposition: relative;\n\t\tz-index: 1;\n\t\tbackground: #ffffff;\n\t\tborder-radius: 20rpx;\n\t\tpadding: 30rpx;\n\t\tbox-sizing: border-box;\r\n\t\tbox-shadow: 0rpx 2rpx 20rpx 0rpx rgba(0,0,0,0.08);\n\t}\n\n\t.page-title {\n\t\tdisplay: block;\n\t\tfont-weight: 600;\r\n\t\tfont-size: 36rpx;\r\n\t\tcolor: #222222;\n\t}\n\n\t.form-group {\n\t\tpadding: 30rpx 0;\r\n\t\tbox-sizing: border-box;\n\t}\n\n\t.form-group.textarea-group {\n\t\tpadding-bottom: 10rpx;\n\t}\n\n\t.last-group {\n\t\tpadding-bottom: 22rpx;\n\t}\n\n\t.label,\n\t.required,\n\t.unit-text {\n\t\tfont-size: 30rpx;\n\t}\n\n\t.label {\n\t\tfont-weight: 500;\r\n\t\tfont-size: 30rpx;\r\n\t\tcolor: #222222;\n\t}\n\n\t.label-row {\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t}\n\n\t.required {\n\t\tmargin-left: 2rpx;\n\t\tcolor: #ff4d4f;\n\t\tline-height: 1;\n\t}\n\n\t.text-input {\n\t\twidth: 100%;\n\t\theight: 48rpx;\n\t\tmargin-top: 14rpx;\n\t\tfont-weight: 400;\r\n\t\tfont-size: 30rpx;\r\n\t\tcolor: #111111;\n\t\tbackground: transparent;\n\t}\n\n\t.text-input.align-left {\n\t\ttext-align: left;\n\t}\n\n\t.placeholder {\n\t\tfont-size: 28rpx;\n\t\tcolor: #c4c9d1;\n\t}\n\n\t.text-area {\n\t\twidth: 100%;\n\t\tmin-height: 56rpx;\n\t\tmargin-top: 14rpx;\n\t\tfont-size: 28rpx;\n\t\tline-height: 1.5;\n\t\tcolor: #666666;\n\t\tbackground: transparent;\n\t}\n\n\t.charge-area {\n\t\tmin-height: 140rpx;\n\t}\n\n\t.divider {\n\t\theight: 1rpx;\n\t\tbackground: #f0f1f4;\n\t}\n\n\t.switch-group {\n\t\tpadding-bottom: 18rpx;\n\t}\n\n\t.switch-row {\n\t\tmargin-top: 30rpx;\n\t\tdisplay: flex;\n\t\tgap: 18rpx;\n\t}\n\n\t.switch-pill {\n\t\twidth: 208rpx;\r\n\t\theight: 72rpx;\n\t\tborder-radius: 36rpx;\n\t\tbackground: #eeeeee;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\tfont-weight: 400;\r\n\t\tfont-size: 30rpx;\r\n\t\tcolor: #333333;\n\t}\n\n\t.switch-pill.active {\n\t\tbackground: #10B2FA;\n\t\tcolor: #ffffff;\n\t}\n\n\t.input-with-unit {\n\t\tmargin-top: 14rpx;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t}\n\n\t.input-with-unit .text-input {\n\t\tmargin-top: 0;\n\t\tflex: 1;\n\t}\n\n\t.unit-text {\n\t\tmargin-left: 12rpx;\n\t\tcolor: #666666;\n\t\tflex-shrink: 0;\n\t}\n\n\t.save-wrap {\n\t\tmargin-top: 30rpx;\r\n\t\tpadding-bottom: calc(env(safe-area-inset-bottom) + 30rpx);\n\t}\n\n\t.save-btn {\n\t\theight: 88rpx;\r\n\t\tbackground: #10B2FA;\r\n\t\tborder-radius: 44rpx;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tjustify-content: center;\n\t\tfont-weight: 500;\r\n\t\tfont-size: 32rpx;\r\n\t\tcolor: #FFFFFF;\n\t}\n</style>\n","import mod from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./store-info.vue?vue&type=style&index=0&id=54dfab99&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./store-info.vue?vue&type=style&index=0&id=54dfab99&lang=scss&scoped=true&\""],"sourceRoot":""}
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/shop/pages/write-off/write-off.js.map b/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/shop/pages/write-off/write-off.js.map
new file mode 100644
index 0000000..8a9dca8
--- /dev/null
+++ b/small-program/unpackage/dist/dev/.sourcemap/mp-weixin/shop/pages/write-off/write-off.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["uni-app:///main.js","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/shop/pages/write-off/write-off.vue?0359","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/shop/pages/write-off/write-off.vue?98df","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/shop/pages/write-off/write-off.vue?5c59","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/shop/pages/write-off/write-off.vue?f730","uni-app:///shop/pages/write-off/write-off.vue","webpack:///D:/璞嗙背/gtzxinglijicun/small-program/shop/pages/write-off/write-off.vue?1926"],"names":["wx","__webpack_require_UNI_MP_PLUGIN__","__webpack_require__","createPage","Page","renderjs","component","options","__file","components","uPopup","e","message","indexOf","console","error","render","_vm","this","_h","$createElement","_self","_c","_isMounted","e0","$event","show1","recyclableRender","staticRenderFns","_withStripped","computed","data","code","loading","id","info","onShow","methods","scanCodeDo","uni","success","that","fail","title","icon","confirmDo","jumpWriteoffA","url","jumpBack","delta","getShopDetail","exchangeCode","tokenType","then","checkShopLogin"],"mappings":"yJAAA,MAGA,aACA,YAFAA,EAAGC,kCAAoCC,EAGvCC,EAAWC,a,gFCLX,oIACIC,EADJ,QASIC,EAAY,qBACd,aACA,YACA,sBACA,EACA,KACA,WACA,MACA,EACA,gBACAD,GAGFC,EAAUC,QAAQC,OAAS,qCACZ,aAAAF,E,0CCvBf,uQ,iCCAA,IAAIG,EAAJ,0LACA,IACEA,EAAa,CACXC,OAAQ,WACN,OAAO,qHAKX,MAAOC,GACP,IAC+C,IAA7CA,EAAEC,QAAQC,QAAQ,wBACa,IAA/BF,EAAEC,QAAQC,QAAQ,QAWlB,MAAMF,EATNG,QAAQC,MAAMJ,EAAEC,SAChBE,QAAQC,MAAM,mBACdD,QAAQC,MACN,uFAEFD,QAAQC,MACN,mDAMN,IAAIC,EAAS,WACX,IAAIC,EAAMC,KACNC,EAAKF,EAAIG,eACJH,EAAII,MAAMC,GACdL,EAAIM,aACPN,EAAIO,GAAK,SAAUC,GACjBR,EAAIS,OAAQ,KAIdC,GAAmB,EACnBC,EAAkB,GACtBZ,EAAOa,eAAgB,G,iCCtCvB,yHAAqyB,eAAG,G,gKC6BxyB,ylBACA,CACAC,eACA,gDAEAC,gBACA,OACAC,UACAN,SACAO,WACAC,QACAC,UAGAC,oBAOAC,SACAC,sBACA,aACA,WACAC,YACAC,oBACA1B,gCACAA,8BAEA2B,gBACAA,eAEAC,iBACAH,aACAI,aACAC,mBAKAC,qBAAA,oIACA,QACA,kBACA,0CAHA,IAKAC,yBACA,8BACAP,cACAQ,qEAIAC,oBACAT,gBAAAU,WAEAC,yBAAA,WACA,kBAGA,gBACA,WACAT,+BAAAU,uBAAAC,cACAC,kBACAvC,eACA,eACA2B,cACA,6CACAA,mBAEA,iBACA,kBAGA,mBACA,gBACA,2BAIAa,0BAEA,uFACAf,cACAQ,8BAKA,c,6DCtHA,yHAAo/C,eAAG,G","file":"shop/pages/write-off/write-off.js","sourcesContent":["import 'uni-pages';\n// @ts-ignore\nwx.__webpack_require_UNI_MP_PLUGIN__ = __webpack_require__;\nimport Vue from 'vue'\nimport Page from './shop/pages/write-off/write-off.vue'\ncreatePage(Page)","import { render, staticRenderFns, recyclableRender, components } from \"./write-off.vue?vue&type=template&id=4a22f55d&scoped=true&\"\nvar renderjs\nimport script from \"./write-off.vue?vue&type=script&lang=js&\"\nexport * from \"./write-off.vue?vue&type=script&lang=js&\"\nimport style0 from \"./write-off.vue?vue&type=style&index=0&id=4a22f55d&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n  script,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  \"4a22f55d\",\n  null,\n  false,\n  components,\n  renderjs\n)\n\ncomponent.options.__file = \"shop/pages/write-off/write-off.vue\"\nexport default component.exports","export * from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--17-0!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/template.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-uni-app-loader/page-meta.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./write-off.vue?vue&type=template&id=4a22f55d&scoped=true&\"","var components\ntry {\n  components = {\n    uPopup: function () {\n      return import(\n        /* webpackChunkName: \"node-modules/uview-ui/components/u-popup/u-popup\" */ \"uview-ui/components/u-popup/u-popup.vue\"\n      )\n    },\n  }\n} catch (e) {\n  if (\n    e.message.indexOf(\"Cannot find module\") !== -1 &&\n    e.message.indexOf(\".vue\") !== -1\n  ) {\n    console.error(e.message)\n    console.error(\"1. 鎺掓煡缁勪欢鍚嶇О鎷煎啓鏄惁姝g‘\")\n    console.error(\n      \"2. 鎺掓煡缁勪欢鏄惁绗﹀悎 easycom 瑙勮寖锛屾枃妗o細https://uniapp.dcloud.net.cn/collocation/pages?id=easycom\"\n    )\n    console.error(\n      \"3. 鑻ョ粍浠朵笉绗﹀悎 easycom 瑙勮寖锛岄渶鎵嬪姩寮曞叆锛屽苟鍦� components 涓敞鍐岃缁勪欢\"\n    )\n  } else {\n    throw e\n  }\n}\nvar render = function () {\n  var _vm = this\n  var _h = _vm.$createElement\n  var _c = _vm._self._c || _h\n  if (!_vm._isMounted) {\n    _vm.e0 = function ($event) {\n      _vm.show1 = false\n    }\n  }\n}\nvar recyclableRender = false\nvar staticRenderFns = []\nrender._withStripped = true\n\nexport { render, staticRenderFns, recyclableRender, components }","import mod from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./write-off.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/babel-loader/lib/index.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--13-1!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/script.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./write-off.vue?vue&type=script&lang=js&\"","<template>\r\n\t<view class=\"box\">\r\n\t\t<view class=\"title\">杈撳叆鏍搁獙鐮�</view>\r\n\t\t<view class=\"input\">\r\n\t\t\t<input type=\"number\" v-model=\"code\" placeholder=\"璇疯緭鍏�6浣嶅彇浠剁爜\" />\r\n\t\t</view>\r\n\t\t<view class=\"btn\" v-if=\"!loading\" @click=\"confirmDo\">纭</view>\r\n\t\t<view class=\"btn1\" v-if=\"loading\" >姝e湪鏌ヨ</view>\r\n\t\t<view class=\"footer\" @click=\"scanCodeDo\">\r\n\t\t\t<image src=\"/shop/images/ic_saoma@2x.png\" mode=\"widthFix\"></image>\r\n\t\t\t<text>鎵爜鏍搁攢</text>\r\n\t\t</view>\r\n\t\t<u-popup :show=\"show1\" round=\"15\" :safeAreaInsetBottom=\"false\" mode=\"center\">\r\n\t\t\t<view class=\"tc\">\r\n\t\t\t\t<view class=\"tc-contemt\">\r\n\t\t\t\t\t<view class=\"tc-contemt-title\">璁㈠崟鏌ヨ缁撴灉</view>\r\n\t\t\t\t\t<view class=\"tc-contemt-nr\">\r\n\t\t\t\t\t\t璁㈠崟銆恵{info.code}}銆戜笉婊¤冻鏍搁攢鏉′欢锛乗r\n\t\t\t\t\t</view>\r\n\t\t\t\t</view>\r\n\t\t\t\t<view class=\"tc-btn\">\r\n\t\t\t\t\t<view class=\"tc-btn-item\" @click=\"show1=false \">纭</view>\r\n\t\t\t\t</view>\r\n\t\t\t</view>\r\n\t\t</u-popup>\r\n\t</view>\r\n</template>\r\n\r\n<script>\r\n\timport { mapState } from 'vuex'\r\n\texport default {\r\n\t\tcomputed: {\r\n\t\t\t...mapState(['navHeight', 'statusbarHeight'])\r\n\t\t},\r\n\t\tdata() {\r\n\t\t\treturn {\r\n\t\t\t\tcode:null,\r\n\t\t\t\tshow1:false,\r\n\t\t\t\tloading:false,\r\n\t\t\t\tid:null,\r\n\t\t\t\tinfo:{}\r\n\t\t\t};\r\n\t\t},\r\n\t\tonShow() {\r\n\t\t\t// this.loading =false\r\n\t\t\t// this.show1 =false\r\n\t\t\t// this.info={}\r\n\t\t\t// this.code =''\r\n\t\t\t// this.checkShopLogin()\r\n\t\t},\r\n\t\tmethods:{\r\n\t\t\tscanCodeDo(){\r\n\t\t\t\tthis.code = ''\r\n\t\t\t\tvar that =this\r\n\t\t\t\tuni.scanCode({\r\n\t\t\t\t    success: function (res) {\r\n\t\t\t\t        console.log('鏉$爜绫诲瀷锛�' + res.scanType);\r\n\t\t\t\t        console.log('鏉$爜鍐呭锛�' + res.result);\r\n\t\t\t\t        // 澶勭悊鎵弿缁撴灉\r\n\t\t\t\t\t\tthat.code = res.result\r\n\t\t\t\t\t\tthat.confirmDo()\r\n\t\t\t\t    },\r\n\t\t\t\t    fail: function (err) {\r\n\t\t\t\t\t\tuni.showToast({\r\n\t\t\t\t\t\t\ttitle:'鎵爜澶辫触',\r\n\t\t\t\t\t\t\ticon:'error'\r\n\t\t\t\t\t\t})\r\n\t\t\t\t    }\r\n\t\t\t\t});\r\n\t\t\t},\r\n\t\t\tasync confirmDo(){\r\n\t\t\t\tif(this.code ){\r\n\t\t\t\t\tthis.getShopDetail()\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tjumpWriteoffA(){\r\n\t\t\t\tif(this.info && this.info.orderId){\r\n\t\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\t\turl: '/pagesA/pages/write-off-a/write-off-a?id='+this.info.orderId\r\n\t\t\t\t\t})\r\n\t\t\t\t}\r\n\t\t\t},\r\n\t\t\tjumpBack(){\r\n\t\t\t\tuni.navigateBack({delta:1})\r\n\t\t\t}, \r\n\t\t\t getShopDetail(){\r\n\t\t\t\tif(this.loading){\r\n\t\t\t\t\treturn\r\n\t\t\t\t}\r\n\t\t\t\tthis.loading =true\r\n\t\t\t\tvar that =this \r\n\t\t\t\tthat.$u.api.getOrderDetailByCode({exchangeCode:this.code,tokenType:1  })\r\n\t\t\t\t.then(res=>{\r\n\t\t\t\t\tconsole.log(res)\r\n\t\t\t\t\tif (res.code === 200) {\r\n\t\t\t\t\t\tthat.info = res.data \r\n\t\t\t\t\t\tif(res.data.orderStatus == 1 && res.data.receiveType ==1){\r\n\t\t\t\t\t\t\tthat.jumpWriteoffA()\r\n\t\t\t\t\t\t}else{\r\n\t\t\t\t\t\t\tthis.show1 = !this.show1\r\n\t\t\t\t\t\t\tthis.loading =false\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t} \r\n\t\t\t\t}).catch(e=>{\r\n\t\t\t\t\tthis.loading =false\r\n\t\t\t\t}).finally(e=>{\r\n\t\t\t\t\t// this.loading =false\r\n\t\t\t\t})\r\n\t\t\t},\r\n\t\t\tcheckShopLogin(){\r\n\t\t\t\tvar that =this\r\n\t\t\t\tif( this.shopInfo ==null || this.shopInfo.id==null ||  this.shopToken==null || this.shopToken==''){\r\n\t\t\t\t\tuni.navigateTo({\r\n\t\t\t\t\t\turl: '/pages/login/login'\r\n\t\t\t\t\t})\r\n\t\t\t\t} \r\n\t\t\t},\r\n\t\t}\r\n\t}\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n\t.box {\r\n\t\twidth: 100vw;\r\n\t\theight: 100vh;\r\n\t\tdisplay: flex;\r\n\t\tpadding-top: 198rpx;\r\n\t\tbox-sizing: border-box;\r\n\t\talign-items: center;\r\n\t\tflex-direction: column;\r\n\t\tbackground: linear-gradient( 180deg, #C8F3FF 0%, #FFFFFF 52.19%, #FFFFFF 100%);\r\n\t\t.title {\r\n\t\t\tfont-weight: 600;\r\n\t\t\tfont-size: 34rpx;\r\n\t\t\tcolor: #222222;\r\n\t\t}\r\n\t\t.input {\r\n\t\t\twidth: 630rpx;\r\n\t\t\theight: 88rpx;\r\n\t\t\tpadding: 0 30rpx;\r\n\t\t\tbox-sizing: border-box;\r\n\t\t\tbackground: #FFFFFF;\r\n\t\t\tborder-radius: 50rpx;\r\n\t\t\tborder: 2rpx solid #004096;\r\n\t\t\tmargin-top: 40rpx;\r\n\t\t\tinput {\r\n\t\t\t\twidth: 100%;\r\n\t\t\t\theight: 100%;\r\n\t\t\t\tfont-weight: 400;\r\n\t\t\t\tfont-size: 32rpx;\r\n\t\t\t\tcolor: #111111;\r\n\t\t\t\ttext-align: center;\r\n\t\t\t}\r\n\t\t}\r\n\t\t.btn1{\r\n\t\t\twidth: 630rpx;\r\n\t\t\theight: 88rpx;\r\n\t\t\tline-height: 88rpx;\r\n\t\t\ttext-align: center;\r\n\t\t\tbackground: #666666;\r\n\t\t\tborder-radius: 44rpx;\r\n\t\t\tfont-weight: 600;\r\n\t\t\tfont-size: 32rpx;\r\n\t\t\tcolor: #FFFFFF;\r\n\t\t\tmargin-top: 40rpx;\r\n\t\t}\r\n\t\t.btn {\r\n\t\t\twidth: 630rpx;\r\n\t\t\theight: 88rpx;\r\n\t\t\tline-height: 88rpx;\r\n\t\t\ttext-align: center;\r\n\t\t\tbackground: #004096;\r\n\t\t\tborder-radius: 44rpx;\r\n\t\t\tfont-weight: 600;\r\n\t\t\tfont-size: 32rpx;\r\n\t\t\tcolor: #FFFFFF;\r\n\t\t\tmargin-top: 40rpx;\r\n\t\t}\r\n\t\t.footer {\r\n\t\t\tdisplay: flex;\r\n\t\t\talign-items: center;\r\n\t\t\tmargin-top: 48rpx;\r\n\t\t\timage {\r\n\t\t\t\twidth: 40rpx;\r\n\t\t\t\theight: 40rpx;\r\n\t\t\t\tmargin-right: 12rpx;\r\n\t\t\t}\r\n\t\t\ttext {\r\n\t\t\t\tfont-weight: 400;\r\n\t\t\t\tfont-size: 28rpx;\r\n\t\t\t\tcolor: #004096;\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n</style>","import mod from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./write-off.vue?vue&type=style&index=0&id=4a22f55d&lang=scss&scoped=true&\"; export default mod; export * from \"-!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/loaders/stylePostLoader.js!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-2!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/sass-loader/dist/cjs.js??ref--8-oneOf-1-4!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/webpack-preprocess-loader/index.js??ref--8-oneOf-1-5!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/vue-cli-plugin-uni/packages/vue-loader/lib/index.js??vue-loader-options!../../../../../../鍔炲叕/HBuilderX.3.8.12.20230817/HBuilderX/plugins/uniapp-cli/node_modules/@dcloudio/webpack-uni-mp-loader/lib/style.js!./write-off.vue?vue&type=style&index=0&id=4a22f55d&lang=scss&scoped=true&\""],"sourceRoot":""}
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/app.json b/small-program/unpackage/dist/dev/mp-weixin/app.json
index 594dc5a..69df967 100644
--- a/small-program/unpackage/dist/dev/mp-weixin/app.json
+++ b/small-program/unpackage/dist/dev/mp-weixin/app.json
@@ -9,8 +9,6 @@
     "pages/payment-success/payment-success",
     "pages/settings/settings",
     "pages/storage-order-detail/storage-order-detail",
-    "pages/qualification/qualification",
-    "pages/store-info/store-info",
     "pages/all-orders/all-orders",
     "pages/store-apply/store-apply",
     "pages/delivery-order-detail/delivery-order-detail",
@@ -20,9 +18,7 @@
     "pages/rich-text/rich-text",
     "pages/details-entry/details-entry",
     "pages/select-city/select-city",
-    "pages/shop-index/shop-index",
-    "pages/shop-mine/shop-mine",
-    "pages/shop-wallet/shop-wallet"
+    "pages/evaluate/evaluate"
   ],
   "subPackages": [
     {
@@ -31,7 +27,11 @@
         "pages/login/login",
         "pages/store-home/store-home",
         "pages/mine/mine",
-        "pages/wallet/wallet"
+        "pages/wallet/wallet",
+        "pages/write-off/write-off",
+        "pages/qualification/qualification",
+        "pages/store-info/store-info",
+        "pages/message/message"
       ]
     }
   ],
@@ -71,27 +71,17 @@
         "iconPath": "static/icon/nav_wode@2x.png",
         "selectedIconPath": "static/icon/nav_wode_sel@2x.png",
         "text": "鎴戠殑"
-      },
-      {
-        "pagePath": "pages/shop-index/shop-index",
-        "iconPath": "static/icon/nav_home@2x.png",
-        "selectedIconPath": "static/icon/nav_home_sel@2x.png",
-        "text": "闂ㄥ簵棣栭〉"
-      },
-      {
-        "pagePath": "pages/shop-wallet/shop-wallet",
-        "iconPath": "static/icon/nav_home@2x.png",
-        "selectedIconPath": "static/icon/nav_home_sel@2x.png",
-        "text": "闂ㄥ簵閽卞寘"
-      },
-      {
-        "pagePath": "pages/shop-mine/shop-mine",
-        "iconPath": "static/icon/nav_wode@2x.png",
-        "selectedIconPath": "static/icon/nav_wode_sel@2x.png",
-        "text": "闂ㄥ簵鎴戠殑"
       }
     ]
   },
+  "preloadRule": {
+    "pages/index/index": {
+      "network": "all",
+      "packages": [
+        "shop"
+      ]
+    }
+  },
   "lazyCodeLoading": "requiredComponents",
   "requiredPrivateInfos": [
     "getLocation",
diff --git a/small-program/unpackage/dist/dev/mp-weixin/common/main.js b/small-program/unpackage/dist/dev/mp-weixin/common/main.js
index 1009eff..388a19e 100644
--- a/small-program/unpackage/dist/dev/mp-weixin/common/main.js
+++ b/small-program/unpackage/dist/dev/mp-weixin/common/main.js
@@ -1,3 +1,6 @@
+<<<<<<< HEAD
+(global["webpackJsonp"]=global["webpackJsonp"]||[]).push([["common/main"],{0:function(e,t,n){"use strict";(function(e,t){var o=n(4),r=o(n(11));n(30);var i=o(n(31)),c=o(n(25));n(42);var a=o(n(43)),s=o(n(44)),u=o(n(162)),f=o(n(163));function d(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function l(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?d(Object(n),!0).forEach((function(t){(0,r.default)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):d(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}e.__webpack_require_UNI_MP_PLUGIN__=n,c.default.use(s.default),c.default.config.productionTip=!1,i.default.mpType="app",c.default.prototype.$store=a.default,a.default.dispatch("getHeight"),c.default.prototype.$onLaunched=new Promise((function(e){c.default.prototype.$isResolve=e})),c.default.prototype.$baseUrl="http://192.168.1.4:10011";var p=new c.default(l({store:a.default},i.default));c.default.use(u.default,p),c.default.use(f.default,p),t(p).$mount()}).call(this,n(1)["default"],n(2)["createApp"])},31:function(e,t,n){"use strict";n.r(t);var o=n(32);for(var r in o)["default"].indexOf(r)<0&&function(e){n.d(t,e,(function(){return o[e]}))}(r);n(39);var i,c,a,s,u=n(41),f=Object(u["default"])(o["default"],i,c,!1,null,null,null,!1,a,s);f.options.__file="App.vue",t["default"]=f.exports},32:function(e,t,n){"use strict";n.r(t);var o=n(33),r=n.n(o);for(var i in o)["default"].indexOf(i)<0&&function(e){n.d(t,e,(function(){return o[e]}))}(i);t["default"]=r.a},33:function(e,t,n){"use strict";(function(e){var o=n(4);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=o(n(34)),i=o(n(36)),c=o(n(11)),a=n(37);function s(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,o)}return n}function u(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?s(Object(n),!0).forEach((function(t){(0,c.default)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):s(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var f=n(38),d={computed:u({},(0,a.mapState)(["userInfo","token"])),onLaunch:function(){var t=(0,i.default)(r.default.mark((function t(){var n,o;return r.default.wrap((function(t){while(1)switch(t.prev=t.next){case 0:if(n=this,this.token){t.next=5;break}e.login({provider:"weixin",success:function(){var e=(0,i.default)(r.default.mark((function e(t){var o,i;return r.default.wrap((function(e){while(1)switch(e.prev=e.next){case 0:return o=t.code,e.next=3,n.$u.api.wxLogin({code:o});case 3:if(i=e.sent,!i||200!==i.code){e.next=19;break}if(console.log(i,"==================鐧诲綍鎴愬姛"),!i.data.openid){e.next=9;break}return e.next=9,n.$store.commit("setOpenid",i.data.openid);case 9:if(!i.data.token){e.next=12;break}return e.next=12,n.$store.commit("setToken",i.data.token);case 12:if(!i.data.member){e.next=17;break}return e.next=15,n.$store.commit("setUserInfo",i.data.member);case 15:return e.next=17,n.$store.commit("setOpenid",i.data.member.openId);case 17:return e.next=19,n.checkLocationAuth();case 19:case"end":return e.stop()}}),e)})));function t(t){return e.apply(this,arguments)}return t}()}),t.next=15;break;case 5:return t.next=7,n.$u.api.getMemberInfo({});case 7:if(o=t.sent,200!==o.code){t.next=13;break}return t.next=11,n.$store.commit("setUserInfo",o.data);case 11:return t.next=13,n.$store.commit("setOpenid",o.data.openid);case 13:return t.next=15,n.checkLocationAuth();case 15:case"end":return t.stop()}}),t,this)})));function n(){return t.apply(this,arguments)}return n}(),onShow:function(){},onHide:function(){console.log("App Hide")},methods:{positioning:function(){var t=this;e.getLocation({type:"gcj02",highAccuracyExpireTime:3e3,isHighAccuracy:!0,success:function(n){var o={latitude:n.latitude,longitude:n.longitude};e.setStorageSync("address",o);var c=new f.AMapWX({key:"e4d46c87adf151dca20060317592b1b6"});c.getRegeo({location:n.longitude+","+n.latitude,success:function(){var e=(0,i.default)(r.default.mark((function e(n){var i,c,a;return r.default.wrap((function(e){while(1)switch(e.prev=e.next){case 0:return console.log(n,"==================鑾峰彇鍦板潃"),i=n[0],o.province=i.province,o.city=i.regeocodeData.addressComponent.city,c=i.name||"鍦板潃鑾峰彇澶辫触",o.address=c,e.next=8,t.$u.api.getCityByName({cityName:o.city});case 8:a=e.sent,200===a.code&&(o.cityId=a.data.id),t.$store.commit("setPosition",o),t.$isResolve();case 12:case"end":return e.stop()}}),e)})));function n(t){return e.apply(this,arguments)}return n}(),fail:function(e){console.error("鑾峰彇浣嶇疆澶辫触===========",e),t.$store.commit("setPosition",o),t.$isResolve()}})}})},goToAppSetting:function(){var t=this;e.openSetting({success:function(e){e.authSetting["scope.userLocation"]&&t.positioning(),t.$isResolve()}})},checkLocationAuth:function(){var t=this;e.getSetting({success:function(n){n.authSetting["scope.userLocation"]?t.positioning():e.authorize({scope:"scope.userLocation",success:function(){t.positioning()},fail:function(){e.showModal({title:"鎻愮ず",content:"闇�瑕佽幏鍙栨偍鐨勪綅缃俊鎭紝璇峰湪璁剧疆涓紑鍚綅缃潈闄�",confirmText:"鍘昏缃�",success:function(e){e.confirm?t.goToAppSetting():t.$isResolve()}})}})}})},getLocaltionBiz:function(){var t=this;e.getLocation({type:"wgs84",success:function(n){var o={latitude:n.latitude,longitude:n.longitude};e.setStorageSync("address",o);var r=new f.AMapWX({key:"f2e6c0bfcac14c27b4f0d6d0d5b9d7d"});r.getRegeo({location:n.longitude+","+n.latitude,success:function(e){console.log(e,"==================鑾峰彇鍦板潃");var n=e[0];o.province=n.province,o.city=n.city,o.area=n.district,o.street=n.street;var r=n.name||"鍦板潃鑾峰彇澶辫触";o.address=r,t.$store.commit("setPosition",o),t.$isResolve()},fail:function(e){console.error("鑾峰彇浣嶇疆澶辫触===========",e),t.$store.commit("setPosition",o),t.$isResolve()}}),t.$isResolve()},fail:function(e){console.error("鑾峰彇浣嶇疆澶辫触",e),t.$isResolve()}})}}};t.default=d}).call(this,n(2)["default"])},39:function(e,t,n){"use strict";n.r(t);var o=n(40),r=n.n(o);for(var i in o)["default"].indexOf(i)<0&&function(e){n.d(t,e,(function(){return o[e]}))}(i);t["default"]=r.a},40:function(e,t,n){}},[[0,"common/runtime","common/vendor"]]]);
+=======
 (global["webpackJsonp"] = global["webpackJsonp"] || []).push([["common/main"],{
 
 /***/ 0:
@@ -457,4 +460,5 @@
 /***/ })
 
 },[[0,"common/runtime","common/vendor"]]]);
+>>>>>>> 50573d8f1149d7020c38afb695116cb2953a3d43
 //# sourceMappingURL=../../.sourcemap/mp-weixin/common/main.js.map
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/common/runtime.js b/small-program/unpackage/dist/dev/mp-weixin/common/runtime.js
index 558205c..79e2aa6 100644
--- a/small-program/unpackage/dist/dev/mp-weixin/common/runtime.js
+++ b/small-program/unpackage/dist/dev/mp-weixin/common/runtime.js
@@ -1,234 +1,5 @@
 
   !function(){try{var a=Function("return this")();a&&!a.Math&&(Object.assign(a,{isFinite:isFinite,Array:Array,Date:Date,Error:Error,Function:Function,Math:Math,Object:Object,RegExp:RegExp,String:String,TypeError:TypeError,setTimeout:setTimeout,clearTimeout:clearTimeout,setInterval:setInterval,clearInterval:clearInterval}),"undefined"!=typeof Reflect&&(a.Reflect=Reflect))}catch(a){}}();
-  /******/ (function(modules) { // webpackBootstrap
-/******/ 	// install a JSONP callback for chunk loading
-/******/ 	function webpackJsonpCallback(data) {
-/******/ 		var chunkIds = data[0];
-/******/ 		var moreModules = data[1];
-/******/ 		var executeModules = data[2];
-/******/
-/******/ 		// add "moreModules" to the modules object,
-/******/ 		// then flag all "chunkIds" as loaded and fire callback
-/******/ 		var moduleId, chunkId, i = 0, resolves = [];
-/******/ 		for(;i < chunkIds.length; i++) {
-/******/ 			chunkId = chunkIds[i];
-/******/ 			if(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {
-/******/ 				resolves.push(installedChunks[chunkId][0]);
-/******/ 			}
-/******/ 			installedChunks[chunkId] = 0;
-/******/ 		}
-/******/ 		for(moduleId in moreModules) {
-/******/ 			if(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {
-/******/ 				modules[moduleId] = moreModules[moduleId];
-/******/ 			}
-/******/ 		}
-/******/ 		if(parentJsonpFunction) parentJsonpFunction(data);
-/******/
-/******/ 		while(resolves.length) {
-/******/ 			resolves.shift()();
-/******/ 		}
-/******/
-/******/ 		// add entry modules from loaded chunk to deferred list
-/******/ 		deferredModules.push.apply(deferredModules, executeModules || []);
-/******/
-/******/ 		// run deferred modules when all chunks ready
-/******/ 		return checkDeferredModules();
-/******/ 	};
-/******/ 	function checkDeferredModules() {
-/******/ 		var result;
-/******/ 		for(var i = 0; i < deferredModules.length; i++) {
-/******/ 			var deferredModule = deferredModules[i];
-/******/ 			var fulfilled = true;
-/******/ 			for(var j = 1; j < deferredModule.length; j++) {
-/******/ 				var depId = deferredModule[j];
-/******/ 				if(installedChunks[depId] !== 0) fulfilled = false;
-/******/ 			}
-/******/ 			if(fulfilled) {
-/******/ 				deferredModules.splice(i--, 1);
-/******/ 				result = __webpack_require__(__webpack_require__.s = deferredModule[0]);
-/******/ 			}
-/******/ 		}
-/******/
-/******/ 		return result;
-/******/ 	}
-/******/
-/******/ 	// The module cache
-/******/ 	var installedModules = {};
-/******/
-/******/ 	// object to store loaded CSS chunks
-/******/ 	var installedCssChunks = {
-/******/ 		"common/runtime": 0
-/******/ 	}
-/******/
-/******/ 	// object to store loaded and loading chunks
-/******/ 	// undefined = chunk not loaded, null = chunk preloaded/prefetched
-/******/ 	// Promise = chunk loading, 0 = chunk loaded
-/******/ 	var installedChunks = {
-/******/ 		"common/runtime": 0
-/******/ 	};
-/******/
-/******/ 	var deferredModules = [];
-/******/
-/******/ 	// script path function
-/******/ 	function jsonpScriptSrc(chunkId) {
-/******/ 		return __webpack_require__.p + "" + chunkId + ".js"
-/******/ 	}
-/******/
-/******/ 	// The require function
-/******/ 	function __webpack_require__(moduleId) {
-/******/
-/******/ 		// Check if module is in cache
-/******/ 		if(installedModules[moduleId]) {
-/******/ 			return installedModules[moduleId].exports;
-/******/ 		}
-/******/ 		// Create a new module (and put it into the cache)
-/******/ 		var module = installedModules[moduleId] = {
-/******/ 			i: moduleId,
-/******/ 			l: false,
-/******/ 			exports: {}
-/******/ 		};
-/******/
-/******/ 		// Execute the module function
-/******/ 		modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
-/******/
-/******/ 		// Flag the module as loaded
-/******/ 		module.l = true;
-/******/
-/******/ 		// Return the exports of the module
-/******/ 		return module.exports;
-/******/ 	}
-/******/
-/******/ 	// This file contains only the entry chunk.
-/******/ 	// The chunk loading function for additional chunks
-/******/ 	__webpack_require__.e = function requireEnsure(chunkId) {
-/******/ 		var promises = [];
-/******/
-/******/
-/******/
-/******/
-/******/ 		// JSONP chunk loading for javascript
-/******/
-/******/ 		var installedChunkData = installedChunks[chunkId];
-/******/ 		if(installedChunkData !== 0) { // 0 means "already installed".
-/******/
-/******/ 			// a Promise means "currently loading".
-/******/ 			if(installedChunkData) {
-/******/ 				promises.push(installedChunkData[2]);
-/******/ 			} else {
-/******/ 				// setup Promise in chunk cache
-/******/ 				var promise = new Promise(function(resolve, reject) {
-/******/ 					installedChunkData = installedChunks[chunkId] = [resolve, reject];
-/******/ 				});
-/******/ 				promises.push(installedChunkData[2] = promise);
-/******/
-/******/ 				// start chunk loading
-/******/ 				var script = document.createElement('script');
-/******/ 				var onScriptComplete;
-/******/
-/******/ 				script.charset = 'utf-8';
-/******/ 				script.timeout = 120;
-/******/ 				if (__webpack_require__.nc) {
-/******/ 					script.setAttribute("nonce", __webpack_require__.nc);
-/******/ 				}
-/******/ 				script.src = jsonpScriptSrc(chunkId);
-/******/
-/******/ 				// create error before stack unwound to get useful stacktrace later
-/******/ 				var error = new Error();
-/******/ 				onScriptComplete = function (event) {
-/******/ 					// avoid mem leaks in IE.
-/******/ 					script.onerror = script.onload = null;
-/******/ 					clearTimeout(timeout);
-/******/ 					var chunk = installedChunks[chunkId];
-/******/ 					if(chunk !== 0) {
-/******/ 						if(chunk) {
-/******/ 							var errorType = event && (event.type === 'load' ? 'missing' : event.type);
-/******/ 							var realSrc = event && event.target && event.target.src;
-/******/ 							error.message = 'Loading chunk ' + chunkId + ' failed.\n(' + errorType + ': ' + realSrc + ')';
-/******/ 							error.name = 'ChunkLoadError';
-/******/ 							error.type = errorType;
-/******/ 							error.request = realSrc;
-/******/ 							chunk[1](error);
-/******/ 						}
-/******/ 						installedChunks[chunkId] = undefined;
-/******/ 					}
-/******/ 				};
-/******/ 				var timeout = setTimeout(function(){
-/******/ 					onScriptComplete({ type: 'timeout', target: script });
-/******/ 				}, 120000);
-/******/ 				script.onerror = script.onload = onScriptComplete;
-/******/ 				document.head.appendChild(script);
-/******/ 			}
-/******/ 		}
-/******/ 		return Promise.all(promises);
-/******/ 	};
-/******/
-/******/ 	// expose the modules object (__webpack_modules__)
-/******/ 	__webpack_require__.m = modules;
-/******/
-/******/ 	// expose the module cache
-/******/ 	__webpack_require__.c = installedModules;
-/******/
-/******/ 	// define getter function for harmony exports
-/******/ 	__webpack_require__.d = function(exports, name, getter) {
-/******/ 		if(!__webpack_require__.o(exports, name)) {
-/******/ 			Object.defineProperty(exports, name, { enumerable: true, get: getter });
-/******/ 		}
-/******/ 	};
-/******/
-/******/ 	// define __esModule on exports
-/******/ 	__webpack_require__.r = function(exports) {
-/******/ 		if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
-/******/ 			Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
-/******/ 		}
-/******/ 		Object.defineProperty(exports, '__esModule', { value: true });
-/******/ 	};
-/******/
-/******/ 	// create a fake namespace object
-/******/ 	// mode & 1: value is a module id, require it
-/******/ 	// mode & 2: merge all properties of value into the ns
-/******/ 	// mode & 4: return value when already ns object
-/******/ 	// mode & 8|1: behave like require
-/******/ 	__webpack_require__.t = function(value, mode) {
-/******/ 		if(mode & 1) value = __webpack_require__(value);
-/******/ 		if(mode & 8) return value;
-/******/ 		if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
-/******/ 		var ns = Object.create(null);
-/******/ 		__webpack_require__.r(ns);
-/******/ 		Object.defineProperty(ns, 'default', { enumerable: true, value: value });
-/******/ 		if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
-/******/ 		return ns;
-/******/ 	};
-/******/
-/******/ 	// getDefaultExport function for compatibility with non-harmony modules
-/******/ 	__webpack_require__.n = function(module) {
-/******/ 		var getter = module && module.__esModule ?
-/******/ 			function getDefault() { return module['default']; } :
-/******/ 			function getModuleExports() { return module; };
-/******/ 		__webpack_require__.d(getter, 'a', getter);
-/******/ 		return getter;
-/******/ 	};
-/******/
-/******/ 	// Object.prototype.hasOwnProperty.call
-/******/ 	__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
-/******/
-/******/ 	// __webpack_public_path__
-/******/ 	__webpack_require__.p = "/";
-/******/
-/******/ 	// on error function for async loading
-/******/ 	__webpack_require__.oe = function(err) { console.error(err); throw err; };
-/******/
-/******/ 	var jsonpArray = global["webpackJsonp"] = global["webpackJsonp"] || [];
-/******/ 	var oldJsonpFunction = jsonpArray.push.bind(jsonpArray);
-/******/ 	jsonpArray.push = webpackJsonpCallback;
-/******/ 	jsonpArray = jsonpArray.slice();
-/******/ 	for(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);
-/******/ 	var parentJsonpFunction = oldJsonpFunction;
-/******/
-/******/
-/******/ 	// run deferred modules from other chunks
-/******/ 	checkDeferredModules();
-/******/ })
-/************************************************************************/
-/******/ ([]);
+  (function(e){function r(r){for(var n,a,i=r[0],l=r[1],c=r[2],f=0,s=[];f<i.length;f++)a=i[f],Object.prototype.hasOwnProperty.call(o,a)&&o[a]&&s.push(o[a][0]),o[a]=0;for(n in l)Object.prototype.hasOwnProperty.call(l,n)&&(e[n]=l[n]);p&&p(r);while(s.length)s.shift()();return u.push.apply(u,c||[]),t()}function t(){for(var e,r=0;r<u.length;r++){for(var t=u[r],n=!0,a=1;a<t.length;a++){var l=t[a];0!==o[l]&&(n=!1)}n&&(u.splice(r--,1),e=i(i.s=t[0]))}return e}var n={},o={"common/runtime":0},u=[];function a(e){return i.p+""+e+".js"}function i(r){if(n[r])return n[r].exports;var t=n[r]={i:r,l:!1,exports:{}};return e[r].call(t.exports,t,t.exports,i),t.l=!0,t.exports}i.e=function(e){var r=[],t=o[e];if(0!==t)if(t)r.push(t[2]);else{var n=new Promise((function(r,n){t=o[e]=[r,n]}));r.push(t[2]=n);var u,l=document.createElement("script");l.charset="utf-8",l.timeout=120,i.nc&&l.setAttribute("nonce",i.nc),l.src=a(e);var c=new Error;u=function(r){l.onerror=l.onload=null,clearTimeout(f);var t=o[e];if(0!==t){if(t){var n=r&&("load"===r.type?"missing":r.type),u=r&&r.target&&r.target.src;c.message="Loading chunk "+e+" failed.\n("+n+": "+u+")",c.name="ChunkLoadError",c.type=n,c.request=u,t[1](c)}o[e]=void 0}};var f=setTimeout((function(){u({type:"timeout",target:l})}),12e4);l.onerror=l.onload=u,document.head.appendChild(l)}return Promise.all(r)},i.m=e,i.c=n,i.d=function(e,r,t){i.o(e,r)||Object.defineProperty(e,r,{enumerable:!0,get:t})},i.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},i.t=function(e,r){if(1&r&&(e=i(e)),8&r)return e;if(4&r&&"object"===typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(i.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&r&&"string"!=typeof e)for(var n in e)i.d(t,n,function(r){return e[r]}.bind(null,n));return t},i.n=function(e){var r=e&&e.__esModule?function(){return e["default"]}:function(){return e};return i.d(r,"a",r),r},i.o=function(e,r){return Object.prototype.hasOwnProperty.call(e,r)},i.p="/",i.oe=function(e){throw console.error(e),e};var l=global["webpackJsonp"]=global["webpackJsonp"]||[],c=l.push.bind(l);l.push=r,l=l.slice();for(var f=0;f<l.length;f++)r(l[f]);var p=c;t()})([]);
 //# sourceMappingURL=../../.sourcemap/mp-weixin/common/runtime.js.map
   
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/pages/evaluate/evaluate.js b/small-program/unpackage/dist/dev/mp-weixin/pages/evaluate/evaluate.js
new file mode 100644
index 0000000..875378f
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/pages/evaluate/evaluate.js
@@ -0,0 +1,2 @@
+(global["webpackJsonp"]=global["webpackJsonp"]||[]).push([["pages/evaluate/evaluate"],{605:function(e,n,t){"use strict";(function(e,n){var r=t(4);t(30);r(t(25));var a=r(t(606));e.__webpack_require_UNI_MP_PLUGIN__=t,n(a.default)}).call(this,t(1)["default"],t(2)["createPage"])},606:function(e,n,t){"use strict";t.r(n);var r=t(607),a=t(609);for(var u in a)["default"].indexOf(u)<0&&function(e){t.d(n,e,(function(){return a[e]}))}(u);t(611);var c,i=t(41),o=Object(i["default"])(a["default"],r["render"],r["staticRenderFns"],!1,null,"2208e2a6",null,!1,r["components"],c);o.options.__file="pages/evaluate/evaluate.vue",n["default"]=o.exports},607:function(e,n,t){"use strict";t.r(n);var r=t(608);t.d(n,"render",(function(){return r["render"]})),t.d(n,"staticRenderFns",(function(){return r["staticRenderFns"]})),t.d(n,"recyclableRender",(function(){return r["recyclableRender"]})),t.d(n,"components",(function(){return r["components"]}))},608:function(e,n,t){"use strict";var r;t.r(n),t.d(n,"render",(function(){return a})),t.d(n,"staticRenderFns",(function(){return c})),t.d(n,"recyclableRender",(function(){return u})),t.d(n,"components",(function(){return r}));var a=function(){var e=this,n=e.$createElement,t=(e._self._c,e.content.length);e._isMounted||(e.e0=function(n,t){var r=arguments[arguments.length-1].currentTarget.dataset,a=r.eventParams||r["event-params"];t=a.n;e.shopRate=t},e.e1=function(n,t){var r=arguments[arguments.length-1].currentTarget.dataset,a=r.eventParams||r["event-params"];t=a.n;e.driverRate=t},e.e2=function(n,t){var r=arguments[arguments.length-1].currentTarget.dataset,a=r.eventParams||r["event-params"];t=a.n;e.receiveRate=t}),e.$mp.data=Object.assign({},{$root:{g0:t}})},u=!1,c=[];a._withStripped=!0},609:function(e,n,t){"use strict";t.r(n);var r=t(610),a=t.n(r);for(var u in r)["default"].indexOf(u)<0&&function(e){t.d(n,e,(function(){return r[e]}))}(u);n["default"]=a.a},610:function(e,n,t){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var r={data:function(){return{shopRate:2,driverRate:0,receiveRate:0,content:"",photoList:["/static/icon/nav_home_sel@2x.png","/static/icon/nav_xingcheng_sel@2x.png"]}}};n.default=r},611:function(e,n,t){"use strict";t.r(n);var r=t(612),a=t.n(r);for(var u in r)["default"].indexOf(u)<0&&function(e){t.d(n,e,(function(){return r[e]}))}(u);n["default"]=a.a},612:function(e,n,t){}},[[605,"common/runtime","common/vendor"]]]);
+//# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/evaluate/evaluate.js.map
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/pages/evaluate/evaluate.json b/small-program/unpackage/dist/dev/mp-weixin/pages/evaluate/evaluate.json
new file mode 100644
index 0000000..aa7a059
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/pages/evaluate/evaluate.json
@@ -0,0 +1,4 @@
+{
+  "navigationBarTitleText": "璇勪环",
+  "usingComponents": {}
+}
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/pages/evaluate/evaluate.wxml b/small-program/unpackage/dist/dev/mp-weixin/pages/evaluate/evaluate.wxml
new file mode 100644
index 0000000..4a5a67e
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/pages/evaluate/evaluate.wxml
@@ -0,0 +1 @@
+<view class="evaluate-page data-v-2208e2a6"><view class="content-wrap data-v-2208e2a6"><view class="rate-block data-v-2208e2a6"><view class="title-row data-v-2208e2a6"><text class="title-label data-v-2208e2a6">瀵勪欢闂ㄥ簵锛�</text><text class="title-value data-v-2208e2a6">涓搧蹇繍鍗楃珯鏃楄埌搴�</text></view><view class="star-row data-v-2208e2a6"><view class="star-list data-v-2208e2a6"><block wx:for="{{5}}" wx:for-item="n" wx:for-index="__i0__"><view data-event-opts="{{[['tap',[['e0',['$event']]]]]}}" data-event-params="{{({n})}}" class="{{['star-item','data-v-2208e2a6',(n<=shopRate)?'active':'',(n===1||n===3)?'dashed':'']}}" bindtap="__e">鈽�</view></block></view><text class="rate-text data-v-2208e2a6">{{shopRate+"鏄�"}}</text></view></view><view class="divider data-v-2208e2a6"></view><view class="rate-block data-v-2208e2a6"><view class="title-row data-v-2208e2a6"><text class="title-label data-v-2208e2a6">閰嶉�佸徃鏈猴細</text><text class="title-value data-v-2208e2a6">寮犱紵</text></view><view class="star-row no-text-row data-v-2208e2a6"><view class="star-list data-v-2208e2a6"><block wx:for="{{5}}" wx:for-item="n" wx:for-index="__i1__"><view data-event-opts="{{[['tap',[['e1',['$event']]]]]}}" data-event-params="{{({n})}}" class="{{['star-item','data-v-2208e2a6',(n<=driverRate)?'active':'',(n===1)?'dashed':'']}}" bindtap="__e">鈽�</view></block></view></view></view><view class="divider data-v-2208e2a6"></view><view class="rate-block data-v-2208e2a6"><view class="title-row data-v-2208e2a6"><text class="title-label data-v-2208e2a6">鏀朵欢闂ㄥ簵锛�</text><text class="title-value data-v-2208e2a6">涓搧蹇繍鍚堣偉绔欐棗鑸板簵</text></view><view class="star-row no-text-row data-v-2208e2a6"><view class="star-list data-v-2208e2a6"><block wx:for="{{5}}" wx:for-item="n" wx:for-index="__i2__"><view data-event-opts="{{[['tap',[['e2',['$event']]]]]}}" data-event-params="{{({n})}}" class="{{['star-item','data-v-2208e2a6',(n<=receiveRate)?'active':'',(n===1)?'dashed':'']}}" bindtap="__e">鈽�</view></block></view></view></view><view class="divider data-v-2208e2a6"></view><view class="upload-row data-v-2208e2a6"><view class="upload-box data-v-2208e2a6"><view class="upload-plus data-v-2208e2a6">+</view><text class="upload-text data-v-2208e2a6">涓婁紶鐓х墖</text></view><block wx:for="{{photoList}}" wx:for-item="item" wx:for-index="index" wx:key="index"><view class="photo-box data-v-2208e2a6"><image class="photo-image data-v-2208e2a6" src="{{item}}" mode="aspectFill"></image><text class="photo-delete data-v-2208e2a6">鍒犻櫎</text></view></block></view><view class="textarea-box data-v-2208e2a6"><view class="textarea-placeholder-wrap data-v-2208e2a6"><view class="textarea-icon data-v-2208e2a6"></view><textarea class="textarea data-v-2208e2a6" maxlength="200" placeholder="璇疯璇存偍瀵规湰娆℃湇鍔$殑鎰熷彈" placeholder-class="textarea-placeholder" data-event-opts="{{[['input',[['__set_model',['','content','$event',[]]]]]]}}" value="{{content}}" bindinput="__e"></textarea></view><text class="textarea-count data-v-2208e2a6">{{$root.g0+"/200"}}</text></view></view><view class="submit-wrap data-v-2208e2a6"><view class="submit-btn data-v-2208e2a6">鎻愪氦璇勪环</view></view></view>
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/pages/evaluate/evaluate.wxss b/small-program/unpackage/dist/dev/mp-weixin/pages/evaluate/evaluate.wxss
new file mode 100644
index 0000000..8589d84
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/pages/evaluate/evaluate.wxss
@@ -0,0 +1,219 @@
+@charset "UTF-8";
+/**
+ * 杩欓噷鏄痷ni-app鍐呯疆鐨勫父鐢ㄦ牱寮忓彉閲�
+ *
+ * uni-app 瀹樻柟鎵╁睍鎻掍欢鍙婃彃浠跺競鍦猴紙https://ext.dcloud.net.cn锛変笂寰堝涓夋柟鎻掍欢鍧囦娇鐢ㄤ簡杩欎簺鏍峰紡鍙橀噺
+ * 濡傛灉浣犳槸鎻掍欢寮�鍙戣�咃紝寤鸿浣犱娇鐢╯css棰勫鐞嗭紝骞跺湪鎻掍欢浠g爜涓洿鎺ヤ娇鐢ㄨ繖浜涘彉閲忥紙鏃犻渶 import 杩欎釜鏂囦欢锛夛紝鏂逛究鐢ㄦ埛閫氳繃鎼Н鏈ㄧ殑鏂瑰紡寮�鍙戞暣浣撻鏍间竴鑷寸殑App
+ *
+ */
+/**
+ * 濡傛灉浣犳槸App寮�鍙戣�咃紙鎻掍欢浣跨敤鑰咃級锛屼綘鍙互閫氳繃淇敼杩欎簺鍙橀噺鏉ュ畾鍒惰嚜宸辩殑鎻掍欢涓婚锛屽疄鐜拌嚜瀹氫箟涓婚鍔熻兘
+ *
+ * 濡傛灉浣犵殑椤圭洰鍚屾牱浣跨敤浜唖css棰勫鐞嗭紝浣犱篃鍙互鐩存帴鍦ㄤ綘鐨� scss 浠g爜涓娇鐢ㄥ涓嬪彉閲忥紝鍚屾椂鏃犻渶 import 杩欎釜鏂囦欢
+ */
+/* uni.scss */
+/* 棰滆壊鍙橀噺 */
+/* 琛屼负鐩稿叧棰滆壊 */
+/* 鏂囧瓧鍩烘湰棰滆壊 */
+/* 鑳屾櫙棰滆壊 */
+/* 杈规棰滆壊 */
+/* 灏哄鍙橀噺 */
+/* 鏂囧瓧灏哄 */
+/* 鍥剧墖灏哄 */
+/* Border Radius */
+/* 姘村钩闂磋窛 */
+/* 鍨傜洿闂磋窛 */
+/* 閫忔槑搴� */
+/* 鏂囩珷鍦烘櫙鐩稿叧 */
+.evaluate-page.data-v-2208e2a6 {
+  background: #ffffff;
+  padding: 0 30rpx;
+  box-sizing: border-box;
+}
+.content-wrap.data-v-2208e2a6 {
+  padding-bottom: 40rpx;
+}
+.rate-block.data-v-2208e2a6 {
+  padding: 40rpx 0;
+  box-sizing: border-box;
+}
+.title-row.data-v-2208e2a6 {
+  display: flex;
+  align-items: center;
+  flex-wrap: wrap;
+}
+.title-label.data-v-2208e2a6,
+.title-value.data-v-2208e2a6 {
+  font-weight: 400;
+  font-size: 30rpx;
+  color: #222222;
+}
+.title-label.data-v-2208e2a6 {
+  font-weight: 500;
+}
+.title-value.data-v-2208e2a6 {
+  font-weight: 500;
+}
+.star-row.data-v-2208e2a6 {
+  margin-top: 30rpx;
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
+}
+.no-text-row.data-v-2208e2a6 {
+  justify-content: flex-start;
+}
+.star-list.data-v-2208e2a6 {
+  display: flex;
+  align-items: center;
+}
+.star-item.data-v-2208e2a6 {
+  width: 54rpx;
+  height: 54rpx;
+  margin-right: 10rpx;
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  font-size: 50rpx;
+  line-height: 1;
+  color: #e5e7eb;
+  position: relative;
+}
+.star-item.active.data-v-2208e2a6 {
+  color: #ffc533;
+}
+.rate-text.data-v-2208e2a6 {
+  font-size: 30rpx;
+  color: #666666;
+}
+.divider.data-v-2208e2a6 {
+  height: 1rpx;
+  background: #f0f1f4;
+  margin-bottom: 26rpx;
+}
+.upload-row.data-v-2208e2a6 {
+  display: flex;
+  align-items: flex-start;
+  gap: 10rpx;
+  margin-bottom: 22rpx;
+}
+.upload-box.data-v-2208e2a6,
+.photo-box.data-v-2208e2a6 {
+  width: 122rpx;
+  height: 122rpx;
+  border-radius: 0;
+  overflow: hidden;
+  position: relative;
+  box-sizing: border-box;
+}
+.upload-box.data-v-2208e2a6 {
+  border: 1rpx dashed #c8ccd4;
+  display: flex;
+  flex-direction: column;
+  align-items: center;
+  justify-content: center;
+}
+.upload-plus.data-v-2208e2a6 {
+  font-size: 54rpx;
+  line-height: 1;
+  color: #999999;
+}
+.upload-text.data-v-2208e2a6 {
+  margin-top: 8rpx;
+  font-size: 24rpx;
+  color: #999999;
+}
+.photo-image.data-v-2208e2a6 {
+  width: 100%;
+  height: 100%;
+}
+.photo-delete.data-v-2208e2a6 {
+  position: absolute;
+  left: 0;
+  right: 0;
+  bottom: 0;
+  height: 32rpx;
+  line-height: 32rpx;
+  text-align: center;
+  font-size: 22rpx;
+  color: #ffffff;
+  background: rgba(0, 0, 0, 0.45);
+}
+.textarea-box.data-v-2208e2a6 {
+  background: #f6f8fb;
+  border-radius: 18rpx;
+  padding: 18rpx 18rpx 16rpx;
+  box-sizing: border-box;
+}
+.textarea-placeholder-wrap.data-v-2208e2a6 {
+  display: flex;
+  align-items: flex-start;
+}
+.textarea-icon.data-v-2208e2a6 {
+  width: 26rpx;
+  height: 26rpx;
+  border: 2rpx solid #b9bec7;
+  margin-top: 8rpx;
+  margin-right: 12rpx;
+  box-sizing: border-box;
+  position: relative;
+}
+.textarea-icon.data-v-2208e2a6::before,
+.textarea-icon.data-v-2208e2a6::after {
+  content: '';
+  position: absolute;
+  background: #b9bec7;
+}
+.textarea-icon.data-v-2208e2a6::before {
+  width: 20rpx;
+  height: 2rpx;
+  left: 2rpx;
+  top: 11rpx;
+  -webkit-transform: rotate(-45deg);
+          transform: rotate(-45deg);
+}
+.textarea-icon.data-v-2208e2a6::after {
+  width: 2rpx;
+  height: 12rpx;
+  right: 4rpx;
+  top: 3rpx;
+  -webkit-transform: rotate(-45deg);
+          transform: rotate(-45deg);
+}
+.textarea.data-v-2208e2a6 {
+  flex: 1;
+  min-height: 260rpx;
+  font-size: 28rpx;
+  line-height: 1.6;
+  color: #333333;
+  background: transparent;
+}
+.textarea-placeholder.data-v-2208e2a6 {
+  font-size: 28rpx;
+  color: #b9bec7;
+}
+.textarea-count.data-v-2208e2a6 {
+  display: block;
+  margin-top: 8rpx;
+  text-align: right;
+  font-size: 20rpx;
+  color: #999999;
+}
+.submit-wrap.data-v-2208e2a6 {
+  position: fixed;
+  left: 18rpx;
+  right: 18rpx;
+  bottom: calc(16rpx + env(safe-area-inset-bottom));
+}
+.submit-btn.data-v-2208e2a6 {
+  height: 78rpx;
+  border-radius: 39rpx;
+  background: #22abf4;
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  font-size: 34rpx;
+  font-weight: 500;
+  color: #ffffff;
+}
+
diff --git a/small-program/unpackage/dist/dev/mp-weixin/pages/index/index.js b/small-program/unpackage/dist/dev/mp-weixin/pages/index/index.js
index acff4c3..92c24c8 100644
--- a/small-program/unpackage/dist/dev/mp-weixin/pages/index/index.js
+++ b/small-program/unpackage/dist/dev/mp-weixin/pages/index/index.js
@@ -1,3 +1,6 @@
+<<<<<<< HEAD
+(global["webpackJsonp"]=global["webpackJsonp"]||[]).push([["pages/index/index"],{164:function(e,t,n){"use strict";(function(e,t){var r=n(4);n(30);r(n(25));var o=r(n(165));e.__webpack_require_UNI_MP_PLUGIN__=n,t(o.default)}).call(this,n(1)["default"],n(2)["createPage"])},165:function(e,t,n){"use strict";n.r(t);var r=n(166),o=n(168);for(var a in o)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return o[e]}))}(a);n(171);var i,c=n(41),u=Object(c["default"])(o["default"],r["render"],r["staticRenderFns"],!1,null,"57280228",null,!1,r["components"],i);u.options.__file="pages/index/index.vue",t["default"]=u.exports},166:function(e,t,n){"use strict";n.r(t);var r=n(167);n.d(t,"render",(function(){return r["render"]})),n.d(t,"staticRenderFns",(function(){return r["staticRenderFns"]})),n.d(t,"recyclableRender",(function(){return r["recyclableRender"]})),n.d(t,"components",(function(){return r["components"]}))},167:function(e,t,n){"use strict";var r;n.r(t),n.d(t,"render",(function(){return o})),n.d(t,"staticRenderFns",(function(){return i})),n.d(t,"recyclableRender",(function(){return a})),n.d(t,"components",(function(){return r}));try{r={uIcon:function(){return Promise.all([n.e("common/vendor"),n.e("node-modules/uview-ui/components/u-icon/u-icon")]).then(n.bind(null,367))},customTabbar:function(){return n.e("components/custom-tabbar/custom-tabbar").then(n.bind(null,376))}}}catch(c){if(-1===c.message.indexOf("Cannot find module")||-1===c.message.indexOf(".vue"))throw c;console.error(c.message),console.error("1. 鎺掓煡缁勪欢鍚嶇О鎷煎啓鏄惁姝g‘"),console.error("2. 鎺掓煡缁勪欢鏄惁绗﹀悎 easycom 瑙勮寖锛屾枃妗o細https://uniapp.dcloud.net.cn/collocation/pages?id=easycom"),console.error("3. 鑻ョ粍浠朵笉绗﹀悎 easycom 瑙勮寖锛岄渶鎵嬪姩寮曞叆锛屽苟鍦� components 涓敞鍐岃缁勪欢")}var o=function(){var e=this,t=e.$createElement,n=(e._self._c,e.pointList.length);e.$mp.data=Object.assign({},{$root:{g0:n}})},a=!1,i=[];o._withStripped=!0},168:function(e,t,n){"use strict";n.r(t);var r=n(169),o=n.n(r);for(var a in r)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return r[e]}))}(a);t["default"]=o.a},169:function(e,t,n){"use strict";(function(e){var r=n(4);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(34)),a=r(n(36)),i=r(n(11)),c=n(37),u=r(n(38));function s(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function d(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?s(Object(n),!0).forEach((function(t){(0,i.default)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):s(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var f=function(){n.e("components/custom-tabbar/custom-tabbar").then(function(){return resolve(n(376))}.bind(null,n)).catch(n.oe)},l={components:{CustomTabbar:f},computed:d(d({},(0,c.mapState)(["navHeight","statusbarHeight","address","latitude","cityId","longitude"])),{},{currentAddress:function(){return this.address&&"瀹氫綅涓�"!==this.address?this.address:"鑾峰彇瀹氫綅"}}),data:function(){return{backgroundImage:n(170),bannerList:[],pointList:[],page:1,isRequest:!0}},onLoad:function(){var e=this;return(0,a.default)(o.default.mark((function t(){return o.default.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.next=2,e.$onLaunched;case 2:return t.next=4,e.getBannerList();case 4:return t.next=6,e.getNearbyShopList();case 6:case"end":return t.stop()}}),t)})))()},onReachBottom:function(){this.getNearbyShopList()},methods:{jumpxiadan:function(){e.navigateTo({url:"/pages/luggage-storage/luggage-storage"})},getBannerList:function(){var e=this;return(0,a.default)(o.default.mark((function t(){var n;return o.default.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.next=2,e.$u.api.getBannerList({position:0});case 2:n=t.sent,200===n.code&&(e.bannerList=n.data||[]);case 4:case"end":return t.stop()}}),t)})))()},getNearbyShopList:function(){var e=this;return(0,a.default)(o.default.mark((function t(){var n;return o.default.wrap((function(t){while(1)switch(t.prev=t.next){case 0:if(e.isRequest){t.next=2;break}return t.abrupt("return");case 2:return t.next=4,e.$u.api.getNearbyShopList({capacity:10,page:e.page,model:{latitude:e.latitude,longitude:e.longitude,cityId:e.cityId,sortType:1}});case 4:n=t.sent,200===n.code&&(e.pointList=n.data.records||[],e.page++,n.data.total<=e.pointList.length&&(e.isRequest=!1));case 6:case"end":return t.stop()}}),t)})))()},jumpJC:function(){e.navigateTo({url:"/pages/storage-point/storage-point"})},handleLocation:function(){var t=this;e.openSetting({success:function(e){e.authSetting["scope.userLocation"]&&t.positioning()}})},positioning:function(){var t=this;e.getLocation({type:"gcj02",highAccuracyExpireTime:3e3,isHighAccuracy:!0,success:function(e){var n={latitude:e.latitude,longitude:e.longitude},r=new u.default.AMapWX({key:"f2e6c0bfcac14c27b4f0d6d0d5b9d7d"});r.getRegeo({location:e.longitude+","+e.latitude,success:function(){var e=(0,a.default)(o.default.mark((function e(r){var a,i,c;return o.default.wrap((function(e){while(1)switch(e.prev=e.next){case 0:return console.log(r,"==================鑾峰彇鍦板潃"),a=r[0],n.province=a.province,n.city=a.city,n.area=a.district,n.street=a.street,i=a.name||"鍦板潃鑾峰彇澶辫触",n.address=i,e.next=10,t.$u.api.getCityByName({cityName:n.city});case 10:c=e.sent,200===c.code&&(n.cityId=c.data.id),t.$store.commit("setPosition",n),t.$isResolve();case 14:case"end":return e.stop()}}),e)})));function r(t){return e.apply(this,arguments)}return r}(),fail:function(e){t.$isResolve()}})}})},goStoragePage:function(){e.navigateTo({url:"/pages/storage-point/storage-point"})}}};t.default=l}).call(this,n(2)["default"])},171:function(e,t,n){"use strict";n.r(t);var r=n(172),o=n.n(r);for(var a in r)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return r[e]}))}(a);t["default"]=o.a},172:function(e,t,n){}},[[164,"common/runtime","common/vendor"]]]);
+=======
 (global["webpackJsonp"] = global["webpackJsonp"] || []).push([["pages/index/index"],{
 
 /***/ 164:
@@ -425,4 +428,5 @@
 /***/ })
 
 },[[164,"common/runtime","common/vendor"]]]);
+>>>>>>> 50573d8f1149d7020c38afb695116cb2953a3d43
 //# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/index/index.js.map
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/pages/mine/mine.js b/small-program/unpackage/dist/dev/mp-weixin/pages/mine/mine.js
index a04cde0..38b616a 100644
--- a/small-program/unpackage/dist/dev/mp-weixin/pages/mine/mine.js
+++ b/small-program/unpackage/dist/dev/mp-weixin/pages/mine/mine.js
@@ -1,3 +1,6 @@
+<<<<<<< HEAD
+(global["webpackJsonp"]=global["webpackJsonp"]||[]).push([["pages/mine/mine"],{173:function(e,t,n){"use strict";(function(e,t){var r=n(4);n(30);r(n(25));var o=r(n(174));e.__webpack_require_UNI_MP_PLUGIN__=n,t(o.default)}).call(this,n(1)["default"],n(2)["createPage"])},174:function(e,t,n){"use strict";n.r(t);var r=n(175),o=n(177);for(var a in o)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return o[e]}))}(a);n(179);var i,u=n(41),c=Object(u["default"])(o["default"],r["render"],r["staticRenderFns"],!1,null,"dcbcfe34",null,!1,r["components"],i);c.options.__file="pages/mine/mine.vue",t["default"]=c.exports},175:function(e,t,n){"use strict";n.r(t);var r=n(176);n.d(t,"render",(function(){return r["render"]})),n.d(t,"staticRenderFns",(function(){return r["staticRenderFns"]})),n.d(t,"recyclableRender",(function(){return r["recyclableRender"]})),n.d(t,"components",(function(){return r["components"]}))},176:function(e,t,n){"use strict";var r;n.r(t),n.d(t,"render",(function(){return o})),n.d(t,"staticRenderFns",(function(){return i})),n.d(t,"recyclableRender",(function(){return a})),n.d(t,"components",(function(){return r}));try{r={uIcon:function(){return Promise.all([n.e("common/vendor"),n.e("node-modules/uview-ui/components/u-icon/u-icon")]).then(n.bind(null,367))},authLogin:function(){return n.e("components/auth-login/auth-login").then(n.bind(null,383))},customTabbar:function(){return n.e("components/custom-tabbar/custom-tabbar").then(n.bind(null,376))}}}catch(u){if(-1===u.message.indexOf("Cannot find module")||-1===u.message.indexOf(".vue"))throw u;console.error(u.message),console.error("1. 鎺掓煡缁勪欢鍚嶇О鎷煎啓鏄惁姝g‘"),console.error("2. 鎺掓煡缁勪欢鏄惁绗﹀悎 easycom 瑙勮寖锛屾枃妗o細https://uniapp.dcloud.net.cn/collocation/pages?id=easycom"),console.error("3. 鑻ョ粍浠朵笉绗﹀悎 easycom 瑙勮寖锛岄渶鎵嬪姩寮曞叆锛屽苟鍦� components 涓敞鍐岃缁勪欢")}var o=function(){var e=this,t=e.$createElement,n=(e._self._c,e.__map(e.menuList,(function(t,n){var r=e.__get_orig(t),o=["闂ㄥ簵鍏ラ┗","闂ㄥ簵淇℃伅"].includes(t.label);return{$orig:r,g0:o}})));e._isMounted||(e.e0=function(t){e.showAuthLogin=!1}),e.$mp.data=Object.assign({},{$root:{l0:n}})},a=!1,i=[];o._withStripped=!0},177:function(e,t,n){"use strict";n.r(t);var r=n(178),o=n.n(r);for(var a in r)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return r[e]}))}(a);t["default"]=o.a},178:function(e,t,n){"use strict";(function(e){var r=n(4);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(34)),a=r(n(36)),i=r(n(11)),u=n(37);function c(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function s(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?c(Object(n),!0).forEach((function(t){(0,i.default)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):c(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var l=function(){n.e("components/custom-tabbar/custom-tabbar").then(function(){return resolve(n(376))}.bind(null,n)).catch(n.oe)},d={components:{CustomTabbar:l},computed:s({},(0,u.mapState)(["navHeight","statusbarHeight","openid","userInfo","token"])),data:function(){return{showAuthLogin:!1,agreeChecked:!0,userName:"",orderMenus:[{label:"寰呮敮浠�",url:"/static/icon/mine_ic_daifukuan@2x.png",badge:0},{label:"寰呮敹璐�",url:"/static/icon/mine_ic_daishouhuo@2x.png",badge:0},{label:"閫�娆�/鍞悗",url:"/static/icon/mine_ic_tuikuan@2x.png",badge:0}],menuList:[{label:"闂ㄥ簵鍏ラ┗"},{label:"鎴戠殑闂ㄥ簵"},{label:"瑙勮寖椤荤煡"},{label:"鍦ㄧ嚎瀹㈡湇"},{label:"鍏充簬鎴戜滑"}]}},onShow:function(){var e=this;return(0,a.default)(o.default.mark((function t(){return o.default.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.next=2,e.$onLaunched;case 2:e.token&&e.getOrderNum(),e.userInfo?3===e.userInfo.shopAuditStatus&&(e.menuList[0].label="闂ㄥ簵淇℃伅"):e.orderMenus=[{label:"寰呮敮浠�",url:"/static/icon/mine_ic_daifukuan@2x.png",badge:0},{label:"寰呮敹璐�",url:"/static/icon/mine_ic_daishouhuo@2x.png",badge:0},{label:"閫�娆�/鍞悗",url:"/static/icon/mine_ic_tuikuan@2x.png",badge:0}];case 4:case"end":return t.stop()}}),t)})))()},methods:{handleProfileClick:function(){this.token||(this.showAuthLogin=!0)},toAllOrders:function(){e.navigateTo({url:"/pages/orders/orders"})},handleMenuClick:function(t){var n={"闂ㄥ簵鍏ラ┗":"/pages/store-apply/store-apply","鎴戠殑闂ㄥ簵":"/shop/pages/login/login","瑙勮寖椤荤煡":"/pages/rich-text/rich-text?type=serverIntroduce","鍏充簬鎴戜滑":"/pages/rich-text/rich-text?type=about"};["闂ㄥ簵鍏ラ┗","闂ㄥ簵淇℃伅"].includes(t.label)&&[0,1,2,3].includes(this.userInfo.shopAuditStatus)?e.navigateTo({url:"/pages/details-entry/details-entry"}):n[t.label]&&e.navigateTo({url:n[t.label]})},toOrderDetail:function(t){e.navigateTo({url:"/pages/orders/orders?status="+t})},toSetting:function(){e.navigateTo({url:"/pages/settings/settings"})},goService:function(){e.navigateTo({url:"/pages/rich-text/rich-text?type=userAgreement"})},goPrivacy:function(){e.navigateTo({url:"/pages/rich-text/rich-text?type=privacyPolicy"})},getOrderNum:function(){var e=this;this.$u.api.getMemberInfo({}).then((function(t){200===t.code&&(e.$store.commit("setUserInfo",t.data),e.orderMenus.forEach((function(e){"寰呮敮浠�"===e.label?e.badge=t.data.waitPayCount:"寰呮敹璐�"===e.label?e.badge=t.data.waitReceiveCount:"閫�娆�/鍞悗"===e.label&&(e.badge=t.data.refundingCount)})))}))}}};t.default=d}).call(this,n(2)["default"])},179:function(e,t,n){"use strict";n.r(t);var r=n(180),o=n.n(r);for(var a in r)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return r[e]}))}(a);t["default"]=o.a},180:function(e,t,n){}},[[173,"common/runtime","common/vendor"]]]);
+=======
 (global["webpackJsonp"] = global["webpackJsonp"] || []).push([["pages/mine/mine"],{
 
 /***/ 173:
@@ -384,4 +387,5 @@
 /***/ })
 
 },[[173,"common/runtime","common/vendor"]]]);
+>>>>>>> 50573d8f1149d7020c38afb695116cb2953a3d43
 //# sourceMappingURL=../../../.sourcemap/mp-weixin/pages/mine/mine.js.map
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/pages/shop-index/shop-index.wxml b/small-program/unpackage/dist/dev/mp-weixin/pages/shop-index/shop-index.wxml
deleted file mode 100644
index 6fd118c..0000000
--- a/small-program/unpackage/dist/dev/mp-weixin/pages/shop-index/shop-index.wxml
+++ /dev/null
@@ -1 +0,0 @@
-<view class="data-v-4dfa1c66"></view>
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/pages/shop-mine/shop-mine.wxml b/small-program/unpackage/dist/dev/mp-weixin/pages/shop-mine/shop-mine.wxml
deleted file mode 100644
index 38f18d1..0000000
--- a/small-program/unpackage/dist/dev/mp-weixin/pages/shop-mine/shop-mine.wxml
+++ /dev/null
@@ -1 +0,0 @@
-<view class="data-v-cdb1bf48"></view>
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/pages/shop-wallet/shop-wallet.wxml b/small-program/unpackage/dist/dev/mp-weixin/pages/shop-wallet/shop-wallet.wxml
deleted file mode 100644
index 5311042..0000000
--- a/small-program/unpackage/dist/dev/mp-weixin/pages/shop-wallet/shop-wallet.wxml
+++ /dev/null
@@ -1 +0,0 @@
-<view class="data-v-0a407a30"></view>
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/project.private.config.json b/small-program/unpackage/dist/dev/mp-weixin/project.private.config.json
index bf0705a..a98f88f 100644
--- a/small-program/unpackage/dist/dev/mp-weixin/project.private.config.json
+++ b/small-program/unpackage/dist/dev/mp-weixin/project.private.config.json
@@ -3,124 +3,48 @@
     "miniprogram": {
       "list": [
         {
-          "name": "闂ㄥ簵鐧诲綍",
-          "pathName": "shop/pages/login/login",
+          "name": "璇勪环",
+          "pathName": "pages/evaluate/evaluate",
           "query": "",
           "scene": null,
           "launchMode": "default"
         },
         {
-          "name": "娑堟伅",
-          "pathName": "pages/message/message",
+          "name": "闂ㄥ簵-閽卞寘",
+          "pathName": "shop/pages/wallet/wallet",
           "query": "",
           "launchMode": "default",
           "scene": null
         },
         {
-          "name": "閫夋嫨鍩庡競",
-          "pathName": "pages/select-city/select-city",
+          "name": "鎴戠殑璧勮川",
+          "pathName": "shop/pages/qualification/qualification",
           "query": "",
           "launchMode": "default",
           "scene": null
         },
         {
-          "name": "鏀粯鎴愬姛",
-          "pathName": "pages/payment-success/payment-success",
-          "query": "orderId=16",
-          "launchMode": "default",
-          "scene": null
-        },
-        {
-          "name": "涓汉淇℃伅",
-          "pathName": "pages/settings/settings",
+          "name": "鎵嬪姩鏍搁獙",
+          "pathName": "shop/pages/write-off/write-off",
           "query": "",
           "launchMode": "default",
           "scene": null
         },
         {
-          "name": "鍦板潃鍒楄〃",
-          "pathName": "pages/address/address",
-          "query": "",
-          "launchMode": "default",
-          "scene": null
-        },
-        {
-          "name": "闂ㄥ簵鍏ラ┗-瀹℃牳璇︽儏",
-          "pathName": "pages/details-entry/details-entry",
-          "query": "",
-          "launchMode": "default",
-          "scene": null
-        },
-        {
-          "name": "闂ㄥ簵鍏ラ┗",
-          "pathName": "pages/store-apply/store-apply",
-          "query": "",
-          "launchMode": "default",
-          "scene": null
-        },
-        {
-          "name": "鏂板鍦板潃",
-          "pathName": "pages/new-address/new-address",
-          "query": "",
-          "launchMode": "default",
-          "scene": null
-        },
-        {
-          "name": "琛屾潕瀵勫瓨",
-          "pathName": "pages/luggage-storage/luggage-storage",
-          "query": "",
-          "launchMode": "default",
-          "scene": null
-        },
-        {
-          "name": "瀵勫瓨鐐�",
-          "pathName": "pages/storage-point/storage-point",
-          "query": "",
-          "launchMode": "default",
-          "scene": null
-        },
-        {
-          "name": "浼氬憳璁剧疆",
-          "pathName": "pages/settings/settings",
-          "query": "",
-          "launchMode": "default",
-          "scene": null
-        },
-        {
-          "name": "浼氬憳璁㈠崟",
-          "pathName": "pages/orders/orders",
-          "query": "",
-          "launchMode": "default",
-          "scene": null
-        },
-        {
-          "name": "鎴戠殑",
+          "name": "浼氬憳-鎴戠殑",
           "pathName": "pages/mine/mine",
+          "query": "",
+          "launchMode": "default",
+          "scene": null
+        },
+        {
+          "name": "闂ㄥ簵棣栭〉",
+          "pathName": "shop/pages/store-home/store-home",
           "query": "",
           "launchMode": "default",
           "scene": null
         }
       ]
     }
-  },
-  "libVersion": "3.15.1",
-  "projectname": "small-program",
-  "setting": {
-    "urlCheck": false,
-    "coverView": false,
-    "lazyloadPlaceholderEnable": false,
-    "skylineRenderEnable": false,
-    "preloadBackgroundData": false,
-    "autoAudits": false,
-    "useApiHook": true,
-    "useApiHostProcess": true,
-    "showShadowRootInWxmlPanel": false,
-    "useStaticServer": false,
-    "useLanDebug": false,
-    "showES6CompileOption": false,
-    "compileHotReLoad": true,
-    "checkInvalidKey": true,
-    "ignoreDevUnusedFiles": true,
-    "bigPackageSizeSupport": true
   }
 }
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message/message.js b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message/message.js
new file mode 100644
index 0000000..68c8dd7
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message/message.js
@@ -0,0 +1,2 @@
+require('../../common/vendor.js');(global["webpackJsonp"]=global["webpackJsonp"]||[]).push([["shop/pages/message/message"],{593:function(e,t,n){"use strict";(function(e,t){var r=n(4);n(30);r(n(25));var o=r(n(594));e.__webpack_require_UNI_MP_PLUGIN__=n,t(o.default)}).call(this,n(1)["default"],n(2)["createPage"])},594:function(e,t,n){"use strict";n.r(t);var r=n(595),o=n(597);for(var a in o)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return o[e]}))}(a);n(599),n(601);var c,u=n(41),i=Object(u["default"])(o["default"],r["render"],r["staticRenderFns"],!1,null,"15f611e9",null,!1,r["components"],c);i.options.__file="shop/pages/message/message.vue",t["default"]=i.exports},595:function(e,t,n){"use strict";n.r(t);var r=n(596);n.d(t,"render",(function(){return r["render"]})),n.d(t,"staticRenderFns",(function(){return r["staticRenderFns"]})),n.d(t,"recyclableRender",(function(){return r["recyclableRender"]})),n.d(t,"components",(function(){return r["components"]}))},596:function(e,t,n){"use strict";var r;n.r(t),n.d(t,"render",(function(){return o})),n.d(t,"staticRenderFns",(function(){return c})),n.d(t,"recyclableRender",(function(){return a})),n.d(t,"components",(function(){return r}));try{r={customTabbar:function(){return n.e("components/custom-tabbar/custom-tabbar").then(n.bind(null,376))}}}catch(u){if(-1===u.message.indexOf("Cannot find module")||-1===u.message.indexOf(".vue"))throw u;console.error(u.message),console.error("1. 鎺掓煡缁勪欢鍚嶇О鎷煎啓鏄惁姝g‘"),console.error("2. 鎺掓煡缁勪欢鏄惁绗﹀悎 easycom 瑙勮寖锛屾枃妗o細https://uniapp.dcloud.net.cn/collocation/pages?id=easycom"),console.error("3. 鑻ョ粍浠朵笉绗﹀悎 easycom 瑙勮寖锛岄渶鎵嬪姩寮曞叆锛屽苟鍦� components 涓敞鍐岃缁勪欢")}var o=function(){var e=this,t=e.$createElement;e._self._c},a=!1,c=[];o._withStripped=!0},597:function(e,t,n){"use strict";n.r(t);var r=n(598),o=n.n(r);for(var a in r)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return r[e]}))}(a);t["default"]=o.a},598:function(e,t,n){"use strict";var r=n(4);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var o=r(n(34)),a=r(n(18)),c=r(n(36)),u=r(n(11)),i=n(37);function s(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function f(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?s(Object(n),!0).forEach((function(t){(0,u.default)(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):s(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var d=function(){n.e("components/custom-tabbar/custom-tabbar").then(function(){return resolve(n(376))}.bind(null,n)).catch(n.oe)},l={components:{CustomTabbar:d},data:function(){return{noticeList:[],pageNum:1,pageSize:10,total:0}},computed:f({},(0,i.mapState)(["navHeight","statusbarHeight","token"])),onShow:function(){var e=this;return(0,c.default)(o.default.mark((function t(){return o.default.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.next=2,e.$onLaunched;case 2:if(e.token){t.next=4;break}return t.abrupt("return");case 4:e.pageNum=1,e.total=0,e.noticeList=[],e.getNoticeList();case 8:case"end":return t.stop()}}),t)})))()},onReachBottom:function(){this.noticeList.length<this.total&&(this.pageNum++,this.getNoticeList())},methods:{getNoticeList:function(){var e=this;return(0,c.default)(o.default.mark((function t(){var n;return o.default.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.next=2,e.$u.api.getMemberNoticePage({page:e.pageNum,capacity:e.pageSize,model:{userType:0}});case 2:n=t.sent,200===n.code&&(1===e.pageNum?e.noticeList=n.data.records||[]:e.noticeList=[].concat((0,a.default)(e.noticeList),(0,a.default)(n.data.records||[])),e.total=n.data.total||0);case 4:case"end":return t.stop()}}),t)})))()}}};t.default=l},599:function(e,t,n){"use strict";n.r(t);var r=n(600),o=n.n(r);for(var a in r)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return r[e]}))}(a);t["default"]=o.a},600:function(e,t,n){},601:function(e,t,n){"use strict";n.r(t);var r=n(602),o=n.n(r);for(var a in r)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return r[e]}))}(a);t["default"]=o.a},602:function(e,t,n){}},[[593,"common/runtime","common/vendor"]]]);
+//# sourceMappingURL=../../../../.sourcemap/mp-weixin/shop/pages/message/message.js.map
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message/message.json b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message/message.json
new file mode 100644
index 0000000..50ef28c
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message/message.json
@@ -0,0 +1,7 @@
+{
+  "navigationBarTitleText": "娑堟伅",
+  "navigationStyle": "custom",
+  "usingComponents": {
+    "custom-tabbar": "/components/custom-tabbar/custom-tabbar"
+  }
+}
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message/message.wxml b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message/message.wxml
new file mode 100644
index 0000000..2ecfef0
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message/message.wxml
@@ -0,0 +1 @@
+<view class="itinerary-page data-v-15f611e9"><view class="top-fixed data-v-15f611e9"><view class="top-gradient data-v-15f611e9"></view><view class="top-inner data-v-15f611e9"><view style="{{'height:'+(statusbarHeight+'px')+';'}}" class="data-v-15f611e9"></view><view class="header-bar data-v-15f611e9" style="{{'height:'+(navHeight+'px')+';'}}"><text class="header-title data-v-15f611e9">鎴戠殑娑堟伅</text></view></view></view><view class="content data-v-15f611e9"><block wx:for="{{noticeList}}" wx:for-item="item" wx:for-index="__i0__" wx:key="id"><view class="message-item data-v-15f611e9"><view class="message-item-image data-v-15f611e9"><block wx:if="{{item.status===0}}"><view class="message-item-image-dian data-v-15f611e9"></view></block><image src="/static/icon/xiaoxi_ic_tongzhi3@2x.png" mode="widthFix" class="data-v-15f611e9"></image></view><view class="message-item-info data-v-15f611e9"><text class="data-v-15f611e9">{{item.title}}</text><text class="data-v-15f611e9">{{item.content}}</text><text class="data-v-15f611e9">{{item.createDate}}</text></view></view></block></view><custom-tabbar vue-id="ae66a786-1" class="data-v-15f611e9" bind:__l="__l"></custom-tabbar></view>
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message/message.wxss b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message/message.wxss
new file mode 100644
index 0000000..41c0f7c
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message/message.wxss
@@ -0,0 +1,123 @@
+
+page {
+	background-color: #F8F9FB;
+}
+
+@charset "UTF-8";
+/**
+ * 杩欓噷鏄痷ni-app鍐呯疆鐨勫父鐢ㄦ牱寮忓彉閲�
+ *
+ * uni-app 瀹樻柟鎵╁睍鎻掍欢鍙婃彃浠跺競鍦猴紙https://ext.dcloud.net.cn锛変笂寰堝涓夋柟鎻掍欢鍧囦娇鐢ㄤ簡杩欎簺鏍峰紡鍙橀噺
+ * 濡傛灉浣犳槸鎻掍欢寮�鍙戣�咃紝寤鸿浣犱娇鐢╯css棰勫鐞嗭紝骞跺湪鎻掍欢浠g爜涓洿鎺ヤ娇鐢ㄨ繖浜涘彉閲忥紙鏃犻渶 import 杩欎釜鏂囦欢锛夛紝鏂逛究鐢ㄦ埛閫氳繃鎼Н鏈ㄧ殑鏂瑰紡寮�鍙戞暣浣撻鏍间竴鑷寸殑App
+ *
+ */
+/**
+ * 濡傛灉浣犳槸App寮�鍙戣�咃紙鎻掍欢浣跨敤鑰咃級锛屼綘鍙互閫氳繃淇敼杩欎簺鍙橀噺鏉ュ畾鍒惰嚜宸辩殑鎻掍欢涓婚锛屽疄鐜拌嚜瀹氫箟涓婚鍔熻兘
+ *
+ * 濡傛灉浣犵殑椤圭洰鍚屾牱浣跨敤浜唖css棰勫鐞嗭紝浣犱篃鍙互鐩存帴鍦ㄤ綘鐨� scss 浠g爜涓娇鐢ㄥ涓嬪彉閲忥紝鍚屾椂鏃犻渶 import 杩欎釜鏂囦欢
+ */
+/* uni.scss */
+/* 棰滆壊鍙橀噺 */
+/* 琛屼负鐩稿叧棰滆壊 */
+/* 鏂囧瓧鍩烘湰棰滆壊 */
+/* 鑳屾櫙棰滆壊 */
+/* 杈规棰滆壊 */
+/* 灏哄鍙橀噺 */
+/* 鏂囧瓧灏哄 */
+/* 鍥剧墖灏哄 */
+/* Border Radius */
+/* 姘村钩闂磋窛 */
+/* 鍨傜洿闂磋窛 */
+/* 閫忔槑搴� */
+/* 鏂囩珷鍦烘櫙鐩稿叧 */
+.top-fixed.data-v-15f611e9 {
+  position: -webkit-sticky;
+  position: sticky;
+  left: 0;
+  top: 0;
+  width: 100%;
+  z-index: 20;
+}
+.top-gradient.data-v-15f611e9 {
+  position: absolute;
+  left: 0;
+  top: 0;
+  width: 100%;
+  height: 100%;
+  background: linear-gradient(90deg, #1ba8fa 0%, #73e5cf 100%);
+}
+.top-inner.data-v-15f611e9 {
+  position: relative;
+  z-index: 1;
+  padding-bottom: 18rpx;
+}
+.header-bar.data-v-15f611e9 {
+  padding: 0 30rpx;
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
+  box-sizing: border-box;
+}
+.header-title.data-v-15f611e9 {
+  font-weight: 600;
+  font-size: 40rpx;
+  color: #FFFFFF;
+}
+.content.data-v-15f611e9 {
+  width: 100%;
+  padding: 20rpx 30rpx;
+  box-sizing: border-box;
+}
+.content .message-item.data-v-15f611e9 {
+  width: 100%;
+  padding: 30rpx;
+  box-sizing: border-box;
+  background: #FFFFFF;
+  border-radius: 16rpx;
+  display: flex;
+  align-items: flex-start;
+  margin-bottom: 20rpx;
+}
+.content .message-item .message-item-image.data-v-15f611e9 {
+  flex-shrink: 0;
+  width: 64rpx;
+  height: 64rpx;
+  margin-right: 20rpx;
+  position: relative;
+}
+.content .message-item .message-item-image image.data-v-15f611e9 {
+  width: 100%;
+  height: 100%;
+}
+.content .message-item .message-item-image .message-item-image-dian.data-v-15f611e9 {
+  position: absolute;
+  right: 0;
+  top: 0;
+  width: 18rpx;
+  height: 18rpx;
+  background: #FF0000;
+  border-radius: 50%;
+}
+.content .message-item .message-item-info.data-v-15f611e9 {
+  flex: 1;
+  display: flex;
+  flex-direction: column;
+}
+.content .message-item .message-item-info text.data-v-15f611e9:nth-child(1) {
+  font-weight: 500;
+  font-size: 30rpx;
+  color: #222222;
+}
+.content .message-item .message-item-info text.data-v-15f611e9:nth-child(2) {
+  font-weight: 400;
+  font-size: 26rpx;
+  color: #666666;
+  margin-top: 16rpx;
+}
+.content .message-item .message-item-info text.data-v-15f611e9:nth-child(3) {
+  font-weight: 400;
+  font-size: 24rpx;
+  color: #999999;
+  margin-top: 16rpx;
+}
+
diff --git "a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message\140/message.js" "b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message\140/message.js"
new file mode 100644
index 0000000..6420b12
--- /dev/null
+++ "b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message\140/message.js"
@@ -0,0 +1 @@
+Component({})
\ No newline at end of file
diff --git "a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message\140/message.json" "b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message\140/message.json"
new file mode 100644
index 0000000..6f85c59
--- /dev/null
+++ "b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message\140/message.json"
@@ -0,0 +1,4 @@
+{
+  "navigationBarTitleText": "娑堟伅",
+  "usingComponents": {}
+}
\ No newline at end of file
diff --git "a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message\140/message.wxml" "b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message\140/message.wxml"
new file mode 100644
index 0000000..e3bdf05
--- /dev/null
+++ "b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message\140/message.wxml"
@@ -0,0 +1,2 @@
+<!--shop/pages/message`/message.wxml-->
+<text>shop/pages/message`/message.wxml</text>
\ No newline at end of file
diff --git "a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message\140/message.wxss" "b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message\140/message.wxss"
new file mode 100644
index 0000000..d0fcfc2
--- /dev/null
+++ "b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/message\140/message.wxss"
@@ -0,0 +1 @@
+/* shop/pages/message`/message.wxss */
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/mine/mine.wxml b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/mine/mine.wxml
index 32ddc1c..74b0e36 100644
--- a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/mine/mine.wxml
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/mine/mine.wxml
@@ -1 +1 @@
-<view class="shop-mine-page data-v-567495f9"><view style="{{'height:'+(statusbarHeight+'px')+';'}}" class="data-v-567495f9"></view><view class="header data-v-567495f9"><text class="title data-v-567495f9">鎴戠殑</text></view><view class="content data-v-567495f9"><text class="data-v-567495f9">闂ㄥ簵鎴戠殑椤甸潰</text></view><custom-tabbar vue-id="781eaa2d-1" class="data-v-567495f9" bind:__l="__l"></custom-tabbar></view>
\ No newline at end of file
+<view class="shop-mine-page data-v-567495f9"><view class="nav-bar data-v-567495f9" style="{{'padding-top:'+(statusbarHeight+'px')+';'}}"><view class="nav-content data-v-567495f9"><text class="nav-title data-v-567495f9">鎴戠殑</text></view></view><view class="page-content data-v-567495f9"><text class="data-v-567495f9">闂ㄥ簵鎴戠殑椤甸潰</text></view><custom-tabbar vue-id="781eaa2d-1" class="data-v-567495f9" bind:__l="__l"></custom-tabbar></view>
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/mine/mine.wxss b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/mine/mine.wxss
index 502dec6..376fa70 100644
--- a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/mine/mine.wxss
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/mine/mine.wxss
@@ -29,14 +29,27 @@
   min-height: 100vh;
   background: #f8f8f8;
 }
-.header.data-v-567495f9 {
-  padding: 30rpx;
+.nav-bar.data-v-567495f9 {
+  position: fixed;
+  top: 0;
+  left: 0;
+  right: 0;
+  background: #ffffff;
+  z-index: 100;
 }
-.header .title.data-v-567495f9 {
-  font-size: 40rpx;
+.nav-content.data-v-567495f9 {
+  height: 44px;
+  display: flex;
+  align-items: center;
+  justify-content: center;
+}
+.nav-title.data-v-567495f9 {
+  font-size: 34rpx;
   font-weight: 600;
+  color: #333333;
 }
-.content.data-v-567495f9 {
-  padding: 30rpx;
+.page-content.data-v-567495f9 {
+  padding-top: calc(44px + 44px);
+  min-height: 100vh;
 }
 
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/qualification/qualification.js b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/qualification/qualification.js
new file mode 100644
index 0000000..ae1ce0e
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/qualification/qualification.js
@@ -0,0 +1,2 @@
+require('../../common/vendor.js');(global["webpackJsonp"]=global["webpackJsonp"]||[]).push([["shop/pages/qualification/qualification"],{243:function(n,e,t){"use strict";(function(n,e){var r=t(4);t(30);r(t(25));var u=r(t(244));n.__webpack_require_UNI_MP_PLUGIN__=t,e(u.default)}).call(this,t(1)["default"],t(2)["createPage"])},244:function(n,e,t){"use strict";t.r(e);var r=t(245),u=t(247);for(var i in u)["default"].indexOf(i)<0&&function(n){t.d(e,n,(function(){return u[n]}))}(i);t(249);var c,a=t(41),o=Object(a["default"])(u["default"],r["render"],r["staticRenderFns"],!1,null,"57d96ab9",null,!1,r["components"],c);o.options.__file="shop/pages/qualification/qualification.vue",e["default"]=o.exports},245:function(n,e,t){"use strict";t.r(e);var r=t(246);t.d(e,"render",(function(){return r["render"]})),t.d(e,"staticRenderFns",(function(){return r["staticRenderFns"]})),t.d(e,"recyclableRender",(function(){return r["recyclableRender"]})),t.d(e,"components",(function(){return r["components"]}))},246:function(n,e,t){"use strict";var r;t.r(e),t.d(e,"render",(function(){return u})),t.d(e,"staticRenderFns",(function(){return c})),t.d(e,"recyclableRender",(function(){return i})),t.d(e,"components",(function(){return r}));var u=function(){var n=this,e=n.$createElement;n._self._c},i=!1,c=[];u._withStripped=!0},247:function(n,e,t){"use strict";t.r(e);var r=t(248),u=t.n(r);for(var i in r)["default"].indexOf(i)<0&&function(n){t.d(e,n,(function(){return r[n]}))}(i);e["default"]=u.a},248:function(n,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var r={data:function(){return{currentType:"personal"}}};e.default=r},249:function(n,e,t){"use strict";t.r(e);var r=t(250),u=t.n(r);for(var i in r)["default"].indexOf(i)<0&&function(n){t.d(e,n,(function(){return r[n]}))}(i);e["default"]=u.a},250:function(n,e,t){}},[[243,"common/runtime","common/vendor"]]]);
+//# sourceMappingURL=../../../../.sourcemap/mp-weixin/shop/pages/qualification/qualification.js.map
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/qualification/qualification.json b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/qualification/qualification.json
new file mode 100644
index 0000000..0eb5650
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/qualification/qualification.json
@@ -0,0 +1,4 @@
+{
+  "navigationBarTitleText": "鎴戠殑璧勮川",
+  "usingComponents": {}
+}
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/qualification/qualification.wxml b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/qualification/qualification.wxml
new file mode 100644
index 0000000..c8eeeff
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/qualification/qualification.wxml
@@ -0,0 +1 @@
+<view class="qualification-page data-v-57d96ab9"><view class="card base-card data-v-57d96ab9"><view class="store-row data-v-57d96ab9"><image class="store-cover data-v-57d96ab9" src mode="aspectFill"></image><view class="store-info data-v-57d96ab9"><text class="store-name data-v-57d96ab9">涓搧蹇繍鍗楃珯鏃楄埌搴�</text><text class="store-line data-v-57d96ab9">鑱旂郴浜猴細鑻忕湢鐪�</text><text class="store-line data-v-57d96ab9">鑱旂郴鐢佃瘽锛�18155114565</text></view></view><view class="detail-block data-v-57d96ab9"><view class="info-row data-v-57d96ab9"><text class="info-label data-v-57d96ab9">鐪佸競鍖猴細</text><text class="info-value data-v-57d96ab9">瀹夊窘鐪佸悎鑲ュ競缁忔祹鎶�鏈紑鍙戝尯</text></view><view class="info-row data-v-57d96ab9"><text class="info-label data-v-57d96ab9">闂ㄥ簵鍦板潃锛�</text><text class="info-value data-v-57d96ab9">鑾茶姳璺�200鍙疯幉鑺变骇涓氬洯F鏍�401</text></view><block wx:if="{{currentType==='personal'}}"><view class="info-row data-v-57d96ab9"><text class="info-label data-v-57d96ab9">韬唤璇佸彿锛�</text><text class="info-value data-v-57d96ab9">3401823742786473267</text></view><view class="material-row top-align data-v-57d96ab9"><text class="info-label data-v-57d96ab9">韬唤璇侊細</text><view class="material-list double-list data-v-57d96ab9"><image class="material-image id-card data-v-57d96ab9" src mode="aspectFill"></image><image class="material-image id-card data-v-57d96ab9" src mode="aspectFill"></image></view></view></block><block wx:else><view class="material-row top-align license-row data-v-57d96ab9"><text class="info-label data-v-57d96ab9">钀ヤ笟鎵х収锛�</text><view class="material-list single-list data-v-57d96ab9"><image class="material-image license-image data-v-57d96ab9" src mode="aspectFill"></image></view></view></block></view></view><view style="width:100%;height:20rpx;background-color:#F7F7F7;" class="data-v-57d96ab9"></view><block wx:if="{{currentType==='personal'}}"><view class="card subject-card data-v-57d96ab9"><text class="section-title data-v-57d96ab9">涓讳綋璧勮川</text><view class="material-group data-v-57d96ab9"><view class="material-row top-align data-v-57d96ab9"><text class="info-label data-v-57d96ab9">鏈夋晥鍔冲姩鍚堝悓锛�</text><view class="material-list triple-list data-v-57d96ab9"><image class="material-image contract-image data-v-57d96ab9" src mode="aspectFill"></image><image class="material-image contract-image data-v-57d96ab9" src mode="aspectFill"></image><image class="material-image contract-image data-v-57d96ab9" src mode="aspectFill"></image></view></view><view class="material-row top-align proof-row data-v-57d96ab9"><text class="info-label data-v-57d96ab9">绀句繚缂寸撼璇佹槑锛�</text><view class="material-list single-list data-v-57d96ab9"><image class="material-image proof-image data-v-57d96ab9" src mode="aspectFill"></image></view></view></view></view></block><block wx:else><view class="card subject-card legal-card data-v-57d96ab9"><text class="section-title data-v-57d96ab9">娉曚汉淇℃伅</text><view class="detail-block legal-block data-v-57d96ab9"><view class="info-row data-v-57d96ab9"><text class="info-label data-v-57d96ab9">娉曚汉濮撳悕锛�</text><text class="info-value data-v-57d96ab9">寮犲厜瀹�</text></view><view class="info-row data-v-57d96ab9"><text class="info-label data-v-57d96ab9">娉曚汉鐢佃瘽锛�</text><text class="info-value data-v-57d96ab9">181554462589</text></view><view class="info-row data-v-57d96ab9"><text class="info-label data-v-57d96ab9">韬唤璇佸彿锛�</text><text class="info-value data-v-57d96ab9">3401823742786473267</text></view><view class="material-row top-align data-v-57d96ab9"><text class="info-label data-v-57d96ab9">韬唤璇侊細</text><view class="material-list double-list data-v-57d96ab9"><image class="material-image id-card data-v-57d96ab9" src mode="aspectFill"></image><image class="material-image id-card data-v-57d96ab9" src mode="aspectFill"></image></view></view></view></view></block></view>
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/qualification/qualification.wxss b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/qualification/qualification.wxss
new file mode 100644
index 0000000..df05753
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/qualification/qualification.wxss
@@ -0,0 +1,163 @@
+@charset "UTF-8";
+/**
+ * 杩欓噷鏄痷ni-app鍐呯疆鐨勫父鐢ㄦ牱寮忓彉閲�
+ *
+ * uni-app 瀹樻柟鎵╁睍鎻掍欢鍙婃彃浠跺競鍦猴紙https://ext.dcloud.net.cn锛変笂寰堝涓夋柟鎻掍欢鍧囦娇鐢ㄤ簡杩欎簺鏍峰紡鍙橀噺
+ * 濡傛灉浣犳槸鎻掍欢寮�鍙戣�咃紝寤鸿浣犱娇鐢╯css棰勫鐞嗭紝骞跺湪鎻掍欢浠g爜涓洿鎺ヤ娇鐢ㄨ繖浜涘彉閲忥紙鏃犻渶 import 杩欎釜鏂囦欢锛夛紝鏂逛究鐢ㄦ埛閫氳繃鎼Н鏈ㄧ殑鏂瑰紡寮�鍙戞暣浣撻鏍间竴鑷寸殑App
+ *
+ */
+/**
+ * 濡傛灉浣犳槸App寮�鍙戣�咃紙鎻掍欢浣跨敤鑰咃級锛屼綘鍙互閫氳繃淇敼杩欎簺鍙橀噺鏉ュ畾鍒惰嚜宸辩殑鎻掍欢涓婚锛屽疄鐜拌嚜瀹氫箟涓婚鍔熻兘
+ *
+ * 濡傛灉浣犵殑椤圭洰鍚屾牱浣跨敤浜唖css棰勫鐞嗭紝浣犱篃鍙互鐩存帴鍦ㄤ綘鐨� scss 浠g爜涓娇鐢ㄥ涓嬪彉閲忥紝鍚屾椂鏃犻渶 import 杩欎釜鏂囦欢
+ */
+/* uni.scss */
+/* 棰滆壊鍙橀噺 */
+/* 琛屼负鐩稿叧棰滆壊 */
+/* 鏂囧瓧鍩烘湰棰滆壊 */
+/* 鑳屾櫙棰滆壊 */
+/* 杈规棰滆壊 */
+/* 灏哄鍙橀噺 */
+/* 鏂囧瓧灏哄 */
+/* 鍥剧墖灏哄 */
+/* Border Radius */
+/* 姘村钩闂磋窛 */
+/* 鍨傜洿闂磋窛 */
+/* 閫忔槑搴� */
+/* 鏂囩珷鍦烘櫙鐩稿叧 */
+.type-tabs.data-v-57d96ab9 {
+  margin-bottom: 18rpx;
+  display: flex;
+  gap: 12rpx;
+}
+.tab-item.data-v-57d96ab9 {
+  min-width: 140rpx;
+  height: 56rpx;
+  padding: 0 22rpx;
+  border-radius: 28rpx;
+  background: #ffffff;
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  font-size: 24rpx;
+  color: #6b7280;
+  box-sizing: border-box;
+}
+.tab-item.active.data-v-57d96ab9 {
+  background: #ecf8ff;
+  color: #18aaf7;
+  box-shadow: inset 0 0 0 2rpx #18aaf7;
+}
+.card.data-v-57d96ab9 {
+  background: #ffffff;
+  padding: 30rpx;
+  box-sizing: border-box;
+}
+.base-card.data-v-57d96ab9 {
+  padding-bottom: 16rpx;
+}
+.legal-card.data-v-57d96ab9 {
+  padding-top: 18rpx;
+}
+.store-row.data-v-57d96ab9 {
+  display: flex;
+  align-items: center;
+  padding-bottom: 30rpx;
+  border-bottom: 1rpx solid #f0f1f4;
+}
+.store-cover.data-v-57d96ab9 {
+  width: 144rpx;
+  height: 144rpx;
+  border-radius: 8rpx;
+  background: #e8edf5;
+  flex-shrink: 0;
+}
+.store-info.data-v-57d96ab9 {
+  margin-left: 24rpx;
+  min-width: 0;
+}
+.store-name.data-v-57d96ab9 {
+  display: block;
+  font-weight: 500;
+  font-size: 32rpx;
+  color: #111111;
+}
+.store-line.data-v-57d96ab9 {
+  display: block;
+  margin-top: 10rpx;
+  font-weight: 400;
+  font-size: 26rpx;
+  color: #777777;
+}
+.detail-block.data-v-57d96ab9,
+.material-group.data-v-57d96ab9 {
+  padding-top: 30rpx;
+}
+.legal-block.data-v-57d96ab9 {
+  padding-top: 6rpx;
+}
+.info-row.data-v-57d96ab9,
+.material-row.data-v-57d96ab9 {
+  display: flex;
+  align-items: center;
+  margin-bottom: 20rpx;
+}
+.material-row.top-align.data-v-57d96ab9 {
+  align-items: flex-start;
+}
+.info-label.data-v-57d96ab9 {
+  width: 190rpx;
+  flex-shrink: 0;
+  font-weight: 400;
+  font-size: 26rpx;
+  color: #777777;
+}
+.info-value.data-v-57d96ab9 {
+  flex: 1;
+  font-weight: 400;
+  font-size: 26rpx;
+  color: #333333;
+  word-break: break-all;
+}
+.section-title.data-v-57d96ab9 {
+  display: block;
+  margin-bottom: 20rpx;
+  font-weight: 600;
+  font-size: 32rpx;
+  color: #111111;
+}
+.material-list.data-v-57d96ab9 {
+  flex: 1;
+  display: flex;
+  align-items: flex-start;
+  flex-wrap: wrap;
+  gap: 14rpx;
+}
+.material-image.data-v-57d96ab9 {
+  background: #eef2f7;
+  border-radius: 10rpx;
+  flex-shrink: 0;
+}
+.id-card.data-v-57d96ab9 {
+  width: 200rpx;
+  height: 150rpx;
+}
+.contract-image.data-v-57d96ab9 {
+  width: 144rpx;
+  height: 144rpx;
+}
+.proof-image.data-v-57d96ab9 {
+  width: 144rpx;
+  height: 144rpx;
+}
+.license-image.data-v-57d96ab9 {
+  width: 220rpx;
+  height: 156rpx;
+}
+.proof-row.data-v-57d96ab9 {
+  margin-top: 4rpx;
+}
+.license-row.data-v-57d96ab9 {
+  margin-bottom: 8rpx;
+}
+
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-home/store-home.wxml b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-home/store-home.wxml
index a7411e0..ac3b3b7 100644
--- a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-home/store-home.wxml
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-home/store-home.wxml
@@ -1 +1 @@
-<view class="container data-v-edb8ba0e"><view class="gradient-background data-v-edb8ba0e"><view class="custom-nav data-v-edb8ba0e"><view style="{{'height:'+(statusbarHeight+'px')+';'}}" class="data-v-edb8ba0e"></view><view class="nav-content data-v-edb8ba0e" style="{{'height:'+(navHeight+'px')+';'}}"><text class="nav-title data-v-edb8ba0e">涓搧蹇繍鍗楃珯鏃楄埌搴�</text></view></view><view class="stats-section data-v-edb8ba0e" style="{{'background-image:'+('url('+bgImg+')')+';'}}"><view class="stats-tabs data-v-edb8ba0e"><text class="tab-item active data-v-edb8ba0e">浠婃棩</text><text class="tab-item data-v-edb8ba0e">鏈湀</text><text class="tab-item data-v-edb8ba0e">涓婃湀</text><text class="tab-item right data-v-edb8ba0e">鍦ㄥ簱璁㈠崟: 10</text></view><view class="stats-cards data-v-edb8ba0e"><view class="stat-card data-v-edb8ba0e"><text class="stat-label data-v-edb8ba0e">閿�鍞(鍏�)</text><text class="stat-value data-v-edb8ba0e">12,000.00</text></view><view class="stat-card data-v-edb8ba0e"><text class="stat-label data-v-edb8ba0e">缁撶畻鍒╂鼎(鍏�)</text><text class="stat-value data-v-edb8ba0e">1,200.00</text></view><view class="stat-card data-v-edb8ba0e"><text class="stat-label data-v-edb8ba0e">璁㈠崟鏁�</text><text class="stat-value data-v-edb8ba0e">23</text></view></view></view></view><view class="function-buttons data-v-edb8ba0e"><view class="func-btn data-v-edb8ba0e"><image class="func-icon data-v-edb8ba0e" src="/static/icon/ic_zitihexiao@2x.png"></image><text class="func-text data-v-edb8ba0e">闂ㄥ簵鍑哄叆搴�</text></view><view class="func-btn data-v-edb8ba0e"><image class="func-icon data-v-edb8ba0e" src="/static/icon/ic_dingdanguanli@2x.png"></image><text class="func-text data-v-edb8ba0e">璁㈠崟绠$悊</text></view><view class="func-btn data-v-edb8ba0e"><image class="func-icon data-v-edb8ba0e" src="/static/icon/ic_wodezizhi@2x.png"></image><text class="func-text data-v-edb8ba0e">闂ㄥ簵淇℃伅</text></view><view class="func-btn data-v-edb8ba0e"><image class="func-icon data-v-edb8ba0e" src="/static/icon/ic_wodezizhi@2x.png"></image><text class="func-text data-v-edb8ba0e">闂ㄥ簵璧勮川</text></view></view><view class="orders-section data-v-edb8ba0e"><view class="order-item data-v-edb8ba0e"><view class="order-header data-v-edb8ba0e"><view class="order-tag data-v-edb8ba0e">灏卞湴瀵勫瓨</view><text class="order-user data-v-edb8ba0e">鏉庢槑 181****1898</text><text class="order-status data-v-edb8ba0e">寰呮牳楠�</text></view><view class="order-items data-v-edb8ba0e"><view class="order-product data-v-edb8ba0e"><view class="product-info data-v-edb8ba0e"><text class="product-name data-v-edb8ba0e">澶т欢琛屾潕绠�</text><text class="product-spec data-v-edb8ba0e">24-28瀵�</text></view><view class="product-price-count data-v-edb8ba0e"><text class="product-price data-v-edb8ba0e">楼35</text><text class="product-count data-v-edb8ba0e">x1</text></view></view><view class="order-product data-v-edb8ba0e"><view class="product-info data-v-edb8ba0e"><text class="product-name data-v-edb8ba0e">涓欢琛屾潕绠�</text><text class="product-spec data-v-edb8ba0e">24-28瀵�</text></view><view class="product-price-count data-v-edb8ba0e"><text class="product-price data-v-edb8ba0e">楼35</text><text class="product-count data-v-edb8ba0e">x1</text></view></view></view><view class="order-footer data-v-edb8ba0e"><text class="total-price data-v-edb8ba0e">瀹炰粯娆�: 楼80.00</text><view class="order-buttons data-v-edb8ba0e"><button class="btn btn-secondary data-v-edb8ba0e">鑱旂郴瀹㈡埛</button><button class="btn btn-primary data-v-edb8ba0e">鎵爜鏍搁攢</button></view></view><text class="order-note data-v-edb8ba0e">璁㈠崟澶囨敞: 13:30鏉ュ瘎瀛�</text></view><view class="order-item data-v-edb8ba0e"><view class="order-header data-v-edb8ba0e"><view class="order-tag data-v-edb8ba0e">灏卞湴瀵勫瓨</view><text class="order-user data-v-edb8ba0e">寮犳澃 151****7678</text><text class="order-status data-v-edb8ba0e">寰呭彇浠�</text></view><view class="order-items data-v-edb8ba0e"><view class="order-product data-v-edb8ba0e"><text class="product-name data-v-edb8ba0e">澶т欢琛屾潕绠�</text><text class="product-spec data-v-edb8ba0e">24-28瀵�</text><text class="product-price data-v-edb8ba0e">楼35</text><text class="product-count data-v-edb8ba0e">x1</text></view><view class="order-product data-v-edb8ba0e"><text class="product-name data-v-edb8ba0e">涓欢琛屾潕绠�</text><text class="product-spec data-v-edb8ba0e">24-28瀵�</text><text class="product-price data-v-edb8ba0e">楼35</text><text class="product-count data-v-edb8ba0e">x1</text></view></view><view class="order-footer data-v-edb8ba0e"><text class="total-price data-v-edb8ba0e">瀹炰粯娆�: 楼70.00</text><view class="order-buttons data-v-edb8ba0e"><button class="btn btn-secondary data-v-edb8ba0e">鑱旂郴瀹㈡埛</button><button class="btn btn-primary data-v-edb8ba0e">鎵爜鏍搁攢</button></view></view><text class="order-note data-v-edb8ba0e">璁㈠崟澶囨敞: -</text></view><view class="order-item data-v-edb8ba0e"><view class="order-header data-v-edb8ba0e"><view class="order-tag data-v-edb8ba0e">灏卞湴瀵勫瓨</view><text class="order-user data-v-edb8ba0e">寮犳澃 151****7678</text><text class="order-status data-v-edb8ba0e">寰呭彇浠�</text></view><view class="order-items data-v-edb8ba0e"><view class="order-product data-v-edb8ba0e"><text class="product-name data-v-edb8ba0e">澶т欢琛屾潕绠�</text><text class="product-spec data-v-edb8ba0e">24-28瀵�</text><text class="product-price data-v-edb8ba0e">楼35</text><text class="product-count data-v-edb8ba0e">x1</text></view><view class="order-product data-v-edb8ba0e"><text class="product-name data-v-edb8ba0e">涓欢琛屾潕绠�</text><text class="product-spec data-v-edb8ba0e">24-28瀵�</text><text class="product-price data-v-edb8ba0e">楼35</text><text class="product-count data-v-edb8ba0e">x1</text></view></view><view class="order-footer data-v-edb8ba0e"><text class="total-price data-v-edb8ba0e">瀹炰粯娆�: 楼70.00</text><view class="order-buttons data-v-edb8ba0e"><button class="btn btn-secondary data-v-edb8ba0e">鑱旂郴瀹㈡埛</button><button class="btn btn-primary data-v-edb8ba0e">鎵爜鏍搁攢</button></view></view><text class="order-note data-v-edb8ba0e">璁㈠崟澶囨敞: -</text></view></view></view>
\ No newline at end of file
+<view class="container data-v-edb8ba0e"><view class="gradient-background data-v-edb8ba0e"><view class="custom-nav data-v-edb8ba0e"><view style="{{'height:'+(statusbarHeight+'px')+';'}}" class="data-v-edb8ba0e"></view><view class="nav-content data-v-edb8ba0e" style="{{'height:'+(navHeight+'px')+';'}}"><image class="nav-icon data-v-edb8ba0e" src="/static/icon/ic_home@2x.png"></image><text class="nav-title data-v-edb8ba0e">涓搧蹇繍鍗楃珯鏃楄埌搴�</text></view></view><view style="{{'height:'+(statusbarHeight+navHeight+'px')+';'}}" class="data-v-edb8ba0e"></view><view class="stats-section data-v-edb8ba0e" style="{{'background-image:'+('url('+bgImg+')')+';'}}"><view class="stats-tabs data-v-edb8ba0e"><view class="stats-tabs-left data-v-edb8ba0e"><text class="tab-item active data-v-edb8ba0e">浠婃棩</text><text class="tab-item data-v-edb8ba0e">鏈湀</text><text class="tab-item data-v-edb8ba0e">涓婃湀</text></view><text class="tab-item right data-v-edb8ba0e">鍦ㄥ簱璁㈠崟: 10</text></view><view class="stats-cards data-v-edb8ba0e"><view class="stat-card data-v-edb8ba0e"><view class="stat-label data-v-edb8ba0e"><text class="data-v-edb8ba0e">閿�鍞(鍏�)</text><image class="stat-icon data-v-edb8ba0e" src="/static/icon/ic_visible@2x.png"></image></view><text class="stat-value data-v-edb8ba0e">12,000.00</text></view><view class="stat-card data-v-edb8ba0e"><view class="stat-label data-v-edb8ba0e"><text class="data-v-edb8ba0e">缁撶畻鍒╂鼎(鍏�)</text></view><text class="stat-value data-v-edb8ba0e">1,200.00</text></view><view class="stat-card data-v-edb8ba0e"><view class="stat-label data-v-edb8ba0e"><text class="data-v-edb8ba0e">璁㈠崟鏁�</text></view><text class="stat-value data-v-edb8ba0e">23</text></view></view></view></view><view class="function-buttons data-v-edb8ba0e"><view class="func-btn data-v-edb8ba0e"><image class="func-icon data-v-edb8ba0e" src="/static/icon/ic_zitihexiao@2x.png"></image><text class="func-text data-v-edb8ba0e">闂ㄥ簵鍑哄叆搴�</text></view><view class="func-btn data-v-edb8ba0e"><image class="func-icon data-v-edb8ba0e" src="/static/icon/ic_dingdanguanli@2x.png"></image><text class="func-text data-v-edb8ba0e">璁㈠崟绠$悊</text></view><view data-event-opts="{{[['tap',[['goToStoreInfo',['$event']]]]]}}" class="func-btn data-v-edb8ba0e" bindtap="__e"><image class="func-icon data-v-edb8ba0e" src="/static/icon/ic_wodezizhi@2x.png"></image><text class="func-text data-v-edb8ba0e">闂ㄥ簵淇℃伅</text></view><view data-event-opts="{{[['tap',[['goToQualification',['$event']]]]]}}" class="func-btn data-v-edb8ba0e" bindtap="__e"><image class="func-icon data-v-edb8ba0e" src="/static/icon/ic_wodezizhi@2x.png"></image><text class="func-text data-v-edb8ba0e">闂ㄥ簵璧勮川</text></view></view><text class="section-title data-v-edb8ba0e">寰呭鐞嗚鍗�(2)</text><view class="orders-section data-v-edb8ba0e"><view class="order-item data-v-edb8ba0e"><view class="order-header data-v-edb8ba0e"><view style="display:flex;align-items:center;" class="data-v-edb8ba0e"><view class="order-tag data-v-edb8ba0e">灏卞湴瀵勫瓨</view><text class="order-user data-v-edb8ba0e">鏉庢槑 181****1898</text></view><text class="order-status data-v-edb8ba0e">寰呮牳楠�</text></view><view class="order-items data-v-edb8ba0e"><view class="order-product data-v-edb8ba0e"><view class="product-info data-v-edb8ba0e"><text class="product-name data-v-edb8ba0e">澶т欢琛屾潕绠�</text><text class="product-spec data-v-edb8ba0e">24-28瀵�</text></view><view class="product-price-count data-v-edb8ba0e"><text class="product-price data-v-edb8ba0e">楼35</text><text class="product-count data-v-edb8ba0e">x1</text></view></view><view class="order-product data-v-edb8ba0e"><view class="product-info data-v-edb8ba0e"><text class="product-name data-v-edb8ba0e">涓欢琛屾潕绠�</text><text class="product-spec data-v-edb8ba0e">24-28瀵�</text></view><view class="product-price-count data-v-edb8ba0e"><text class="product-price data-v-edb8ba0e">楼35</text><text class="product-count data-v-edb8ba0e">x1</text></view></view></view><view class="order-footer data-v-edb8ba0e"><text class="total-price data-v-edb8ba0e"><text class="data-v-edb8ba0e">瀹炰粯娆�: </text><text class="data-v-edb8ba0e">楼80.00</text></text><view class="order-buttons data-v-edb8ba0e"><button class="btn secondary data-v-edb8ba0e">鑱旂郴瀹㈡埛</button><button class="btn primary data-v-edb8ba0e">鎵爜鏍搁攢</button></view></view><view class="order-note data-v-edb8ba0e">璁㈠崟澶囨敞: 13:30鏉ュ瘎瀛�</view></view></view><custom-tabbar vue-id="c95d85a6-1" class="data-v-edb8ba0e" bind:__l="__l"></custom-tabbar></view>
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-home/store-home.wxss b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-home/store-home.wxss
index c0bd4d2..075c5d7 100644
--- a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-home/store-home.wxss
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-home/store-home.wxss
@@ -31,6 +31,9 @@
 }
 /* 娓愬彉鑳屾櫙瀹瑰櫒 */
 .gradient-background.data-v-edb8ba0e {
+  padding: 0 30rpx;
+  box-sizing: border-box;
+  width: 100%;
   background: #C8F3FF;
   color: #1a1a1a;
   position: relative;
@@ -47,12 +50,23 @@
 }
 /* 鑷畾涔夊鑸爮 */
 .custom-nav.data-v-edb8ba0e {
+  width: 100%;
   color: #1a1a1a;
+  background-color: #C8F3FF;
+  position: fixed;
+  top: 0;
+  left: 0;
+  z-index: 100;
 }
 .nav-content.data-v-edb8ba0e {
   display: flex;
   align-items: center;
   padding: 0 20rpx;
+}
+.nav-icon.data-v-edb8ba0e {
+  width: 64rpx;
+  height: 64rpx;
+  margin-right: 14rpx;
 }
 .nav-title.data-v-edb8ba0e {
   font-size: 32rpx;
@@ -61,8 +75,13 @@
 .stats-section.data-v-edb8ba0e {
   height: 256rpx;
   width: 100%;
+  padding: 30rpx;
+  box-sizing: border-box;
   background-repeat: no-repeat;
   background-size: 100% 100%;
+  margin-top: 20rpx;
+  position: relative;
+  z-index: 99;
 }
 .stats-tabs.data-v-edb8ba0e {
   display: flex;
@@ -72,43 +91,69 @@
   position: relative;
   z-index: 1;
 }
+.stats-tabs-left.data-v-edb8ba0e {
+  width: 43%;
+  display: flex;
+  justify-content: space-between;
+  align-items: center;
+}
 .tab-item.data-v-edb8ba0e {
   font-size: 28rpx;
-  color: #91d5ff;
+  color: rgba(255, 255, 255, 0.8);
 }
 .tab-item.active.data-v-edb8ba0e {
+  font-size: 32rpx;
   color: white;
-  font-weight: bold;
+  font-weight: 600;
 }
 .tab-item.right.data-v-edb8ba0e {
   color: white;
 }
 .stats-cards.data-v-edb8ba0e {
+  width: 100%;
+  height: 132rpx;
   display: flex;
   justify-content: space-between;
   position: relative;
   z-index: 1;
+  padding-top: 22rpx;
+  box-sizing: border-box;
+  border-top: 1rpx solid rgba(255, 255, 255, 0.09);
 }
 .stat-card.data-v-edb8ba0e {
   flex: 1;
-  text-align: center;
+  text-align: left;
+}
+.stat-card.data-v-edb8ba0e:nth-child(1) {
+  flex: 2.3;
+}
+.stat-card.data-v-edb8ba0e:nth-child(2) {
+  flex: 2;
 }
 .stat-label.data-v-edb8ba0e {
-  display: block;
+  display: flex;
+  height: 40rpx;
+}
+.stat-label text.data-v-edb8ba0e {
   font-size: 24rpx;
-  color: #91d5ff;
-  margin-bottom: 10rpx;
+  font-weight: 400;
+  color: rgba(255, 255, 255, 0.7);
+}
+.stat-label .stat-icon.data-v-edb8ba0e {
+  width: 40rpx;
+  height: 40rpx;
+  margin-left: 10rpx;
 }
 .stat-value.data-v-edb8ba0e {
-  display: block;
-  font-size: 36rpx;
-  font-weight: bold;
-  color: white;
+  font-weight: 600;
+  font-size: 44rpx;
+  color: #FFFFFF;
+  margin-top: 14rpx;
 }
 .function-buttons.data-v-edb8ba0e {
   background-color: white;
-  margin: 0 20rpx 20rpx;
-  border-radius: 12rpx;
+  margin: 30rpx 30rpx 40rpx 30rpx;
+  border-radius: 16rpx;
   padding: 30rpx;
   display: flex;
   justify-content: space-between;
@@ -120,90 +165,106 @@
   width: 120rpx;
 }
 .func-icon.data-v-edb8ba0e {
-  width: 80rpx;
-  height: 80rpx;
-  margin-bottom: 10rpx;
+  width: 88rpx;
+  height: 88rpx;
+  margin-bottom: 16rpx;
 }
 .func-text.data-v-edb8ba0e {
-  font-size: 24rpx;
-  color: #666;
+  font-weight: 400;
+  font-size: 26rpx;
+  color: #333333;
+  white-space: nowrap;
 }
 .orders-section.data-v-edb8ba0e {
-  background-color: white;
-  margin: 0 20rpx 20rpx;
-  border-radius: 12rpx;
-  padding: 20rpx;
+  margin: 30rpx;
 }
 .section-title.data-v-edb8ba0e {
+  width: 100%;
+  font-weight: 600;
   font-size: 32rpx;
-  font-weight: bold;
-  color: #333;
-  margin-bottom: 20rpx;
-  display: block;
+  color: #111111;
+  padding: 0 30rpx;
+  box-sizing: border-box;
 }
 .order-item.data-v-edb8ba0e {
-  border-bottom: 1rpx solid #eee;
-  padding: 20rpx 0;
+  background: #FFFFFF;
+  border-radius: 16rpx;
+  padding: 30rpx;
+  box-sizing: border-box;
+  margin-bottom: 20rpx;
 }
 .order-item.data-v-edb8ba0e:last-child {
-  border-bottom: none;
+  margin-bottom: 0;
 }
 .order-header.data-v-edb8ba0e {
   display: flex;
   justify-content: space-between;
   align-items: center;
-  margin-bottom: 20rpx;
+  margin-bottom: 28rpx;
   flex-wrap: wrap;
 }
 .order-tag.data-v-edb8ba0e {
-  background-color: #52c41a;
+  background-color: #10B2FA;
   color: white;
-  padding: 8rpx 16rpx;
-  border-radius: 20rpx;
-  font-size: 24rpx;
+  width: 104rpx;
+  height: 40rpx;
+  line-height: 40rpx;
+  font-weight: 400;
+  font-size: 22rpx;
+  color: #FFFFFF;
+  text-align: center;
+  background: #10B2FA;
+  border-radius: 8rpx;
+  margin-right: 20rpx;
 }
 .order-user.data-v-edb8ba0e {
+  font-weight: 400;
   font-size: 28rpx;
-  color: #333;
+  color: #333333;
 }
 .order-status.data-v-edb8ba0e {
-  font-size: 28rpx;
-  color: #ff4d4f;
+  font-weight: 400;
+  font-size: 26rpx;
+  color: #FF0020;
 }
 .order-product.data-v-edb8ba0e {
   display: flex;
   justify-content: space-between;
   align-items: flex-start;
-  margin-bottom: 30rpx;
+  margin-bottom: 26rpx;
 }
 .product-info.data-v-edb8ba0e {
   flex: 3;
+  display: flex;
+  flex-direction: column;
 }
 .product-name.data-v-edb8ba0e {
+  font-weight: 600;
   font-size: 28rpx;
-  color: #333;
-  display: block;
+  color: #333333;
 }
 .product-spec.data-v-edb8ba0e {
+  font-weight: 400;
   font-size: 24rpx;
-  color: #999;
-  display: block;
-  margin-top: 5rpx;
+  color: #8C939F;
+  margin-top: 12rpx;
 }
 .product-price-count.data-v-edb8ba0e {
   flex: 1;
-  text-align: right;
+  display: flex;
+  flex-direction: column;
+  align-items: flex-end;
 }
 .product-price.data-v-edb8ba0e {
-  font-size: 28rpx;
-  color: #ff4d4f;
-  display: block;
+  font-weight: 400;
+  font-size: 30rpx;
+  color: #333333;
 }
 .product-count.data-v-edb8ba0e {
+  font-weight: 400;
   font-size: 24rpx;
-  color: #999;
-  display: block;
-  margin-top: 5rpx;
+  color: #8C939F;
+  margin-top: 12rpx;
 }
 .order-footer.data-v-edb8ba0e {
   display: flex;
@@ -212,34 +273,48 @@
   margin: 30rpx 0;
 }
 .total-price.data-v-edb8ba0e {
-  font-size: 28rpx;
-  color: #333;
-  font-weight: bold;
+  display: flex;
+  align-items: center;
+}
+.total-price text.data-v-edb8ba0e:nth-child(1) {
+  font-weight: 400;
+  font-size: 26rpx;
+  color: #333333;
+}
+.total-price text.data-v-edb8ba0e:nth-child(2) {
+  font-weight: 600;
+  font-size: 26rpx;
+  color: #222222;
 }
 .order-buttons.data-v-edb8ba0e {
   display: flex;
   gap: 20rpx;
 }
 .btn.data-v-edb8ba0e {
-  padding: 20rpx 40rpx;
-  border-radius: 40rpx;
+  width: 160rpx;
+  height: 64rpx;
+  line-height: 64rpx;
+  text-align: center;
+  border-radius: 34rpx;
   font-size: 28rpx;
-  border: none;
+  padding: 0 !important;
 }
 .btn.secondary.data-v-edb8ba0e {
   background-color: white;
-  color: #1677ff;
-  border: 2rpx solid #1677ff;
+  color: #004096;
+  border: 2rpx solid #004096;
 }
 .btn.primary.data-v-edb8ba0e {
-  background-color: #1677ff;
+  background-color: #004096;
   color: white;
 }
 .order-note.data-v-edb8ba0e {
-  font-size: 24rpx;
-  color: #999;
-  background-color: #f5f5f5;
+  width: 100%;
+  font-size: 26rpx;
+  color: #666666;
+  background-color: #F8F9FB;
   padding: 20rpx;
+  box-sizing: border-box;
   border-radius: 8rpx;
   margin-top: 20rpx;
 }
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-info/store-info.js b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-info/store-info.js
new file mode 100644
index 0000000..8c9f7b7
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-info/store-info.js
@@ -0,0 +1,2 @@
+require('../../common/vendor.js');(global["webpackJsonp"]=global["webpackJsonp"]||[]).push([["shop/pages/store-info/store-info"],{251:function(n,e,t){"use strict";(function(n,e){var r=t(4);t(30);r(t(25));var u=r(t(252));n.__webpack_require_UNI_MP_PLUGIN__=t,e(u.default)}).call(this,t(1)["default"],t(2)["createPage"])},252:function(n,e,t){"use strict";t.r(e);var r=t(253),u=t(255);for(var o in u)["default"].indexOf(o)<0&&function(n){t.d(e,n,(function(){return u[n]}))}(o);t(257);var i,c=t(41),f=Object(c["default"])(u["default"],r["render"],r["staticRenderFns"],!1,null,"54dfab99",null,!1,r["components"],i);f.options.__file="shop/pages/store-info/store-info.vue",e["default"]=f.exports},253:function(n,e,t){"use strict";t.r(e);var r=t(254);t.d(e,"render",(function(){return r["render"]})),t.d(e,"staticRenderFns",(function(){return r["staticRenderFns"]})),t.d(e,"recyclableRender",(function(){return r["recyclableRender"]})),t.d(e,"components",(function(){return r["components"]}))},254:function(n,e,t){"use strict";var r;t.r(e),t.d(e,"render",(function(){return u})),t.d(e,"staticRenderFns",(function(){return i})),t.d(e,"recyclableRender",(function(){return o})),t.d(e,"components",(function(){return r}));var u=function(){var n=this,e=n.$createElement;n._self._c;n._isMounted||(n.e0=function(e){n.form.fullTime=!1},n.e1=function(e){n.form.fullTime=!0})},o=!1,i=[];u._withStripped=!0},255:function(n,e,t){"use strict";t.r(e);var r=t(256),u=t.n(r);for(var o in r)["default"].indexOf(o)<0&&function(n){t.d(e,n,(function(){return r[n]}))}(o);e["default"]=u.a},256:function(n,e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var r={data:function(){return{form:{name:"",intro:"",fullTime:!0,businessHours:"",storageType:"",deliveryRange:"",chargeRule:""}}}};e.default=r},257:function(n,e,t){"use strict";t.r(e);var r=t(258),u=t.n(r);for(var o in r)["default"].indexOf(o)<0&&function(n){t.d(e,n,(function(){return r[n]}))}(o);e["default"]=u.a},258:function(n,e,t){}},[[251,"common/runtime","common/vendor"]]]);
+//# sourceMappingURL=../../../../.sourcemap/mp-weixin/shop/pages/store-info/store-info.js.map
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-info/store-info.json b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-info/store-info.json
new file mode 100644
index 0000000..9331a64
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-info/store-info.json
@@ -0,0 +1,4 @@
+{
+  "navigationBarTitleText": "闂ㄥ簵淇℃伅",
+  "usingComponents": {}
+}
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-info/store-info.wxml b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-info/store-info.wxml
new file mode 100644
index 0000000..6063efe
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-info/store-info.wxml
@@ -0,0 +1 @@
+<view class="store-info-page data-v-54dfab99"><view class="top-gradient data-v-54dfab99"></view><view class="form-card data-v-54dfab99"><text class="page-title data-v-54dfab99">闂ㄥ簵淇℃伅</text><view class="form-group data-v-54dfab99"><text class="label data-v-54dfab99">闂ㄥ簵鍚嶇О</text><input class="text-input align-left data-v-54dfab99" type="text" placeholder="璇疯緭鍏ラ棬搴楀悕绉�" placeholder-style="color: #B2B2B2;" data-event-opts="{{[['input',[['__set_model',['$0','name','$event',[]],['form']]]]]}}" value="{{form.name}}" bindinput="__e"/></view><view class="divider data-v-54dfab99"></view><view class="form-group textarea-group data-v-54dfab99"><text class="label data-v-54dfab99">闂ㄥ簵浠嬬粛</text><input class="text-input align-left data-v-54dfab99" type="text" placeholder="璇疯緭鍏ラ棬搴椾粙缁�" placeholder-style="color: #B2B2B2;" data-event-opts="{{[['input',[['__set_model',['$0','intro','$event',[]],['form']]]]]}}" value="{{form.intro}}" bindinput="__e"/></view><view class="divider data-v-54dfab99"></view><view class="form-group switch-group data-v-54dfab99"><view class="label-row data-v-54dfab99"><text class="label data-v-54dfab99">鏄惁鍏ㄥぉ钀ヤ笟</text><text class="required data-v-54dfab99">*</text></view><view class="switch-row data-v-54dfab99"><view data-event-opts="{{[['tap',[['e0',['$event']]]]]}}" class="{{['switch-pill','data-v-54dfab99',(!form.fullTime)?'active':'']}}" bindtap="__e">鏄�</view><view data-event-opts="{{[['tap',[['e1',['$event']]]]]}}" class="{{['switch-pill','data-v-54dfab99',(form.fullTime)?'active':'']}}" bindtap="__e">鍚�</view></view></view><view class="form-group data-v-54dfab99"><view class="label-row data-v-54dfab99"><text class="label data-v-54dfab99">钀ヤ笟鏃堕棿</text><text class="required data-v-54dfab99">*</text></view><input class="text-input align-left data-v-54dfab99" type="text" placeholder="蹇呭~锛岃杈撳叆闂ㄥ簵钀ヤ笟鏃堕棿" placeholder-style="color: #B2B2B2;" data-event-opts="{{[['input',[['__set_model',['$0','businessHours','$event',[]],['form']]]]]}}" value="{{form.businessHours}}" bindinput="__e"/></view><view class="divider data-v-54dfab99"></view><view class="form-group data-v-54dfab99"><text class="label data-v-54dfab99">瀵勫瓨绫诲瀷</text><input class="text-input align-left data-v-54dfab99" type="text" placeholder="璇疯緭鍏ュ彲瀵勫瓨绫诲瀷" placeholder-style="color: #B2B2B2;" data-event-opts="{{[['input',[['__set_model',['$0','storageType','$event',[]],['form']]]]]}}" value="{{form.storageType}}" bindinput="__e"/></view><view class="divider data-v-54dfab99"></view><view class="form-group data-v-54dfab99"><view class="label-row data-v-54dfab99"><text class="label data-v-54dfab99">閰嶉�佽寖鍥�</text><text class="required data-v-54dfab99">*</text></view><view class="input-with-unit data-v-54dfab99"><input class="text-input data-v-54dfab99" type="digit" placeholder="蹇呭~锛岃杈撳叆" placeholder-style="color: #B2B2B2;" data-event-opts="{{[['input',[['__set_model',['$0','deliveryRange','$event',[]],['form']]]]]}}" value="{{form.deliveryRange}}" bindinput="__e"/><text class="unit-text data-v-54dfab99" style="font-size:28rpx;">鍏噷</text></view></view><view class="divider data-v-54dfab99"></view><view class="form-group textarea-group last-group data-v-54dfab99"><view class="label-row data-v-54dfab99"><text class="label data-v-54dfab99">鏀惰垂鏍囧噯</text><text class="required data-v-54dfab99">*</text></view><textarea class="text-area charge-area data-v-54dfab99" placeholder="蹇呭~锛岃杈撳叆闂ㄥ簵鏀惰垂鏍囧噯" placeholder-style="color: #B2B2B2;" auto-height="{{true}}" data-event-opts="{{[['input',[['__set_model',['$0','chargeRule','$event',[]],['form']]]]]}}" value="{{form.chargeRule}}" bindinput="__e"></textarea></view></view><view class="save-wrap data-v-54dfab99"><view class="save-btn data-v-54dfab99">淇濆瓨</view></view></view>
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-info/store-info.wxss b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-info/store-info.wxss
new file mode 100644
index 0000000..776762c
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/store-info/store-info.wxss
@@ -0,0 +1,173 @@
+@charset "UTF-8";
+/**
+ * 杩欓噷鏄痷ni-app鍐呯疆鐨勫父鐢ㄦ牱寮忓彉閲�
+ *
+ * uni-app 瀹樻柟鎵╁睍鎻掍欢鍙婃彃浠跺競鍦猴紙https://ext.dcloud.net.cn锛変笂寰堝涓夋柟鎻掍欢鍧囦娇鐢ㄤ簡杩欎簺鏍峰紡鍙橀噺
+ * 濡傛灉浣犳槸鎻掍欢寮�鍙戣�咃紝寤鸿浣犱娇鐢╯css棰勫鐞嗭紝骞跺湪鎻掍欢浠g爜涓洿鎺ヤ娇鐢ㄨ繖浜涘彉閲忥紙鏃犻渶 import 杩欎釜鏂囦欢锛夛紝鏂逛究鐢ㄦ埛閫氳繃鎼Н鏈ㄧ殑鏂瑰紡寮�鍙戞暣浣撻鏍间竴鑷寸殑App
+ *
+ */
+/**
+ * 濡傛灉浣犳槸App寮�鍙戣�咃紙鎻掍欢浣跨敤鑰咃級锛屼綘鍙互閫氳繃淇敼杩欎簺鍙橀噺鏉ュ畾鍒惰嚜宸辩殑鎻掍欢涓婚锛屽疄鐜拌嚜瀹氫箟涓婚鍔熻兘
+ *
+ * 濡傛灉浣犵殑椤圭洰鍚屾牱浣跨敤浜唖css棰勫鐞嗭紝浣犱篃鍙互鐩存帴鍦ㄤ綘鐨� scss 浠g爜涓娇鐢ㄥ涓嬪彉閲忥紝鍚屾椂鏃犻渶 import 杩欎釜鏂囦欢
+ */
+/* uni.scss */
+/* 棰滆壊鍙橀噺 */
+/* 琛屼负鐩稿叧棰滆壊 */
+/* 鏂囧瓧鍩烘湰棰滆壊 */
+/* 鑳屾櫙棰滆壊 */
+/* 杈规棰滆壊 */
+/* 灏哄鍙橀噺 */
+/* 鏂囧瓧灏哄 */
+/* 鍥剧墖灏哄 */
+/* Border Radius */
+/* 姘村钩闂磋窛 */
+/* 鍨傜洿闂磋窛 */
+/* 閫忔槑搴� */
+/* 鏂囩珷鍦烘櫙鐩稿叧 */
+.store-info-page.data-v-54dfab99 {
+  position: relative;
+  height: 482rpx;
+  background: #f2fbff;
+  padding: 20rpx 30rpx;
+  box-sizing: border-box;
+}
+.top-gradient.data-v-54dfab99 {
+  position: absolute;
+  left: 0;
+  top: 0;
+  width: 100%;
+  height: 220rpx;
+  background: linear-gradient(180deg, #bfeefe 0%, #ebfaff 58%, #f2fbff 100%);
+  z-index: 0;
+}
+.form-card.data-v-54dfab99 {
+  position: relative;
+  z-index: 1;
+  background: #ffffff;
+  border-radius: 20rpx;
+  padding: 30rpx;
+  box-sizing: border-box;
+  box-shadow: 0rpx 2rpx 20rpx 0rpx rgba(0, 0, 0, 0.08);
+}
+.page-title.data-v-54dfab99 {
+  display: block;
+  font-weight: 600;
+  font-size: 36rpx;
+  color: #222222;
+}
+.form-group.data-v-54dfab99 {
+  padding: 30rpx 0;
+  box-sizing: border-box;
+}
+.form-group.textarea-group.data-v-54dfab99 {
+  padding-bottom: 10rpx;
+}
+.last-group.data-v-54dfab99 {
+  padding-bottom: 22rpx;
+}
+.label.data-v-54dfab99,
+.required.data-v-54dfab99,
+.unit-text.data-v-54dfab99 {
+  font-size: 30rpx;
+}
+.label.data-v-54dfab99 {
+  font-weight: 500;
+  font-size: 30rpx;
+  color: #222222;
+}
+.label-row.data-v-54dfab99 {
+  display: flex;
+  align-items: center;
+}
+.required.data-v-54dfab99 {
+  margin-left: 2rpx;
+  color: #ff4d4f;
+  line-height: 1;
+}
+.text-input.data-v-54dfab99 {
+  width: 100%;
+  height: 48rpx;
+  margin-top: 14rpx;
+  font-weight: 400;
+  font-size: 30rpx;
+  color: #111111;
+  background: transparent;
+}
+.text-input.align-left.data-v-54dfab99 {
+  text-align: left;
+}
+.placeholder.data-v-54dfab99 {
+  font-size: 28rpx;
+  color: #c4c9d1;
+}
+.text-area.data-v-54dfab99 {
+  width: 100%;
+  min-height: 56rpx;
+  margin-top: 14rpx;
+  font-size: 28rpx;
+  line-height: 1.5;
+  color: #666666;
+  background: transparent;
+}
+.charge-area.data-v-54dfab99 {
+  min-height: 140rpx;
+}
+.divider.data-v-54dfab99 {
+  height: 1rpx;
+  background: #f0f1f4;
+}
+.switch-group.data-v-54dfab99 {
+  padding-bottom: 18rpx;
+}
+.switch-row.data-v-54dfab99 {
+  margin-top: 30rpx;
+  display: flex;
+  gap: 18rpx;
+}
+.switch-pill.data-v-54dfab99 {
+  width: 208rpx;
+  height: 72rpx;
+  border-radius: 36rpx;
+  background: #eeeeee;
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  font-weight: 400;
+  font-size: 30rpx;
+  color: #333333;
+}
+.switch-pill.active.data-v-54dfab99 {
+  background: #10B2FA;
+  color: #ffffff;
+}
+.input-with-unit.data-v-54dfab99 {
+  margin-top: 14rpx;
+  display: flex;
+  align-items: center;
+}
+.input-with-unit .text-input.data-v-54dfab99 {
+  margin-top: 0;
+  flex: 1;
+}
+.unit-text.data-v-54dfab99 {
+  margin-left: 12rpx;
+  color: #666666;
+  flex-shrink: 0;
+}
+.save-wrap.data-v-54dfab99 {
+  margin-top: 30rpx;
+  padding-bottom: calc(env(safe-area-inset-bottom) + 30rpx);
+}
+.save-btn.data-v-54dfab99 {
+  height: 88rpx;
+  background: #10B2FA;
+  border-radius: 44rpx;
+  display: flex;
+  align-items: center;
+  justify-content: center;
+  font-weight: 500;
+  font-size: 32rpx;
+  color: #FFFFFF;
+}
+
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/wallet/wallet.wxml b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/wallet/wallet.wxml
index f14d383..09b85b6 100644
--- a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/wallet/wallet.wxml
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/wallet/wallet.wxml
@@ -1 +1 @@
-<view class="wallet-page data-v-44c5d18e"><view style="{{'height:'+(statusbarHeight+'px')+';'}}" class="data-v-44c5d18e"></view><view class="header data-v-44c5d18e"><text class="title data-v-44c5d18e">闂ㄥ簵閽卞寘</text></view><view class="content data-v-44c5d18e"><text class="data-v-44c5d18e">閽卞寘椤甸潰</text></view><custom-tabbar vue-id="53f35e26-1" class="data-v-44c5d18e" bind:__l="__l"></custom-tabbar></view>
\ No newline at end of file
+<view class="wallet-page data-v-44c5d18e"><view class="nav-bar data-v-44c5d18e" style="{{'padding-top:'+(statusbarHeight+'px')+';'}}"><view class="nav-content data-v-44c5d18e"><text class="nav-title data-v-44c5d18e">闂ㄥ簵閽卞寘</text></view></view><view class="page-content data-v-44c5d18e"><text class="data-v-44c5d18e">閽卞寘椤甸潰</text></view><custom-tabbar vue-id="53f35e26-1" class="data-v-44c5d18e" bind:__l="__l"></custom-tabbar></view>
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/wallet/wallet.wxss b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/wallet/wallet.wxss
index 064a42f..098426d 100644
--- a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/wallet/wallet.wxss
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/wallet/wallet.wxss
@@ -29,14 +29,26 @@
   min-height: 100vh;
   background: #f8f8f8;
 }
-.header.data-v-44c5d18e {
-  padding: 30rpx;
+.nav-bar.data-v-44c5d18e {
+  position: fixed;
+  top: 0;
+  left: 0;
+  right: 0;
+  background: #ffffff;
+  z-index: 100;
 }
-.header .title.data-v-44c5d18e {
-  font-size: 40rpx;
+.nav-content.data-v-44c5d18e {
+  height: 44px;
+  display: flex;
+  align-items: center;
+  justify-content: center;
+}
+.nav-title.data-v-44c5d18e {
+  font-size: 34rpx;
   font-weight: 600;
+  color: #333333;
 }
-.content.data-v-44c5d18e {
-  padding: 30rpx;
+.page-content.data-v-44c5d18e {
+  padding-top: calc(44px + 44px);
 }
 
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/write-off/write-off.js b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/write-off/write-off.js
new file mode 100644
index 0000000..f3bcc5b
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/write-off/write-off.js
@@ -0,0 +1,2 @@
+require('../../common/vendor.js');(global["webpackJsonp"]=global["webpackJsonp"]||[]).push([["shop/pages/write-off/write-off"],{584:function(e,n,t){"use strict";(function(e,n){var o=t(4);t(30);o(t(25));var r=o(t(585));e.__webpack_require_UNI_MP_PLUGIN__=t,n(r.default)}).call(this,t(1)["default"],t(2)["createPage"])},585:function(e,n,t){"use strict";t.r(n);var o=t(586),r=t(588);for(var i in r)["default"].indexOf(i)<0&&function(e){t.d(n,e,(function(){return r[e]}))}(i);t(590);var c,u=t(41),a=Object(u["default"])(r["default"],o["render"],o["staticRenderFns"],!1,null,"4a22f55d",null,!1,o["components"],c);a.options.__file="shop/pages/write-off/write-off.vue",n["default"]=a.exports},586:function(e,n,t){"use strict";t.r(n);var o=t(587);t.d(n,"render",(function(){return o["render"]})),t.d(n,"staticRenderFns",(function(){return o["staticRenderFns"]})),t.d(n,"recyclableRender",(function(){return o["recyclableRender"]})),t.d(n,"components",(function(){return o["components"]}))},587:function(e,n,t){"use strict";var o;t.r(n),t.d(n,"render",(function(){return r})),t.d(n,"staticRenderFns",(function(){return c})),t.d(n,"recyclableRender",(function(){return i})),t.d(n,"components",(function(){return o}));try{o={uPopup:function(){return Promise.all([t.e("common/vendor"),t.e("node-modules/uview-ui/components/u-popup/u-popup")]).then(t.bind(null,399))}}}catch(u){if(-1===u.message.indexOf("Cannot find module")||-1===u.message.indexOf(".vue"))throw u;console.error(u.message),console.error("1. 鎺掓煡缁勪欢鍚嶇О鎷煎啓鏄惁姝g‘"),console.error("2. 鎺掓煡缁勪欢鏄惁绗﹀悎 easycom 瑙勮寖锛屾枃妗o細https://uniapp.dcloud.net.cn/collocation/pages?id=easycom"),console.error("3. 鑻ョ粍浠朵笉绗﹀悎 easycom 瑙勮寖锛岄渶鎵嬪姩寮曞叆锛屽苟鍦� components 涓敞鍐岃缁勪欢")}var r=function(){var e=this,n=e.$createElement;e._self._c;e._isMounted||(e.e0=function(n){e.show1=!1})},i=!1,c=[];r._withStripped=!0},588:function(e,n,t){"use strict";t.r(n);var o=t(589),r=t.n(o);for(var i in o)["default"].indexOf(i)<0&&function(e){t.d(n,e,(function(){return o[e]}))}(i);n["default"]=r.a},589:function(e,n,t){"use strict";(function(e){var o=t(4);Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var r=o(t(34)),i=o(t(36)),c=o(t(11)),u=t(37);function a(e,n){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);n&&(o=o.filter((function(n){return Object.getOwnPropertyDescriptor(e,n).enumerable}))),t.push.apply(t,o)}return t}function s(e){for(var n=1;n<arguments.length;n++){var t=null!=arguments[n]?arguments[n]:{};n%2?a(Object(t),!0).forEach((function(n){(0,c.default)(e,n,t[n])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):a(Object(t)).forEach((function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}))}return e}var f={computed:s({},(0,u.mapState)(["navHeight","statusbarHeight"])),data:function(){return{code:null,show1:!1,loading:!1,id:null,info:{}}},onShow:function(){},methods:{scanCodeDo:function(){this.code="";var n=this;e.scanCode({success:function(e){console.log("鏉$爜绫诲瀷锛�"+e.scanType),console.log("鏉$爜鍐呭锛�"+e.result),n.code=e.result,n.confirmDo()},fail:function(n){e.showToast({title:"鎵爜澶辫触",icon:"error"})}})},confirmDo:function(){var e=this;return(0,i.default)(r.default.mark((function n(){return r.default.wrap((function(n){while(1)switch(n.prev=n.next){case 0:e.code&&e.getShopDetail();case 1:case"end":return n.stop()}}),n)})))()},jumpWriteoffA:function(){this.info&&this.info.orderId&&e.navigateTo({url:"/pagesA/pages/write-off-a/write-off-a?id="+this.info.orderId})},jumpBack:function(){e.navigateBack({delta:1})},getShopDetail:function(){var e=this;if(!this.loading){this.loading=!0;var n=this;n.$u.api.getOrderDetailByCode({exchangeCode:this.code,tokenType:1}).then((function(t){console.log(t),200===t.code&&(n.info=t.data,1==t.data.orderStatus&&1==t.data.receiveType?n.jumpWriteoffA():(e.show1=!e.show1,e.loading=!1))})).catch((function(n){e.loading=!1})).finally((function(e){}))}},checkShopLogin:function(){null!=this.shopInfo&&null!=this.shopInfo.id&&null!=this.shopToken&&""!=this.shopToken||e.navigateTo({url:"/pages/login/login"})}}};n.default=f}).call(this,t(2)["default"])},590:function(e,n,t){"use strict";t.r(n);var o=t(591),r=t.n(o);for(var i in o)["default"].indexOf(i)<0&&function(e){t.d(n,e,(function(){return o[e]}))}(i);n["default"]=r.a},591:function(e,n,t){}},[[584,"common/runtime","common/vendor"]]]);
+//# sourceMappingURL=../../../../.sourcemap/mp-weixin/shop/pages/write-off/write-off.js.map
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/write-off/write-off.json b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/write-off/write-off.json
new file mode 100644
index 0000000..27f61d8
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/write-off/write-off.json
@@ -0,0 +1,6 @@
+{
+  "navigationBarTitleText": "鎵嬪姩鏍搁獙",
+  "usingComponents": {
+    "u-popup": "/node-modules/uview-ui/components/u-popup/u-popup"
+  }
+}
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/write-off/write-off.wxml b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/write-off/write-off.wxml
new file mode 100644
index 0000000..adcd4f1
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/write-off/write-off.wxml
@@ -0,0 +1 @@
+<view class="box data-v-4a22f55d"><view class="title data-v-4a22f55d">杈撳叆鏍搁獙鐮�</view><view class="input data-v-4a22f55d"><input type="number" placeholder="璇疯緭鍏�6浣嶅彇浠剁爜" data-event-opts="{{[['input',[['__set_model',['','code','$event',[]]]]]]}}" value="{{code}}" bindinput="__e" class="data-v-4a22f55d"/></view><block wx:if="{{!loading}}"><view data-event-opts="{{[['tap',[['confirmDo',['$event']]]]]}}" class="btn data-v-4a22f55d" bindtap="__e">纭</view></block><block wx:if="{{loading}}"><view class="btn1 data-v-4a22f55d">姝e湪鏌ヨ</view></block><view data-event-opts="{{[['tap',[['scanCodeDo',['$event']]]]]}}" class="footer data-v-4a22f55d" bindtap="__e"><image src="/shop/images/ic_saoma@2x.png" mode="widthFix" class="data-v-4a22f55d"></image><text class="data-v-4a22f55d">鎵爜鏍搁攢</text></view><u-popup vue-id="0b87916e-1" show="{{show1}}" round="15" safeAreaInsetBottom="{{false}}" mode="center" class="data-v-4a22f55d" bind:__l="__l" vue-slots="{{['default']}}"><view class="tc data-v-4a22f55d"><view class="tc-contemt data-v-4a22f55d"><view class="tc-contemt-title data-v-4a22f55d">璁㈠崟鏌ヨ缁撴灉</view><view class="tc-contemt-nr data-v-4a22f55d">{{'璁㈠崟銆�'+info.code+'銆戜笉婊¤冻鏍搁攢鏉′欢锛�'}}</view></view><view class="tc-btn data-v-4a22f55d"><view data-event-opts="{{[['tap',[['e0',['$event']]]]]}}" class="tc-btn-item data-v-4a22f55d" bindtap="__e">纭</view></view></view></u-popup></view>
\ No newline at end of file
diff --git a/small-program/unpackage/dist/dev/mp-weixin/shop/pages/write-off/write-off.wxss b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/write-off/write-off.wxss
new file mode 100644
index 0000000..94f195c
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/shop/pages/write-off/write-off.wxss
@@ -0,0 +1,100 @@
+@charset "UTF-8";
+/**
+ * 杩欓噷鏄痷ni-app鍐呯疆鐨勫父鐢ㄦ牱寮忓彉閲�
+ *
+ * uni-app 瀹樻柟鎵╁睍鎻掍欢鍙婃彃浠跺競鍦猴紙https://ext.dcloud.net.cn锛変笂寰堝涓夋柟鎻掍欢鍧囦娇鐢ㄤ簡杩欎簺鏍峰紡鍙橀噺
+ * 濡傛灉浣犳槸鎻掍欢寮�鍙戣�咃紝寤鸿浣犱娇鐢╯css棰勫鐞嗭紝骞跺湪鎻掍欢浠g爜涓洿鎺ヤ娇鐢ㄨ繖浜涘彉閲忥紙鏃犻渶 import 杩欎釜鏂囦欢锛夛紝鏂逛究鐢ㄦ埛閫氳繃鎼Н鏈ㄧ殑鏂瑰紡寮�鍙戞暣浣撻鏍间竴鑷寸殑App
+ *
+ */
+/**
+ * 濡傛灉浣犳槸App寮�鍙戣�咃紙鎻掍欢浣跨敤鑰咃級锛屼綘鍙互閫氳繃淇敼杩欎簺鍙橀噺鏉ュ畾鍒惰嚜宸辩殑鎻掍欢涓婚锛屽疄鐜拌嚜瀹氫箟涓婚鍔熻兘
+ *
+ * 濡傛灉浣犵殑椤圭洰鍚屾牱浣跨敤浜唖css棰勫鐞嗭紝浣犱篃鍙互鐩存帴鍦ㄤ綘鐨� scss 浠g爜涓娇鐢ㄥ涓嬪彉閲忥紝鍚屾椂鏃犻渶 import 杩欎釜鏂囦欢
+ */
+/* uni.scss */
+/* 棰滆壊鍙橀噺 */
+/* 琛屼负鐩稿叧棰滆壊 */
+/* 鏂囧瓧鍩烘湰棰滆壊 */
+/* 鑳屾櫙棰滆壊 */
+/* 杈规棰滆壊 */
+/* 灏哄鍙橀噺 */
+/* 鏂囧瓧灏哄 */
+/* 鍥剧墖灏哄 */
+/* Border Radius */
+/* 姘村钩闂磋窛 */
+/* 鍨傜洿闂磋窛 */
+/* 閫忔槑搴� */
+/* 鏂囩珷鍦烘櫙鐩稿叧 */
+.box.data-v-4a22f55d {
+  width: 100vw;
+  height: 100vh;
+  display: flex;
+  padding-top: 198rpx;
+  box-sizing: border-box;
+  align-items: center;
+  flex-direction: column;
+  background: linear-gradient(180deg, #C8F3FF 0%, #FFFFFF 52.19%, #FFFFFF 100%);
+}
+.box .title.data-v-4a22f55d {
+  font-weight: 600;
+  font-size: 34rpx;
+  color: #222222;
+}
+.box .input.data-v-4a22f55d {
+  width: 630rpx;
+  height: 88rpx;
+  padding: 0 30rpx;
+  box-sizing: border-box;
+  background: #FFFFFF;
+  border-radius: 50rpx;
+  border: 2rpx solid #004096;
+  margin-top: 40rpx;
+}
+.box .input input.data-v-4a22f55d {
+  width: 100%;
+  height: 100%;
+  font-weight: 400;
+  font-size: 32rpx;
+  color: #111111;
+  text-align: center;
+}
+.box .btn1.data-v-4a22f55d {
+  width: 630rpx;
+  height: 88rpx;
+  line-height: 88rpx;
+  text-align: center;
+  background: #666666;
+  border-radius: 44rpx;
+  font-weight: 600;
+  font-size: 32rpx;
+  color: #FFFFFF;
+  margin-top: 40rpx;
+}
+.box .btn.data-v-4a22f55d {
+  width: 630rpx;
+  height: 88rpx;
+  line-height: 88rpx;
+  text-align: center;
+  background: #004096;
+  border-radius: 44rpx;
+  font-weight: 600;
+  font-size: 32rpx;
+  color: #FFFFFF;
+  margin-top: 40rpx;
+}
+.box .footer.data-v-4a22f55d {
+  display: flex;
+  align-items: center;
+  margin-top: 48rpx;
+}
+.box .footer image.data-v-4a22f55d {
+  width: 40rpx;
+  height: 40rpx;
+  margin-right: 12rpx;
+}
+.box .footer text.data-v-4a22f55d {
+  font-weight: 400;
+  font-size: 28rpx;
+  color: #004096;
+}
+
diff --git a/small-program/unpackage/dist/dev/mp-weixin/static/icon/ic_home@2x.png b/small-program/unpackage/dist/dev/mp-weixin/static/icon/ic_home@2x.png
new file mode 100644
index 0000000..418f63f
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/static/icon/ic_home@2x.png
Binary files differ
diff --git a/small-program/unpackage/dist/dev/mp-weixin/static/icon/ic_visible@2x.png b/small-program/unpackage/dist/dev/mp-weixin/static/icon/ic_visible@2x.png
new file mode 100644
index 0000000..a788b30
--- /dev/null
+++ b/small-program/unpackage/dist/dev/mp-weixin/static/icon/ic_visible@2x.png
Binary files differ

--
Gitblit v1.9.3