Browse Source

Merge branch 'master' of http://gogs.chelvc.com/Tim_Walker/chelvc-custom

Tim_Walker 1 năm trước cách đây
mục cha
commit
50333ef1ef

+ 4 - 8
README.md

@@ -4,20 +4,16 @@
 
 ```
 pnpm install
-```
-
-### Compiles and hot-reloads for development
 
-```
 pnpm run serve
-```
-
-### Compiles and minifies for production
 
-```
 pnpm run build
 ```
 
+提交代码步骤
+git add .
+git commit -m "XXXX"
+git push
 ### Customize configuration
 
 See [Configuration Reference](https://cli.vuejs.org/config/).

+ 17 - 6
src/components/comment/CommentList.vue

@@ -1,7 +1,11 @@
 <template>
   <view>
     <block>
-      <view class="item" v-for="item in 10">
+      <view
+        class="item"
+        v-for="item in 10"
+        @click="$Router.push('/pages/community/commDetail/index')"
+      >
         <view class="item-avatar">
           <u-avatar src="https://cdn.uviewui.com/uview/album/1.jpg" />
         </view>
@@ -13,8 +17,14 @@
           ></u--text>
           <u-album :urls="urls2"></u-album>
           <view>
-            <text class="iconfont icon-thumb-up" style="font-size: 48rpx;padding: 20rpx 0;"></text>
-            <text class="iconfont icon-heart" style="font-size: 48rpx;padding: 20rpx 0;margin-left: 20rpx;"></text>
+            <text
+              class="iconfont icon-thumb-up"
+              style="font-size: 48rpx; padding: 20rpx 0"
+            ></text>
+            <text
+              class="iconfont icon-heart"
+              style="font-size: 48rpx; padding: 20rpx 0; margin-left: 20rpx"
+            ></text>
           </view>
         </view>
       </view>
@@ -55,10 +65,11 @@ export default {
 .item {
   padding: 10rpx 0;
   display: flex;
-  .item-avatar{}
-  .item-content{
+  .item-avatar {
+  }
+  .item-content {
     margin-left: 10rpx;
-    ::v-deep .u-cell__body{
+    ::v-deep .u-cell__body {
       padding: 0;
     }
   }

+ 212 - 0
src/components/service/index.vue

@@ -0,0 +1,212 @@
+<template>
+  <view>
+    <view class="sort">
+      <u-tabs :list="list1" @click="click" lineWidth="30" lineColor="#5992bb" :activeStyle="{
+        color: '#5992bb',
+        fontWeight: 'bold',
+      }" :inactiveStyle="{
+  color: '#000',
+}" itemStyle="padding-left: 15px; padding-right: 15px; height: 40px;" />
+      <view class="list">
+        <Image src="https://cdn.uviewui.com/uview/album/1.jpg" @tap="$Router.push('/pages/business/service/index')" />
+        <view>
+          <view class="item-text">【养车】标题标题标题标题标题标题标题标题……</view>
+          <view class="item-flex">
+            <view class="star">
+              <u-rate :count="count" v-model="value" :size="14" />
+              <text class="line">|</text>
+              <text class="points">4.93分</text>
+            </view>
+            <view>989单</view>
+          </view>
+          <view class="list-item">
+            <view>
+              <view class="price">券后价
+                <text class="price-item">¥</text>
+                <text class="price-count">19</text>
+              </view>
+              <view class="gate-rate">
+                <text>门市价</text>
+                <text class="gate-rate-item">¥30</text>
+              </view>
+            </view>
+            <view class="appoint">
+              <text class="appoint-item" @click="show = true">预约</text>
+              <text class="Buy" @tap="$Router.push('/pages/business/buy/index')">购买</text>
+            </view>
+          </view>
+        </view>
+      </view>
+
+      <!-- 预约弹出框的实现 -->
+      <u-popup :show="show" mode="center" @close="close" @open="open" :round="20">
+        <view class="popupContent">
+          <text class="popupItem">预约服务</text>
+          <view class="server">
+            <view class="popup-title">时间</view>
+            <!-- <view @click="showDate = true">请选择时间</view> -->
+            <u--input placeholder="请选择时间" border="bottom" clearable />
+            <!-- 点击时间的弹框 -->
+            <!-- <u-datetime-picker :showDate="showDate" v-model="value1" mode="datetime" /> -->
+            <view class="popup-title">联系方式</view>
+            <u--input placeholder="请输入联系方式" border="bottom" clearable />
+          </view>
+          <u-button type="primary" shape="circle" size="small" text="确定" />
+        </view>
+      </u-popup>
+    </view>
+  </view>
+</template>
+
+<script>
+export default {
+  data() {
+    return {
+      show: false,
+      showDate: false,
+      value1: Number(new Date()),
+    };
+  },
+  methods: {
+    click(item) {
+      console.log('item', item);
+    },
+    open() {
+      // console.log('open');
+    },
+    close() {
+      this.show = false;
+      // console.log('close');
+    },
+  },
+};
+</script>
+
+<style lang="scss" scoped>
+/*商家服务分类的是实现 */
+.sort {
+  background-color: #fff;
+
+  .list {
+    height: 250rpx;
+    background-color: #fff;
+    padding: 0 20rpx;
+    margin-bottom: 20rpx;
+    display: flex;
+
+    Image {
+      width: 180px;
+      height: calc(100% - 20rpx);
+      margin: 10rpx 20rpx 10rpx 0;
+    }
+
+    .item-text {
+      font-weight: bold;
+      margin: 10rpx 0 10rpx;
+      color: #333;
+    }
+
+    .item-flex {
+      display: flex;
+      justify-content: space-between;
+      font-size: 28rpx;
+      margin: 0 20rpx 10rpx 0;
+      color: #0d0d0d66;
+
+      .star {
+        display: flex;
+
+        .line {
+          margin-left: 16rpx;
+          margin-top: 5rpx;
+          font-size: 22rpx;
+        }
+
+        .points {
+          color: #ff4b04;
+          font-size: 22rpx;
+          margin-top: 6rpx;
+          margin-left: 10rpx;
+        }
+      }
+    }
+
+    .list-item {
+      display: flex;
+      justify-content: space-between;
+
+      .price {
+        font-size: 32rpx;
+        font-weight: bold;
+        color: #fa3534;
+
+        .price-item {
+          font-size: 24rpx;
+          margin-left: 10rpx;
+        }
+
+        .price-count {
+          font-size: 44rpx;
+        }
+      }
+
+      .gate-rate {
+        color: #c9c9c9;
+        font-size: 26rpx;
+        margin: 16rpx 0 0 40rpx;
+
+        .gate-rate-item {
+          text-decoration: line-through;
+        }
+      }
+
+      .appoint {
+        width: 80px;
+        height: 32px;
+        display: flex;
+        margin-top: 20px;
+        font-size: 14px;
+
+        .appoint-item {
+          width: 40px;
+          height: 32px;
+          line-height: 32px;
+          text-align: center;
+          display: inline-block;
+          box-sizing: border-box;
+          border-radius: 16px 0 0 16px;
+          border: 1px solid #ec5729;
+        }
+
+        .Buy {
+          width: 40px;
+          height: 32px;
+          color: #fff;
+          line-height: 32px;
+          text-align: center;
+          display: inline-block;
+          border-radius: 0 16px 16px 0;
+          background-color: #ec5729;
+        }
+      }
+    }
+  }
+}
+
+/* 弹框的样式 */
+.popupContent {
+  width: 600rpx;
+  height: 400rpx;
+  padding: 30rpx;
+  box-sizing: border-box;
+
+  .popupItem {
+    font-size: 34rpx;
+    font-weight: bold;
+  }
+
+  .server {
+    margin: 20rpx 0 20rpx 30rpx;
+  }
+}
+</style>

+ 4 - 2
src/components/tab/index.vue

@@ -1,7 +1,8 @@
 <template>
   <view>
     <view class="tabs">
-      <view class="tab" :class="{ active: currentIndex === index }" v-for="(item, index) in navList" :key="index" @tap="onClickNav(index)">
+      <view class="tab" :class="{ active: currentIndex === index }" v-for="(item, index) in navList" :key="index"
+        @tap="onClickNav(index)">
         <view class="name-item">{{ item.name }}</view>
       </view>
     </view>
@@ -38,7 +39,8 @@ export default {
   justify-content: space-around;
   font-size: 28rpx;
   color: #ffffff;
-  background-color: #00bcd4;
+  background-color: #347caf;
+
   .name-item {
     padding: 20rpx 0;
     color: #ffffff;

+ 95 - 25
src/pages.json

@@ -66,30 +66,6 @@
             "navigationBarTitleText": "全部评论"
           }
         },
-        {
-          "path": "settings/index",
-          "style": {
-            "navigationBarTitleText": "设置"
-          }
-        },
-        {
-          "path": "personalCenter/index",
-          "style": {
-            "navigationBarTitleText": "个人中心"
-          }
-        },
-        {
-          "path": "coupon/index",
-          "style": {
-            "navigationBarTitleText": "优惠券"
-          }
-        },
-        {
-          "path": "score/index",
-          "style": {
-            "navigationBarTitleText": "我的积分"
-          }
-        },
         {
           "path": "checkIn/index",
           "style": {
@@ -113,6 +89,12 @@
             "navigationBarTitleText": "商家详情"
           }
         },
+        {
+          "path": "buy/index",
+          "style": {
+            "navigationBarTitleText": "提交订单"
+          }
+        },
         {
           "path": "hot/index",
           "style": {
@@ -204,7 +186,13 @@
         {
           "path": "payment/index",
           "style": {
-            "navigationBarTitleText": "付款通知"
+            "navigationBarTitleText": "付款"
+          }
+        },
+        {
+          "path": "info/index",
+          "style": {
+            "navigationBarTitleText": "私信"
           }
         },
         {
@@ -255,6 +243,88 @@
           }
         }
       ]
+    },
+    {
+      "root": "pages/community",
+      "pages": [
+        {
+          "path": "commDetail/index",
+          "style": {
+            "navigationBarTitleText": "社区详情"
+          }
+        },
+        {
+          "path": "commSearch/index",
+          "style": {
+            "navigationBarTitleText": "搜索"
+          }
+        }
+      ]
+    },
+    {
+      "root": "pages/my",
+      "pages": [
+        {
+          "path": "collect/index",
+          "style": {
+            "navigationBarTitleText": "我的收藏"
+          }
+        },
+        {
+          "path": "appoint/index",
+          "style": {
+            "navigationBarTitleText": "预约列表"
+          }
+        },
+        {
+          "path": "appointDetail/index",
+          "style": {
+            "navigationBarTitleText": "预约详情"
+          }
+        },
+        {
+          "path": "coupon/index",
+          "style": {
+            "navigationBarTitleText": "优惠券"
+          }
+        },
+        {
+          "path": "inquiry/index",
+          "style": {
+            "navigationBarTitleText": "询价"
+          }
+        },
+        {
+          "path": "score/index",
+          "style": {
+            "navigationBarTitleText": "我的积分"
+          }
+        },
+        {
+          "path": "myOrder/index",
+          "style": {
+            "navigationBarTitleText": "我的订单"
+          }
+        },
+        {
+          "path": "personalCenter/index",
+          "style": {
+            "navigationBarTitleText": "个人中心"
+          }
+        },
+        {
+          "path": "editData/index",
+          "style": {
+            "navigationBarTitleText": "编辑资料"
+          }
+        },
+        {
+          "path": "settings/index",
+          "style": {
+            "navigationBarTitleText": "设置"
+          }
+        }
+      ]
     }
   ],
   "tabBar": {

+ 56 - 0
src/pages/business/buy/index.vue

@@ -0,0 +1,56 @@
+<template>
+  <view class="buy">
+
+    <!-- 底部提交按钮的实现 -->
+    <view class="buy-bottom">
+      <view class="but-text">总计:¥<text>83</text></view>
+      <view class="buyButton">
+        <u-button color="#fa6f19" shape="circle" text="立即购买" />
+      </view>
+    </view>
+  </view>
+</template>
+
+<script>
+export default {
+
+}
+</script>
+
+<style lang="scss" scoped>
+.buy {
+  height: 100vh;
+  background-color: #efefef;
+  position: relative;
+}
+
+/* 底部提交按钮的样式 */
+.buy-bottom {
+  height: 100rpx;
+  line-height: 100rpx;
+  background-color: #fff;
+  position: fixed;
+  left: 0;
+  bottom: 0;
+  right: 0;
+  display: flex;
+  justify-content: space-between;
+  padding: 10rpx 50rpx;
+  box-sizing: border-box;
+
+  .but-text {
+    color: #fa6f19;
+    font-size: 34rpx;
+    margin-top: -10rpx;
+
+    >text {
+      font-size: 38rpx;
+    }
+  }
+
+  .buyButton {
+    width: 160px;
+    margin-top: 10rpx;
+  }
+}
+</style>

+ 13 - 360
src/pages/business/classify/index.vue

@@ -3,282 +3,29 @@
     <view class="search-item">
       <u-search :showAction="true" actionText="取消" />
     </view>
-    <view class="list" @click="$Router.push('/pages/business/service/index')">
-      <Image src="https://cdn.uviewui.com/uview/album/1.jpg"></Image>
-      <view>
-        <view class="item-text"
-          >【养车】标题标题标题标题标题标题标题标题……</view
-        >
-        <view class="item-flex">
-          <view class="star">
-            <u-rate :count="count" v-model="value" :size="14" />
-            <text class="line">|</text>
-            <text class="points">4.93分</text>
-          </view>
-          <view>989单</view>
-        </view>
-        <view class="list-item">
-          <view>
-            <view class="price"
-              >券后价
-              <text class="price-item">¥</text>
-              <text class="price-count">19</text>
-            </view>
-            <view class="gate-rate">
-              <text>门市价</text>
-              <text class="gate-rate-item">¥30</text>
-            </view>
-          </view>
-          <view class="appoint">
-            <text class="appoint-item">预约</text>
-            <text class="Buy">购买</text>
-          </view>
-        </view>
-      </view>
-    </view>
-    <view class="list" @click="$Router.push('/pages/business/service/index')">
-      <Image src="https://cdn.uviewui.com/uview/album/1.jpg"></Image>
-      <view>
-        <view class="item-text"
-          >【养车】标题标题标题标题标题标题标题标题……</view
-        >
-        <view class="item-flex">
-          <view class="star">
-            <u-rate :count="count" v-model="value" :size="14" />
-            <text class="line">|</text>
-            <text class="points">4.93分</text>
-          </view>
-          <view>989单</view>
-        </view>
-        <view class="list-item">
-          <view>
-            <view class="price"
-              >券后价
-              <text class="price-item">¥</text>
-              <text class="price-count">19</text>
-            </view>
-            <view class="gate-rate">
-              <text>门市价</text>
-              <text class="gate-rate-item">¥30</text>
-            </view>
-          </view>
-          <view class="appoint">
-            <text class="appoint-item">预约</text>
-            <text class="Buy">购买</text>
-          </view>
-        </view>
-      </view>
-    </view>
-    <view class="list" @click="$Router.push('/pages/business/service/index')">
-      <Image src="https://cdn.uviewui.com/uview/album/1.jpg"></Image>
-      <view>
-        <view class="item-text"
-          >【养车】标题标题标题标题标题标题标题标题……</view
-        >
-        <view class="item-flex">
-          <view class="star">
-            <u-rate :count="count" v-model="value" :size="14" />
-            <text class="line">|</text>
-            <text class="points">4.93分</text>
-          </view>
-          <view>989单</view>
-        </view>
-        <view class="list-item">
-          <view>
-            <view class="price"
-              >券后价
-              <text class="price-item">¥</text>
-              <text class="price-count">19</text>
-            </view>
-            <view class="gate-rate">
-              <text>门市价</text>
-              <text class="gate-rate-item">¥30</text>
-            </view>
-          </view>
-          <view class="appoint">
-            <text class="appoint-item">预约</text>
-            <text class="Buy">购买</text>
-          </view>
-        </view>
-      </view>
-    </view>
-    <view class="list" @click="$Router.push('/pages/business/service/index')">
-      <Image src="https://cdn.uviewui.com/uview/album/1.jpg"></Image>
-      <view>
-        <view class="item-text"
-          >【养车】标题标题标题标题标题标题标题标题……</view
-        >
-        <view class="item-flex">
-          <view class="star">
-            <u-rate :count="count" v-model="value" :size="14" />
-            <text class="line">|</text>
-            <text class="points">4.93分</text>
-          </view>
-          <view>989单</view>
-        </view>
-        <view class="list-item">
-          <view>
-            <view class="price"
-              >券后价
-              <text class="price-item">¥</text>
-              <text class="price-count">19</text>
-            </view>
-            <view class="gate-rate">
-              <text>门市价</text>
-              <text class="gate-rate-item">¥30</text>
-            </view>
-          </view>
-          <view class="appoint">
-            <text class="appoint-item">预约</text>
-            <text class="Buy">购买</text>
-          </view>
-        </view>
-      </view>
-    </view>
-    <view class="list" @click="$Router.push('/pages/business/service/index')">
-      <Image src="https://cdn.uviewui.com/uview/album/1.jpg"></Image>
-      <view>
-        <view class="item-text"
-          >【养车】标题标题标题标题标题标题标题标题……</view
-        >
-        <view class="item-flex">
-          <view class="star">
-            <u-rate :count="count" v-model="value" :size="14" />
-            <text class="line">|</text>
-            <text class="points">4.93分</text>
-          </view>
-          <view>989单</view>
-        </view>
-        <view class="list-item">
-          <view>
-            <view class="price"
-              >券后价
-              <text class="price-item">¥</text>
-              <text class="price-count">19</text>
-            </view>
-            <view class="gate-rate">
-              <text>门市价</text>
-              <text class="gate-rate-item">¥30</text>
-            </view>
-          </view>
-          <view class="appoint">
-            <text class="appoint-item">预约</text>
-            <text class="Buy">购买</text>
-          </view>
-        </view>
-      </view>
-    </view>
-    <view class="list" @click="$Router.push('/pages/business/service/index')">
-      <Image src="https://cdn.uviewui.com/uview/album/1.jpg"></Image>
-      <view>
-        <view class="item-text"
-          >【养车】标题标题标题标题标题标题标题标题……</view
-        >
-        <view class="item-flex">
-          <view class="star">
-            <u-rate :count="count" v-model="value" :size="14" />
-            <text class="line">|</text>
-            <text class="points">4.93分</text>
-          </view>
-          <view>989单</view>
-        </view>
-        <view class="list-item">
-          <view>
-            <view class="price"
-              >券后价
-              <text class="price-item">¥</text>
-              <text class="price-count">19</text>
-            </view>
-            <view class="gate-rate">
-              <text>门市价</text>
-              <text class="gate-rate-item">¥30</text>
-            </view>
-          </view>
-          <view class="appoint">
-            <text class="appoint-item">预约</text>
-            <text class="Buy">购买</text>
-          </view>
-        </view>
-      </view>
-    </view>
-    <view class="list" @click="$Router.push('/pages/business/service/index')">
-      <Image src="https://cdn.uviewui.com/uview/album/1.jpg"></Image>
-      <view>
-        <view class="item-text"
-          >【养车】标题标题标题标题标题标题标题标题……</view
-        >
-        <view class="item-flex">
-          <view class="star">
-            <u-rate :count="count" v-model="value" :size="14" />
-            <text class="line">|</text>
-            <text class="points">4.93分</text>
-          </view>
-          <view>989单</view>
-        </view>
-        <view class="list-item">
-          <view>
-            <view class="price"
-              >券后价
-              <text class="price-item">¥</text>
-              <text class="price-count">19</text>
-            </view>
-            <view class="gate-rate">
-              <text>门市价</text>
-              <text class="gate-rate-item">¥30</text>
-            </view>
-          </view>
-          <view class="appoint">
-            <text class="appoint-item">预约</text>
-            <text class="Buy">购买</text>
-          </view>
-        </view>
-      </view>
-    </view>
-    <view class="list" @click="$Router.push('/pages/business/service/index')">
-      <Image src="https://cdn.uviewui.com/uview/album/1.jpg"></Image>
-      <view>
-        <view class="item-text"
-          >【养车】标题标题标题标题标题标题标题标题……</view
-        >
-        <view class="item-flex">
-          <view class="star">
-            <u-rate :count="count" v-model="value" :size="14" />
-            <text class="line">|</text>
-            <text class="points">4.93分</text>
-          </view>
-          <view>989单</view>
-        </view>
-        <view class="list-item">
-          <view>
-            <view class="price"
-              >券后价
-              <text class="price-item">¥</text>
-              <text class="price-count">19</text>
-            </view>
-            <view class="gate-rate">
-              <text>门市价</text>
-              <text class="gate-rate-item">¥30</text>
-            </view>
-          </view>
-          <view class="appoint">
-            <text class="appoint-item">预约</text>
-            <text class="Buy">购买</text>
-          </view>
-        </view>
-      </view>
-    </view>
+
+    <service />
+    <service />
+    <service />
+    <service />
+    <service />
+    <service />
   </view>
 </template>
 
 <script>
+import service from '@/components/service'
 export default {
+  components: {
+    service,
+  },
   data() {
     return {
       count: 5,
       value: 4,
     };
   },
-  onLoad() {},
+  onLoad() { },
   methods: {},
 };
 </script>
@@ -287,6 +34,7 @@ export default {
 .recommend {
   min-height: 100vh;
   background-color: #efefef;
+
   /* 搜索样式 */
   .search-item {
     padding: 0 20rpx;
@@ -295,100 +43,5 @@ export default {
     background-color: #fff;
     margin-bottom: 10rpx;
   }
-  .list {
-    height: 250rpx;
-    background-color: #fff;
-    padding: 0 20rpx;
-    margin-bottom: 20rpx;
-    display: flex;
-
-    Image {
-      width: 180px;
-      height: calc(100% - 20rpx);
-      margin: 10rpx 20rpx 10rpx 0;
-    }
-
-    .item-text {
-      font-weight: bold;
-      margin: 10rpx 0 10rpx;
-      color: #333;
-    }
-
-    .item-flex {
-      display: flex;
-      justify-content: space-between;
-      font-size: 28rpx;
-      margin: 0 20rpx 10rpx 0;
-      color: #0d0d0d66;
-
-      .star {
-        display: flex;
-
-        .line {
-          margin-left: 16rpx;
-          margin-top: 5rpx;
-          font-size: 22rpx;
-        }
-
-        .points {
-          color: #ff4b04;
-          font-size: 22rpx;
-          margin-top: 6rpx;
-          margin-left: 10rpx;
-        }
-      }
-    }
-    .list-item {
-      display: flex;
-      justify-content: space-between;
-      .price {
-        font-size: 32rpx;
-        font-weight: bold;
-        color: #fa3534;
-        .price-item {
-          font-size: 24rpx;
-          margin-left: 10rpx;
-        }
-        .price-count {
-          font-size: 44rpx;
-        }
-      }
-      .gate-rate {
-        color: #c9c9c9;
-        font-size: 26rpx;
-        margin: 16rpx 0 0 40rpx;
-        .gate-rate-item {
-          text-decoration: line-through;
-        }
-      }
-      .appoint {
-        width: 80px;
-        height: 32px;
-        display: flex;
-        margin-top: 20px;
-        font-size: 14px;
-        .appoint-item {
-          width: 40px;
-          height: 32px;
-          line-height: 32px;
-          text-align: center;
-          display: inline-block;
-          box-sizing: border-box;
-          border-radius: 16px 0 0 16px;
-          border: 1px solid #ec5729;
-        }
-        .Buy {
-          width: 40px;
-          height: 32px;
-          color: #fff;
-          line-height: 32px;
-          text-align: center;
-          display: inline-block;
-          border-radius: 0 16px 16px 0;
-          background-color: #ec5729;
-        }
-      }
-    }
-  }
 }
 </style>

+ 11 - 300
src/pages/business/detail/index.vue

@@ -2,24 +2,11 @@
   <view class="detail">
     <!-- 轮播图 -->
     <view class="carousel-map">
-      <u-swiper
-        :list="list3"
-        previousMargin="0"
-        nextMargin="100"
-        circular
-        :autoplay="false"
-        bgColor="#ffffff"
-      />
+      <u-swiper :list="list3" previousMargin="0" nextMargin="100" circular :autoplay="false" bgColor="#ffffff" />
       <view class="carousel-item">
         <view class="mark">
           <view class="mark-item">5.00分</view>
-          <u-rate
-            :count="count"
-            v-model="value"
-            active-color="#fff"
-            inactive-color="#fff"
-            :size="12"
-          />
+          <u-rate :count="count" v-model="value" active-color="#fff" inactive-color="#fff" :size="12" />
         </view>
         <view class="good-item">近期有6266个购买者给了给好评</view>
       </view>
@@ -52,195 +39,20 @@
       </view>
     </view>
 
-    <!-- 分类 -->
-    <view class="sort">
-      <u-tabs
-        :list="list1"
-        @click="click"
-        lineWidth="30"
-        lineColor="#5992bb"
-        :activeStyle="{
-          color: '#5992bb',
-          fontWeight: 'bold',
-          transform: 'scale(1.05)',
-        }"
-        :inactiveStyle="{
-          color: '#000',
-          transform: 'scale(1)',
-        }"
-        itemStyle="padding-left: 15px; padding-right: 15px; height: 40px;"
-      />
-      <view class="list" @click="$Router.push('/pages/business/service/index')">
-        <Image src="https://cdn.uviewui.com/uview/album/1.jpg"></Image>
-        <view>
-          <view class="item-text"
-            >【养车】标题标题标题标题标题标题标题标题……</view
-          >
-          <view class="item-flex">
-            <view class="star">
-              <u-rate :count="count" v-model="value" :size="14" />
-              <text class="line">|</text>
-              <text class="points">4.93分</text>
-            </view>
-            <view>989单</view>
-          </view>
-          <view class="list-item">
-            <view>
-              <view class="price"
-                >券后价
-                <text class="price-item">¥</text>
-                <text class="price-count">19</text>
-              </view>
-              <view class="gate-rate">
-                <text>门市价</text>
-                <text class="gate-rate-item">¥30</text>
-              </view>
-            </view>
-            <view class="appoint">
-              <text class="appoint-item">预约</text>
-              <text class="Buy">购买</text>
-            </view>
-          </view>
-        </view>
-      </view>
-      <view class="list">
-        <Image src="https://cdn.uviewui.com/uview/album/8.jpg"></Image>
-        <view>
-          <view class="item-text"
-            >【养车】标题标题标题标题标题标题标题标题……</view
-          >
-          <view class="item-flex">
-            <view class="star">
-              <u-rate :count="count" v-model="value" :size="14" />
-              <text class="line">|</text>
-              <text class="points">4.93分</text>
-            </view>
-            <view>989单</view>
-          </view>
-          <view class="list-item">
-            <view>
-              <view class="price"
-                >券后价
-                <text class="price-item">¥</text>
-                <text class="price-count">19</text>
-              </view>
-              <view class="gate-rate">
-                <text>门市价</text>
-                <text class="gate-rate-item">¥30</text>
-              </view>
-            </view>
-            <view class="appoint">
-              <text class="appoint-item">预约</text>
-              <text class="Buy">购买</text>
-            </view>
-          </view>
-        </view>
-      </view>
-      <view class="list">
-        <Image src="https://cdn.uviewui.com/uview/album/2.jpg"></Image>
-        <view>
-          <view class="item-text"
-            >【养车】标题标题标题标题标题标题标题标题……</view
-          >
-          <view class="item-flex">
-            <view class="star">
-              <u-rate :count="count" v-model="value" :size="14" />
-              <text class="line">|</text>
-              <text class="points">4.93分</text>
-            </view>
-            <view>989单</view>
-          </view>
-          <view class="list-item">
-            <view>
-              <view class="price"
-                >券后价
-                <text class="price-item">¥</text>
-                <text class="price-count">19</text>
-              </view>
-              <view class="gate-rate">
-                <text>门市价</text>
-                <text class="gate-rate-item">¥30</text>
-              </view>
-            </view>
-            <view class="appoint">
-              <text class="appoint-item">预约</text>
-              <text class="Buy">购买</text>
-            </view>
-          </view>
-        </view>
-      </view>
-      <view class="list">
-        <Image src="https://cdn.uviewui.com/uview/album/4.jpg"></Image>
-        <view>
-          <view class="item-text"
-            >【养车】标题标题标题标题标题标题标题标题……</view
-          >
-          <view class="item-flex">
-            <view class="star">
-              <u-rate :count="count" v-model="value" :size="14" />
-              <text class="line">|</text>
-              <text class="points">4.93分</text>
-            </view>
-            <view>989单</view>
-          </view>
-          <view class="list-item">
-            <view>
-              <view class="price"
-                >券后价
-                <text class="price-item">¥</text>
-                <text class="price-count">19</text>
-              </view>
-              <view class="gate-rate">
-                <text>门市价</text>
-                <text class="gate-rate-item">¥30</text>
-              </view>
-            </view>
-            <view class="appoint">
-              <text class="appoint-item">预约</text>
-              <text class="Buy">购买</text>
-            </view>
-          </view>
-        </view>
-      </view>
-      <view class="list">
-        <Image src="https://cdn.uviewui.com/uview/album/6.jpg"></Image>
-        <view>
-          <view class="item-text"
-            >【养车】标题标题标题标题标题标题标题标题……</view
-          >
-          <view class="item-flex">
-            <view class="star">
-              <u-rate :count="count" v-model="value" :size="14" />
-              <text class="line">|</text>
-              <text class="points">4.93分</text>
-            </view>
-            <view>989单</view>
-          </view>
-          <view class="list-item">
-            <view>
-              <view class="price"
-                >券后价
-                <text class="price-item">¥</text>
-                <text class="price-count">19</text>
-              </view>
-              <view class="gate-rate">
-                <text>门市价</text>
-                <text class="gate-rate-item">¥30</text>
-              </view>
-            </view>
-            <view class="appoint">
-              <text class="appoint-item">预约</text>
-              <text class="Buy">购买</text>
-            </view>
-          </view>
-        </view>
-      </view>
-    </view>
+    <service />
+    <service />
+    <service />
+    <service />
   </view>
 </template>
 
 <script>
+import service from '@/components/service'
+
 export default {
+  components: {
+    service,
+  },
   data() {
     return {
       count: 5,
@@ -364,105 +176,4 @@ export default {
     }
   }
 }
-
-// 分类
-.sort {
-  background-color: #fff;
-
-  .list {
-    height: 250rpx;
-    background-color: #fff;
-    padding: 0 20rpx;
-    margin-bottom: 20rpx;
-    display: flex;
-
-    Image {
-      width: 180px;
-      height: calc(100% - 20rpx);
-      margin: 10rpx 20rpx 10rpx 0;
-    }
-
-    .item-text {
-      font-weight: bold;
-      margin: 10rpx 0 10rpx;
-      color: #333;
-    }
-
-    .item-flex {
-      display: flex;
-      justify-content: space-between;
-      font-size: 28rpx;
-      margin: 0 20rpx 10rpx 0;
-      color: #0d0d0d66;
-
-      .star {
-        display: flex;
-
-        .line {
-          margin-left: 16rpx;
-          margin-top: 5rpx;
-          font-size: 22rpx;
-        }
-
-        .points {
-          color: #ff4b04;
-          font-size: 22rpx;
-          margin-top: 6rpx;
-          margin-left: 10rpx;
-        }
-      }
-    }
-    .list-item {
-      display: flex;
-      justify-content: space-between;
-      .price {
-        font-size: 32rpx;
-        font-weight: bold;
-        color: #fa3534;
-        .price-item {
-          font-size: 24rpx;
-          margin-left: 10rpx;
-        }
-        .price-count {
-          font-size: 44rpx;
-        }
-      }
-      .gate-rate {
-        color: #c9c9c9;
-        font-size: 26rpx;
-        margin: 16rpx 0 0 40rpx;
-        .gate-rate-item {
-          text-decoration: line-through;
-        }
-      }
-      .appoint {
-        width: 80px;
-        height: 32px;
-        display: flex;
-        margin-top: 20px;
-        font-size: 14px;
-        .appoint-item {
-          width: 40px;
-          height: 32px;
-          line-height: 32px;
-          text-align: center;
-          display: inline-block;
-          box-sizing: border-box;
-          border-radius: 16px 0 0 16px;
-          border: 1px solid #ec5729;
-        }
-        .Buy {
-          width: 40px;
-          height: 32px;
-          color: #fff;
-          line-height: 32px;
-          text-align: center;
-          display: inline-block;
-          border-radius: 0 16px 16px 0;
-          background-color: #ec5729;
-        }
-      }
-    }
-  }
-}
 </style>

+ 0 - 42
src/pages/client/coupon/index.vue

@@ -1,42 +0,0 @@
-<template>
-  <view class="container">
-    <tab :navList="list"></tab>
-  </view>
-</template>
-
-<script>
-import tab from '@/components/tab';
-export default {
-  components: {
-    tab,
-  },
-  data() {
-    return {
-      list: [
-        {
-          id: 0,
-          name: '通用',
-        },
-        {
-          id: 1,
-          name: '满减',
-        },
-        {
-          id: 2,
-          name: '折扣',
-        },
-        {
-          id: 3,
-          name: '赠送',
-        },
-      ],
-      current: 1,
-    };
-  },
-  methods: {
-    sectionChange() {},
-  },
-};
-</script>
-
-<style lang="scss" scoped></style>

+ 0 - 46
src/pages/client/settings/index.vue

@@ -1,46 +0,0 @@
-<template>
-  <view class="container">
-    <view class="main-out-box">
-      <view class="main-inner-box">
-        <u-cell-group :border="false">
-          <u-cell size="large" :border="false" icon="setting-fill" title="系统设置" isLink url=""></u-cell>
-          <u-cell size="large" :border="false" icon="setting-fill" title="权限设置" isLink url=""></u-cell>
-          <u-cell size="large" :border="false" icon="setting-fill" title="切换身份" isLink url=""></u-cell>
-        </u-cell-group>
-      </view>
-    </view>
-
-    <view class="policy-out-box">
-      <view class="policy-inner-box">
-        <u-cell-group :border="false">
-          <u-cell size="large" :border="false" icon="setting-fill" title="隐私管理" isLink url=""></u-cell>
-        </u-cell-group>
-      </view>
-    </view>
-  </view>
-</template>
-
-<style lang="scss" scoped>
-.container {
-  min-height: 100vh;
-  background-color: #efefef;
-  .main-out-box {
-    // margin-top: 20rpx;
-    padding: 20rpx 16rpx;
-    box-sizing: border-box;
-    .main-inner-box {
-      background-color: $uni-bg-color;
-      border-radius: 20rpx;
-    }
-  }
-  .policy-out-box {
-    // margin-top: 20rpx;
-    padding: 20rpx 16rpx;
-    box-sizing: border-box;
-    .policy-inner-box {
-      background-color: $uni-bg-color;
-      border-radius: 20rpx;
-    }
-  }
-}
-</style>

+ 9 - 0
src/pages/community/commDetail/index.vue

@@ -0,0 +1,9 @@
+<template>
+  <div>动态详情</div>
+</template>
+
+<script>
+export default {};
+</script>
+
+<style lang="scss" scoped></style>

+ 9 - 0
src/pages/community/commSearch/index.vue

@@ -0,0 +1,9 @@
+<template>
+  <div>搜索</div>
+</template>
+
+<script>
+export default {};
+</script>
+
+<style lang="scss" scoped></style>

+ 9 - 0
src/pages/message/info/index.vue

@@ -0,0 +1,9 @@
+<template>
+    <view>私聊页面</view>
+  </template>
+  
+  <script>
+  export default {};
+  </script>
+  
+  <style lang="scss" scoped></style>

+ 55 - 3
src/pages/message/order/index.vue

@@ -1,9 +1,61 @@
 <template>
-  <view>订单通知</view>
+  <view>
+    <view style="display: flex;justify-content: space-between;margin: 8px;">
+      <view>
+        <h1>订单通知</h1>
+        <h3>共 {{ total }} 条新订单</h3>
+      </view>
+      <view @click="allRead">
+        <h2 align="right">全部已读</h2>
+      </view>
+    </view>
+    <view style="margin-top: 25px;margin-left: 25px;">
+      <h2>待处理订单</h2>
+      <view style="margin-top: 10px;margin-left: 15px;">
+        <h3>订单编号:{{ waitOrder }}</h3>
+        <h3>客户名称:{{ waitName }}</h3>
+        <h3>订单金额:{{ waitMoney }}</h3>
+        <h3>下单时间:{{ waittime }}</h3>
+      </view>
+    </view>
+    <view style="margin-top: 25px;margin-left: 25px;">
+      <h2>待处理订单</h2>
+      <view style="margin-top: 10px;margin-left: 15px;">
+        <h3>订单编号:{{ waitOrder }}</h3>
+        <h3>客户名称:{{ waitName }}</h3>
+        <h3>订单金额:{{ waitMoney }}</h3>
+        <h3>下单时间:{{ waittime }}</h3>
+      </view>
+    </view>
+    <view style="margin-top: 25px;margin-left: 25px;">
+      <h2>新订单提醒</h2>
+      <view style="margin-top: 10px;margin-left: 15px;">
+        <h3>订单编号:{{ waitOrder }}</h3>
+        <h3>客户名称:{{ waitName }}</h3>
+        <h3>订单金额:{{ waitMoney }}</h3>
+        <h3>下单时间:{{ waittime }}</h3>
+      </view>
+    </view>
+  </view>
 </template>
 
 <script>
-export default {};
+  export default {
+    data() {
+      return {
+        total: 3,
+        waitName: '张三',
+        waitOrder: 999999999,
+        waitMoney: 999,
+        waittime: "2022-01-01 12:00:00",
+      };
+    },
+    methods: {
+      allRead() {
+
+      },
+    },
+  };
 </script>
 
-<style lang="scss" scoped></style>
+<style lang="scss" scoped></style>

+ 59 - 3
src/pages/message/payment/index.vue

@@ -1,9 +1,65 @@
 <template>
-  <view>付款通知</view>
+  <view>
+    <view style="margin-top: 15px;">
+      <view style="display: flex;justify-content: center;">
+        <u-icon name="checkmark-circle-fill" color="#16a34a" size="60"></u-icon>
+      </view>
+      <view style="display: flex;justify-content: center;">
+        <h1>付款成功</h1>
+      </view>
+    </view>
+    <view style="margin: 15px 0px 0px 15px;">
+      <h3>订单号:{{ orderNum }}</h3>
+      <h3>付款方式:{{ payStyle }}</h3>
+      <h3>付款金额:{{ orderMon }}</h3>
+    </view>
+    <view style="margin: 15px 0px 0px 15px;">
+      <h2>商品名称:{{ productName }}</h2>
+      <h3>规格:个 x{{number}}</h3>
+      <h3>商家名称:{{ name }}</h3>
+    </view>
+    <view style="margin: 15px 0px 0px 15px;">
+      <h2>收件人:{{ productName }}</h2>
+      <h2>联系电话:{{ orderNum }}</h2>
+      <h3>收货地址:{{ name }}</h3>
+      <h3>订单备注:{{ name }}</h3>
+    </view>
+    <view style="margin: 15px 0px 0px 15px;">
+      <h2>物流状态:{{ tranStatu }}</h2>
+      <h3>物流公司:{{ tranName }}</h3>
+      <h3>物流单号:{{ tranNum }}</h3>
+    </view>
+    <view style="margin: 15px 0px 0px 15px;">
+      <view style="display: flex;justify-content: center;">
+        <h3>创建时间:{{ waittime }}</h3>
+      </view>
+      <view style="display: flex;justify-content: center;">
+        <h3>付款时间:{{ waittime }}</h3>
+      </view>
+    </view>
+    <view style="display: flex;justify-content: center;margin: 15px 0px 0px 15px;">
+      <h3>客服热线:400-8888-8888</h3>
+    </view>
+  </view>
 </template>
 
 <script>
-export default {};
+  export default {
+    data() {
+      return {
+        orderNum: 9999999999999,
+        tranNum: 9999999999999,
+        payStyle: '微信支付',
+        productName: '洗车',
+        name: '成都王牌汽车保养店',
+        tranStatu: '已发货',
+        tranName: '成都王牌汽车保养店',
+        number: 3,
+        orderMon: 99999,
+        waittime: "2022年01月01日 12:00:00",
+      };
+    },
+  };
 </script>
 
-<style lang="scss" scoped></style>
+<style lang="scss" scoped></style>

+ 173 - 0
src/pages/my/appoint/index.vue

@@ -0,0 +1,173 @@
+<template>
+  <view class="appoint">
+    <view class="appoint-list">
+      <view class="appoint-title" @tap="$Router.push('/pages/business/service/index')">【养车】标题标题标题标题标题标题标题标题标题标题……</view>
+      <view class="appoint-address">贵州省贵阳市榕江县栽麻乡小利村三组</view>
+      <view class="appoint-flex">
+        <Image src="https://cdn.uviewui.com/uview/album/1.jpg" />
+        <view class="appoint-text">
+          <view>业务:洗车……</view>
+          <view>时间:2023年06月18日</view>
+          <view>联系方式:18285564342</view>
+        </view>
+        <view class="appoint-goto">
+          <view class="detail" @tap="$Router.push('/pages/my/appointDetail/index')">详情</view>
+          <view class="cancel" @click="show = true">取消</view>
+        </view>
+      </view>
+
+      <!-- 取消弹框的实现 -->
+      <view>
+        <u-modal :show="show" :title="title" :content='content'></u-modal>
+      </view>
+    </view>
+    <view class="appoint-list">
+      <view class="appoint-title" @tap="$Router.push('/pages/business/service/index')">【养车】标题标题标题标题标题标题标题标题标题标题……</view>
+      <view class="appoint-address">贵州省贵阳市榕江县栽麻乡小利村三组</view>
+      <view class="appoint-flex">
+        <Image src="https://cdn.uviewui.com/uview/album/1.jpg" />
+        <view class="appoint-text">
+          <view>业务:洗车……</view>
+          <view>时间:2023年06月18日</view>
+          <view>联系方式:18285564342</view>
+        </view>
+        <view class="appoint-goto">
+          <view class="detail" @tap="$Router.push('/pages/my/appointDetail/index')">详情</view>
+          <view class="cancel" @click="show = true">取消</view>
+        </view>
+      </view>
+
+      <!-- 取消弹框的实现 -->
+      <view>
+        <u-modal :show="show" :title="title" :content='content'></u-modal>
+      </view>
+    </view>
+    <view class="history">历史预约列表</view>
+    <view class="appoint-list">
+      <view class="appoint-title" @tap="$Router.push('/pages/business/service/index')">【养车】标题标题标题标题标题标题标题标题标题标题……</view>
+      <view class="appoint-address">贵州省贵阳市榕江县栽麻乡小利村三组</view>
+      <view class="appoint-flex">
+        <Image src="https://cdn.uviewui.com/uview/album/1.jpg" />
+        <view class="appoint-text">
+          <view>业务:洗车……</view>
+          <view>时间:2023年06月18日</view>
+          <view>联系方式:18285564342</view>
+        </view>
+        <view class="appoint-goto">
+          <view class="detail" @tap="$Router.push('/pages/my/appointDetail/index')">详情</view>
+          <view class="cancel" @click="show = true">取消</view>
+        </view>
+      </view>
+
+      <!-- 取消弹框的实现 -->
+      <view>
+        <u-modal :show="show" :title="title" :content='content'></u-modal>
+      </view>
+    </view>
+  </view>
+</template>
+
+<script>
+export default {
+  data() {
+    return {
+      show: false,
+      title: '取消预约',
+      content: '你确定要取消当前预约吗?'
+    };
+  },
+  methods: {
+    confirm() {
+      console.log(1111111111);
+      this.show = false;
+    },
+    cancel() {
+      this.show = false;
+    }
+  },
+};
+</script>
+
+<style lang="scss" scoped>
+.appoint {
+  height: 100vh;
+  background-color: #efefef;
+
+  .history {
+    font-size: 38rpx;
+    margin: 20rpx 10rpx;
+    font-weight: bold;
+  }
+}
+
+.appoint-list {
+  height: 420rpx;
+  padding: 10rpx;
+  background-color: #fff;
+  margin-bottom: 20rpx;
+  box-sizing: border-box;
+
+  .appoint-title {
+    font-size: 38rpx;
+    font-weight: bold;
+    margin-bottom: 10rpx;
+    color: #090909;
+  }
+
+  .appoint-address {
+    font-size: 32rpx;
+    margin: 20rpx;
+    padding-bottom: 20rpx;
+    color: #000000;
+    border-bottom: 2rpx solid #E5E5E5;
+  }
+
+
+  .appoint-flex {
+    display: flex;
+
+    Image {
+      width: 210rpx;
+      height: 160rpx;
+      display: block;
+      margin-right: 15rpx;
+    }
+
+    .appoint-text {
+      font-size: 28rpx;
+
+      >view {
+        margin-bottom: 26rpx;
+        margin-right: 20rpx;
+      }
+    }
+
+    .appoint-goto {
+      display: flex;
+      margin-top: 100rpx;
+
+      .detail {
+        width: 90rpx;
+        height: 70rpx;
+        line-height: 70rpx;
+        text-align: center;
+        color: #fff;
+        border-radius: 35rpx 0 0 35rpx;
+        background-color: #6c9fc3;
+      }
+
+      .cancel {
+        width: 90rpx;
+        height: 70rpx;
+        line-height: 70rpx;
+        background-color: #fff;
+        border-radius: 0 35rpx 35rpx 0;
+        box-sizing: border-box;
+        color: #6c9fc3;
+        padding-left: 10rpx;
+        border: 2rpx solid #6c9fc3;
+      }
+    }
+  }
+}
+</style>

+ 0 - 0
src/pages/my/appointDetail/index.vue


+ 39 - 0
src/pages/my/collect/index.vue

@@ -0,0 +1,39 @@
+<template>
+  <view class="collect">
+    <view class="text">以下是您收藏的商品服务</view>
+
+    <!-- 收藏的服务 -->
+    <service />
+    <service />
+    <service />
+    <service />
+  </view>
+</template>
+
+<script>
+import service from '@/components/service'
+export default {
+  components: {
+    service,
+  },
+  data() {
+    return {
+    };
+  },
+  onLoad() { },
+  methods: {},
+};
+</script>
+
+<style lang="scss" scoped>
+.collect {
+  height: 100vh;
+  background-color: #efefef;
+
+  .text {
+    text-align: center;
+    padding: 40rpx;
+    color: #999;
+  }
+}
+</style>

+ 157 - 0
src/pages/my/coupon/index.vue

@@ -0,0 +1,157 @@
+<template>
+  <view class="container">
+    <tab :navList="list" />
+
+    <!-- 优惠券的可用和失效 -->
+    <view class="use">
+      <u-tabs
+        :list="list2"
+        lineWidth="70"
+        lineColor="#347caf"
+        :scrollable="false"
+        :activeStyle="{
+          color: '#347caf',
+          fontWeight: 'bold',
+          transform: 'scale(1.05)',
+        }"
+        :inactiveStyle="{
+          color: '#b7b6b8',
+          transform: 'scale(1)',
+        }"
+        itemStyle="padding-left: 90rpx; padding-right: 80rpx; height: 120rpx;"
+      />
+    </view>
+
+    <!-- 优惠券可用 -->
+    <view class="couponUse">
+      <view class="useLeft">
+        <view>满500减100元</view>
+        <text>2320-07-02 ~ 202-08-03</text>
+      </view>
+      <view class="useRight">
+        <view class="text">2<text>折</text></view>
+        <view>折扣</view>
+        <view class="gouUse">去使用</view>
+      </view>
+    </view>
+    <!-- 优惠券失效 -->
+    <view class="couponDisUse couponUse">
+      <view class="useLeft">
+        <view>满500减100元</view>
+        <text>2320-07-02 ~ 202-08-03</text>
+      </view>
+      <view class="useRight">
+        <view class="text">2<text>折</text></view>
+        <view>折扣</view>
+        <view class="gouUse">去使用</view>
+      </view>
+    </view>
+  </view>
+</template>
+
+<script>
+import tab from '@/components/tab';
+export default {
+  components: {
+    tab,
+  },
+  data() {
+    return {
+      list: [
+        {
+          id: 0,
+          name: '通用',
+        },
+        {
+          id: 1,
+          name: '满减',
+        },
+        {
+          id: 2,
+          name: '折扣',
+        },
+        {
+          id: 3,
+          name: '赠送',
+        },
+      ],
+      list2: [
+        {
+          name: '可用',
+        },
+        {
+          name: '失效',
+        },
+      ],
+      current: 1,
+    };
+  },
+  methods: {
+    sectionChange() {},
+  },
+};
+</script>
+
+<style lang="scss" scoped>
+.container {
+  height: 100vh;
+  background-color: #efefef;
+  .use {
+    padding: 0 140rpx;
+  }
+
+  /* 优惠券可用 */
+  .couponUse {
+    margin: 20rpx 30rpx;
+    height: 200rpx;
+    display: flex;
+    background-color: #fff;
+    box-sizing: border-box;
+    .useLeft {
+      width: 380rpx;
+      padding: 20rpx;
+      > view {
+        font-size: 40rpx;
+        margin: 20rpx;
+        color: #333;
+      }
+      > text {
+        font-size: 28rpx;
+        color: #5f5f5f;
+      }
+    }
+    .useRight {
+      height: 100%;
+      padding: 10rpx;
+      color: #fff;
+      text-align: center;
+      box-sizing: border-box;
+      width: calc(100% - 380rpx);
+      background-color: #347caf;
+      .text {
+        font-size: 50rpx;
+        > text {
+          margin-left: 5rpx;
+          font-size: 24rpx;
+        }
+      }
+      .gouUse {
+        width: 180rpx;
+        height: 60rpx;
+        line-height: 60rpx;
+        color: #347caf;
+        margin: 16rpx 0 0 60rpx;
+        background-color: #fff;
+      }
+    }
+  }
+  .couponDisUse {
+    .useRight {
+      background-color: #cecece;
+      .gouUse {
+        color: #cecece;
+      }
+    }
+  }
+}
+</style>

+ 23 - 0
src/pages/my/editData/index.vue

@@ -0,0 +1,23 @@
+<template>
+  <view class="editData">
+    <u-cell-group>
+      <u-cell size="large" title="头像" value="头像" isLink url="" />
+      <u-cell size="large" title="用户名" value="yizhiyang" isLink url="" />
+      <u-cell size="large" title="昵称" value="易只烊" isLink url="" />
+      <u-cell size="large" title="性别" value="女" isLink url="" />
+      <u-cell size="large" title="生日" value="2000-03-01" isLink url="" />
+      <u-cell size="large" title="常用地" value="贵阳" isLink url="" />
+      <u-cell size="large" title="个人介绍" value="内容" isLink url="" />
+    </u-cell-group>
+  </view>
+</template>
+
+<script>
+export default {};
+</script>
+
+<style lang="scss" scoped>
+.editData {
+  height: 100vh;
+}
+</style>

+ 13 - 0
src/pages/my/inquiry/index.vue

@@ -0,0 +1,13 @@
+<template>
+  <view>
+    询价
+  </view>
+</template>
+
+<script>
+export default {
+
+}
+</script>
+
+<style lang="scss" scoped></style>

+ 0 - 0
src/pages/my/myOrder/index.vue


+ 0 - 0
src/pages/client/personalCenter/index.vue → src/pages/my/personalCenter/index copy.vue


+ 125 - 0
src/pages/my/personalCenter/index.vue

@@ -0,0 +1,125 @@
+<template>
+  <view>
+    <view class="person">
+      <view class="image-box">
+        <Image src="https://cdn.uviewui.com/uview/album/1.jpg" />
+      </view>
+
+      <!-- 个人信息中心 -->
+      <view class="info-box">
+        <view class="info-avatar">
+          <Image src="https://cdn.uviewui.com/uview/album/1.jpg" />
+          <view class="edit" @tap="$Router.push('/pages/my/editData/index')">
+            <u-icon name="edit-pen" color="#4688b6" />
+            <view> 编辑资料</view>
+          </view>
+        </view>
+        <view class="nickname">yizhiyang</view>
+        <view class="follow">
+          <view>关注<text>3</text></view>
+          <view>粉丝<text>3</text></view>
+          <view>好友<text>331</text></view>
+        </view>
+      </view>
+
+      <!-- 个人动态 -->
+      <u-tabs
+        :list="list2"
+        lineWidth="70"
+        lineColor="#347caf"
+        :scrollable="false"
+        :activeStyle="{
+          color: '#347caf',
+          fontWeight: 'bold',
+        }"
+        :inactiveStyle="{
+          color: '#333',
+        }"
+        itemStyle="padding-left: 90rpx; padding-right: 80rpx; height: 120rpx;"
+      />
+    </view>
+  </view>
+</template>
+
+<script>
+export default {
+  data() {
+    return {
+      list2: [
+        {
+          name: '主页',
+        },
+        {
+          name: '动态',
+        },
+      ],
+    };
+  },
+};
+</script>
+
+<style lang="scss" scoped>
+.person {
+  height: 100vh;
+  background-color: #efefef;
+  .image-box {
+    width: 100%;
+    height: 340rpx;
+    > Image {
+      width: 100%;
+      height: 100%;
+      display: block;
+    }
+  }
+
+  /* 个人信息中心 */
+  .info-box {
+    height: 280rpx;
+    padding: 20rpx;
+    margin: -140rpx 30rpx 30rpx 30rpx;
+    border-radius: 40rpx;
+    box-sizing: border-box;
+    background-color: #fff;
+    .info-avatar {
+      display: flex;
+      justify-content: space-between;
+      > Image {
+        width: 180rpx;
+        height: 180rpx;
+        border-radius: 90rpx;
+        display: block;
+        margin-top: -90rpx;
+        margin-left: 80rpx;
+      }
+      .edit {
+        display: flex;
+        width: 160rpx;
+        height: 80rpx;
+        border-radius: 80rpx;
+        line-height: 80rpx;
+        padding-left: 20rpx;
+        margin: 15rpx 15rpx 0 0;
+        color: #4688b6;
+        border: 1px solid #4688b6;
+      }
+    }
+    .nickname {
+      font-size: 40rpx;
+      margin: 20rpx;
+    }
+    .follow {
+      display: flex;
+      font-size: 26rpx;
+      color: #565656;
+      > view {
+        margin-right: 20rpx;
+        > text {
+          font-size: 36rpx;
+          color: #333;
+          margin-left: 5rpx;
+        }
+      }
+    }
+  }
+}
+</style>

+ 0 - 0
src/pages/client/score/index.vue → src/pages/my/score/index.vue


+ 79 - 0
src/pages/my/settings/index.vue

@@ -0,0 +1,79 @@
+<template>
+  <view class="container">
+    <view class="main-out-box">
+      <view class="main-inner-box">
+        <u-cell-group :border="false">
+          <u-cell
+            size="large"
+            :border="false"
+            icon="setting-fill"
+            title="系统设置"
+            isLink
+            url=""
+          ></u-cell>
+          <u-cell
+            size="large"
+            :border="false"
+            icon="setting-fill"
+            title="权限设置"
+            isLink
+            url=""
+          ></u-cell>
+          <u-cell
+            size="large"
+            :border="false"
+            icon="setting-fill"
+            title="切换身份"
+            isLink
+            url=""
+          ></u-cell>
+        </u-cell-group>
+      </view>
+    </view>
+
+    <view class="policy-out-box">
+      <view class="policy-inner-box">
+        <u-cell-group :border="false">
+          <u-cell
+            size="large"
+            :border="false"
+            icon="setting-fill"
+            title="隐私管理"
+            isLink
+            url=""
+          ></u-cell>
+        </u-cell-group>
+      </view>
+    </view>
+    <view class="exit">
+      <u-button type="primary" shape="circle" text="退出登录"></u-button>
+    </view>
+  </view>
+</template>
+
+<style lang="scss" scoped>
+.container {
+  min-height: 100vh;
+  background-color: #efefef;
+  .main-out-box {
+    // margin-top: 20rpx;
+    padding: 20rpx 16rpx;
+    box-sizing: border-box;
+    .main-inner-box {
+      background-color: $uni-bg-color;
+      border-radius: 20rpx;
+    }
+  }
+  .policy-out-box {
+    padding: 50rpx 16rpx;
+    box-sizing: border-box;
+    .policy-inner-box {
+      background-color: $uni-bg-color;
+      border-radius: 20rpx;
+    }
+  }
+}
+.exit {
+  padding: 200rpx 16rpx;
+}
+</style>

+ 33 - 5
src/pages/tabbar/community/index.vue

@@ -1,14 +1,36 @@
 <template>
   <view>
+    <!-- 关注和推荐 -->
     <u-navbar leftIcon="search" leftIconSize="32">
       <view slot="center">
         <u-tabs :list="list" lineWidth="32" />
       </view>
     </u-navbar>
+    <!-- 消息列表 -->
     <view class="content" :style="{ marginTop: totalHeight + 'px' }">
-      <swiper class="swiper" style="height: 100vh" :indicator-dots="indicatorDots" :autoplay="autoplay" :interval="interval" :duration="duration">
+      <!-- 搜索 -->
+      <view
+        class="search-item"
+        @click="$Router.push('/pages/community/commSearch/index')"
+      >
+        <u-search :showAction="true" actionText="取消" />
+      </view>
+      <swiper
+        class="swiper"
+        style="height: 100vh"
+        :indicator-dots="indicatorDots"
+        :autoplay="autoplay"
+        :interval="interval"
+        :duration="duration"
+      >
         <swiper-item>
-          <scroll-view scroll-y="true" class="scroll-y" @scrolltoupper="upper" @scrolltolower="lower" @scroll="scroll">
+          <scroll-view
+            scroll-y="true"
+            class="scroll-y"
+            @scrolltoupper="upper"
+            @scrolltolower="lower"
+            @scroll="scroll"
+          >
             <view style="padding: 10rpx 20rpx; background-color: #ffffff">
               <comment-list></comment-list>
             </view>
@@ -28,8 +50,8 @@
 <script>
 import CommentList from '@/components/comment/CommentList.vue';
 export default {
-  components:{
-    CommentList
+  components: {
+    CommentList,
   },
   data() {
     return {
@@ -42,7 +64,6 @@ export default {
       old: {
         scrollTop: 0,
       },
-
     };
   },
   computed: {
@@ -80,4 +101,11 @@ export default {
   height: 100vh;
 }
 
+.search-item {
+  padding: 0 20rpx;
+  height: 80rpx;
+  line-height: 80rpx;
+  background-color: #ffffff;
+  margin-bottom: 10rpx;
+}
 </style>

+ 12 - 2
src/pages/tabbar/home/index.vue

@@ -59,7 +59,12 @@
     </view>
     <!-- 热门推荐 -->
     <view class="hot">
-      <u-cell :border="false" value="查看更多" isLink>
+      <u-cell
+        :border="false"
+        value="查看更多"
+        isLink
+        @click="$Router.push('/pages/business/hot/index')"
+      >
         <view slot="title" class="hot-title"> 热门推荐 </view>
       </u-cell>
       <block v-if="homeData.recommendMerchants.length > 0">
@@ -86,7 +91,12 @@
     </view>
     <!-- 附近商家 -->
     <view class="near">
-      <u-cell :border="false" value="查看更多" isLink>
+      <u-cell
+        :border="false"
+        value="查看更多"
+        isLink
+        @click="$Router.push('/pages/business/nearby/index')"
+      >
         <view slot="title" class="near-title"> 附近商家 </view>
       </u-cell>
       <block v-if="homeData.nearbyMerchants.length > 0">

+ 19 - 12
src/pages/tabbar/message/index.vue

@@ -3,17 +3,12 @@
     <u-navbar>
       <view slot="left"></view>
       <view slot="center">
-        <u-tabs :list="list" lineWidth="60" />
+        <u-tabs :list="list" lineWidth="60" :current="current" @change="changeInfo" />
       </view>
     </u-navbar>
     <view :style="{ marginTop: totalHeight + 'px' }">
       <!-- 系统通知 -->
-      <view
-        class="orderList"
-        v-for="item in orderList"
-        :key="item.id"
-        @tap="$Router.push(item.url)"
-      >
+      <view v-if="current == 0" class="orderList" v-for="item in orderList" :key="item.id" @tap="$Router.push(item.url)">
         <image :src="item.img" style="width: 40px; height: 40px" />
         <view class="orderItem">
           <view class="order1">{{ item.name }}</view>
@@ -21,12 +16,10 @@
         </view>
         <u-icon name="arrow-right"></u-icon>
       </view>
+
       <!-- 消息通知 -->
-      <view class="message">
-        <image
-          src="/static/images/home-select.png"
-          style="width: 40px; height: 40px"
-        />
+      <view class="message" v-if="current == 1" @tap="$Router.push(infoUrl)">
+        <image src="/static/images/home-select.png" style="width: 40px; height: 40px" />
         <view class="business">
           <view class="businessItem">商家</view>
           <view class="messages">您好,请问有什么需要帮助的吗?</view>
@@ -53,6 +46,7 @@ export default {
           },
         },
       ],
+      current: 0,
       orderList: [
         {
           id: '1',
@@ -93,6 +87,7 @@ export default {
       type: 'warning',
       value: 99999,
       flag: true,
+      infoUrl: '/pages/message/info/index'
     };
   },
   computed: {
@@ -104,6 +99,9 @@ export default {
     change(e) {
       console.log('-----------', e);
     },
+    changeInfo(index) {
+      this.current = index.index;
+    }
   },
 };
 </script>
@@ -113,6 +111,7 @@ export default {
   min-height: 100vh;
   background-color: #fff;
 }
+
 .orderList {
   display: flex;
   padding: 30rpx;
@@ -121,19 +120,23 @@ export default {
   image {
     margin-right: 10rpx;
   }
+
   .orderItem {
     flex: 1;
+
     .order1 {
       font-size: 16px;
       margin-bottom: 10rpx;
       color: #232323;
     }
+
     .order2 {
       font-size: 12px;
       color: #9ca3af;
     }
   }
 }
+
 .message {
   display: flex;
   padding: 30rpx;
@@ -142,18 +145,22 @@ export default {
   image {
     margin-right: 10rpx;
   }
+
   .business {
     flex: 1;
+
     .businessItem {
       font-size: 16px;
       margin-bottom: 10rpx;
       color: #232323;
     }
+
     .messages {
       font-size: 12px;
       color: #9ca3af;
     }
   }
+
   .time {
     .timeItem {
       color: #9ca3af;

+ 82 - 29
src/pages/tabbar/mine/index.vue

@@ -2,30 +2,42 @@
   <view class="container">
     <view class="head-wrap">
       <view class="content">
-        <view class="avatar-wrap" @tap="$Router.push('/pages/client/personalCenter/index')">
+        <view class="avatar-wrap" @tap="$Router.push('/pages/my/personalCenter/index')">
           <u-avatar :src="user_info.avatar" size="80"></u-avatar>
         </view>
-        <view class="user-base">
-          <view class="user-nickname" @tap="$Router.push('/pages/login/index')">{{ user_info.nickname }}</view>
-          <view class="btn-wrap">
-            <view class="btn-content" @tap="$Router.push('/pages/client/settings/index')">设置</view>
-            <view class="btn-content">认证</view>
+        <view>
+          <!-- 已登录 -->
+          <view class="user-base" v-if="user_info.nickname">
+            <view class="user-nickname">{{ user_info.nickname }}</view>
+            <view class="btn-wrap">
+              <view class="btn-content" @tap="$Router.push('/pages/my/settings/index')">设置</view>
+              <view class="btn-content">认证</view>
+            </view>
+          </view>
+
+          <!-- 未登录 -->
+          <view class="clickLogin" v-else @tap="$Router.push('/pages/login/index')">
+            点击登录
           </view>
         </view>
       </view>
-      <view>
+
+      <!-- 收藏 -->
+      <view class="Collect">
         <u-grid :border="false" col="4">
           <u-grid-item v-for="(listItem, listIndex) in list1" :key="listIndex" @tap="$Router.push(listItem.url)">
-            <u-icon :customStyle="{ paddingTop: 20 + 'rpx' }" :name="listItem.name" :size="22"></u-icon>
+            <u-icon :customStyle="{ paddingTop: 20 + 'rpx' }" :name="listItem.name" :size="24" color="#fff" />
             <text class="grid-text">{{ listItem.title }}</text>
           </u-grid-item>
         </u-grid>
       </view>
-      <view class="order-out-box">
+
+      <!-- 我的订单 -->
+      <view class="order-out-box" @tap="$Router.push('/pages/my/myOrder/index')">
         <view class="order-inner-box">
           <u-grid :border="false" col="4" style="background-color: #fff">
             <u-grid-item v-for="(listItem, listIndex) in list2" :key="listIndex">
-              <u-icon :customStyle="{ paddingTop: 20 + 'rpx' }" :name="listItem.name" :size="22"></u-icon>
+              <u-icon :customStyle="{ paddingTop: 20 + 'rpx' }" :name="listItem.name" :size="34"></u-icon>
               <text class="grid-text">{{ listItem.title }}</text>
             </u-grid-item>
           </u-grid>
@@ -33,14 +45,15 @@
       </view>
     </view>
 
+    <!-- 我的收益 -->
     <view class="income-out-box">
       <view class="income-inner-box">
         <view class="income-head">
           <text class="my-income">我的收益</text>
-          <u-icon name="arrow-right"></u-icon>
+          <u-icon name="arrow-right" />
         </view>
         <view class="income-content">
-          <u-grid :border="false" col="4">
+          <u-grid :border="false" col="4" bgColor="#fff">
             <u-grid-item v-for="(listItem, listIndex) in incomeList" :key="listIndex">
               <view class="num-box">{{ listItem.num }}元</view>
               <view class="num-title">{{ listItem.title }}</view>
@@ -50,6 +63,11 @@
       </view>
     </view>
 
+    <!-- 预约列表 -->
+    <view class="appointList">
+      <u-cell icon="setting-fill" title="预约列表" isLink url="/pages/my/appoint/index" />
+    </view>
+
     <view class="other-out-box">
       <view class="other-inner-box">
         <u-cell-group :border="false">
@@ -72,20 +90,22 @@ export default {
         {
           name: 'photo',
           title: '收藏',
+          url: '/pages/my/collect/index',
         },
         {
           name: 'lock',
           title: '积分',
-          url: '/pages/client/score/index'
+          url: '/pages/my/score/index',
         },
         {
           name: 'star',
           title: '询价记录',
+          url: '/pages/my/inquiry/index',
         },
         {
           name: 'hourglass',
           title: '优惠券',
-          url: '/pages/client/coupon/index',
+          url: '/pages/my/coupon/index',
         },
       ],
       list2: [
@@ -126,9 +146,9 @@ export default {
       ],
     };
   },
-  computed:{
-    ...mapGetters(['user_info'])
-  }
+  computed: {
+    ...mapGetters(['user_info']),
+  },
 };
 </script>
 <style lang="scss" scoped>
@@ -136,15 +156,22 @@ export default {
   min-height: 100vh;
   background-color: #efefef;
 }
+
+/* 顶部登录 */
 .head-wrap {
-  background-color: $uni-color-primary;
-  height: 416rpx;
+  background-color: #347caf;
+  height: 390rpx;
 
   .content {
     display: flex;
     padding: 38rpx 0 0 36rpx;
     box-sizing: border-box;
 
+    .clickLogin {
+      font-size: 48rpx;
+      color: #ffffff;
+    }
+
     .avatar-wrap {
       display: inline-block;
     }
@@ -157,12 +184,14 @@ export default {
       justify-content: space-evenly;
 
       .user-nickname {
+        margin-top: 20rpx;
         font-size: 40rpx;
         color: #ffffff;
       }
 
       .btn-wrap {
         width: 160rpx;
+        margin-top: 20rpx;
         display: flex;
         justify-content: space-between;
 
@@ -175,35 +204,53 @@ export default {
       }
     }
   }
+
+  .Collect {
+    margin-top: 10rpx;
+
+    // 宫格颜色
+    .grid-text {
+      font-size: 30rpx;
+      color: #fff;
+      margin-top: 5rpx;
+      box-sizing: border-box;
+    }
+  }
+
   .order-out-box {
-    margin-top: 20rpx;
-    padding: 0 16rpx;
+    margin-top: 30rpx;
+    padding: 10rpx 16rpx;
     box-sizing: border-box;
+
     .order-inner-box {
-      padding-bottom: 20rpx;
+      font-size: 30rpx;
+      padding-bottom: 30rpx;
       background-color: $uni-bg-color;
-      border-radius: 20rpx;
+      border-radius: 10rpx;
     }
   }
 }
 
 .income-out-box {
-  margin-top: 60rpx;
-  padding: 0 16rpx;
+  margin-top: 110rpx;
+  padding: 10rpx 16rpx;
   box-sizing: border-box;
+
   .income-inner-box {
     padding: 20rpx;
     background-color: $uni-bg-color;
-    border-radius: 20rpx;
+
     .income-head {
       display: flex;
       justify-content: space-between;
+
       .my-income {
         color: $uni-color-primary;
         font-size: 32rpx;
         font-weight: 600;
       }
     }
+
     .income-content {
       .num-box {
         padding: 20rpx 0;
@@ -211,6 +258,7 @@ export default {
         font-weight: 600;
         color: $uni-text-color;
       }
+
       .num-title {
         font-size: 28rpx;
         color: $uni-text-color-grey;
@@ -220,12 +268,17 @@ export default {
 }
 
 .other-out-box {
-  margin-top: 60rpx;
-  padding: 0 16rpx;
+  margin-top: 10rpx;
+  padding: 20rpx 16rpx;
   box-sizing: border-box;
+
   .other-inner-box {
     background-color: $uni-bg-color;
-    border-radius: 20rpx;
   }
 }
+
+.appointList {
+  background-color: #fff;
+  margin: 10rpx 16rpx 0 16rpx;
+}
 </style>