指导组--alpha冲刺Day8

这个作业属于哪个课程课程
这个作业要求在哪里要求
这个作业的目标记录alpha冲刺Day8
团队名称指导组
团队置顶集合随笔链接置顶链接
其他参考文献

会议照片

在这里插入图片描述

项目燃尽图

在这里插入图片描述

项目运行图片

在这里插入图片描述
在这里插入图片描述

团队成员站立式会议总结

成员项目进展存在/遇到的问题从今天到明天会议的安排心得体会
072103402-卢成熙基本完成了接口传送数据问题优化进一步测试有没有问问题继续完成后端代码逐渐熟悉了代码的编写和逻辑的实现,通过不断的思考和尝试更好地解决问题并提高代码的质量
102101117-刘建鑫用户端首页已部分完成页面还有改进空间继续设计完善用户端首页学会了如何自己编写设计界面,并将其美化,通过不断思考和尝试创造出更好的界面效果,提升用户体验。
102101427-陈永裕确定了部分管理员前端与后端数据交互前后端数据交互问题为解决学习借鉴接口文档前后端要有良好的交互离不开交流
102101413-王润富基本完成了管理员端的界面设计界面不够美观进一步美化界面界面设计要保证功能合理性与美观
102101128-陈林旭解决接口实现部分存在的问题解决剩下的接口实现部分的问题学习前后端接口相关技术学无止境
102101133-纳世荣熟悉接口交换技巧进一步熟悉接口交换技巧与后端人员进行接口交换通过不断的实践和尝试,逐渐掌握了前端代码设计的技巧,使其更加得心应手
291800137-赵鑫完善管理员端的界面设计与后端的接口初步协商存在困难开始进行与后端的初步接口交换认识到在设计过程中需要更加注重细节和精确性
102101134-范智强学习页面布局的技巧和方法还需进一步研究和学习页面布局的技巧和方法研究和学习页面布局的技巧和方法决定进一步研究和学习页面布局的技巧和方法
102101137-林鹏解决美化界面难度较大的问题还需进一步提升美化技巧继续进行用户端“我的”界面的设计和美化技巧的提升逐渐提高了对前端设计的理解,并能够更好地应用美化技巧
031802441-张志敏提高了排版能力继续进行管理员端的界面设计和提高排版能力继续进行管理员端的界面设计相信通过不断的实践和尝试能够提高自己的排版能力,设计出更合理、更美观的界面。

代码部分

用户端代码

<!DOCTYPE html>
<html lang="en">
<head>
  <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0">
  <title>福大商铺点评</title>
  <!-- 引入样式 -->
  <link rel="stylesheet" href="./css/element.css">

  <link href="./css/shop-detail.css" rel="stylesheet">
  <link href="./css/main.css" rel="stylesheet">

  <style type="text/css">

  </style>
</head>
<body>
<div id="app">
  <div class="header">
    <div class="header-back-btn" @click="goBack"><i class="el-icon-arrow-left"></i></div>
    <div class="header-title" style="color: rgb(255, 0, 81);">美食</div>
    <div class="header-share">...</div>
  </div>
  <div class="top-bar"></div>
  <div class="shop-info-box">
    <div class="shop-title">{{shop.name}}</div>
    <div class="shop-rate">
      <el-rate
          disabled v-model="shop.score/10"
          text-color="#F63"
          show-score
      ></el-rate>
      <span style="color:#BEBEBE">{{shop.comments}}条</span>
    </div>
    <div class="shop-rate-info" style="font-family:'Segoe UI', Tahoma, Geneva, Verdana, sans-serif"> 口味:4.9  环境:4.8  服务:4.7 </div>
    <div class="shop-rank">
      <img src="/imgs/bd.png" width="63" height="20" alt="">
      <span>拱墅区好评榜第3名</span>
      <div><i class="el-icon-arrow-right"></i></div>
    </div>
    <div class="shop-images">
      <div v-for="(s,i) in shop.images" :key="i">
        <img :src="s" alt="">
      </div>
    </div>
    <div class="shop-address">
      <div><i class="el-icon-map-location">地址:</i>福州大学xxxx</div>
      <span>{{shop.address}}</span>
      <div style="width: 10px; flex-grow: 2; text-align: center; color: #e1e2e3">|</div>
      <div style="margin: 0 5px"><img src="https://p0.meituan.net/travelcube/bf684aa196c870810655e45b1e52ce843484.png@24w_16h_40q" alt=""></div>
      <div><img src="https://p0.meituan.net/travelcube/9277ace32123e0c9f59dedf4407892221566.png@24w_24h_40q" alt=""></div>
    </div>
  </div>
  <div class="shop-divider" style="background:border-radius 20% "></div>
  <div class="shop-open-time">
    <span><i class="el-icon-watch"></i></span>
    <div>营业时间:10:00-22:00</div>
    <div>{{shop.openHours}}</div>
    <span class="line-right">查看详情<i class="el-icon-arrow-right"></i></span>
  </div>
  <div class="shop-divider"></div>
  <div class="shop-voucher">
    <div>
      <div><span class="voucher-icon">代金券</span>
  <span class="line-right">查看详情 <i class="el-icon-arrow-right"></i></span>
</div>
    </div>
    <div class="voucher-box" v-for="v in vouchers" :key="v.id" v-if="!isEnd(v)">
      <div class="voucher-circle">
        <div class="voucher-b"></div>
        <div class="voucher-b"></div>
        <div class="voucher-b"></div>
      </div>
      <div class="voucher-left">
        <div class="voucher-title">{{v.title}}</div>
        <div class="voucher-subtitle">{{v.subTitle}}</div>
        <div class="voucher-price"><div>¥ {{util.formatPrice(v.payValue)}}</div>  <span>{{(v.payValue*10)/v.actualValue}}折</span></div>
      </div>
      <div class="voucher-right">
        <div v-if="v.type" class="seckill-box">
          <div class="voucher-btn" :class="{'disable-btn': isNotBegin(v) || v.stock < 1}" @click="seckill(v)">限时抢购</div>
          <div class="seckill-stock">剩余 <span>{{v.stock}}</span></div>
          <div class="seckill-time">{{formatTime(v)}}</div>
        </div>
        <div class="voucher-btn" v-else>抢购</div>
      </div>
    </div>
  </div>
  <div class="shop-divider"></div>
  <div class="shop-comments">
    <div class="comments-head">
      <div>网友评价 <span>(160)</span></div>
      <div><i class="el-icon-arrow-right"></i></div>
    </div>
    <div class="comment-tags" style="color: #BD3124;">
      <div class="tag" style="color: #BD3124;">味道赞(19)</div>
      <div class="tag" style="color: #BD3124;">牛肉赞(16)</div>
      <div class="tag" style="color: #BD3124;">菜品不错(11)</div>
      <div class="tag" style="color: #BD3124;">回头客(4)</div>
      <div class="tag" style="color: #BD3124;">分量足(4)</div>
      <div class="tag" style="color: #BD3124;">停车方便(3)</div>
      <div class="tag" style="color: #BD3124;">海鲜棒(3)</div>
      <div class="tag" style="color: #BD3124;">饮品赞(3)</div>
      <div class="tag" style="color: #BD3124;">朋友聚餐(6)</div>
    </div>
    <div class="comment-list">
      <div class="comment-box" v-for="i in 3" :key="i">
        <div class="comment-icon">
          <img src="https://p0.meituan.net/userheadpicbackend/57e44d6eba01aad0d8d711788f30a126549507.jpg%4048w_48h_1e_1c_1l%7Cwatermark%3D0" alt="">
        </div>
        <div class="comment-info">
          <div class="comment-user">林小鸟 <span>Lv5</span></div>
          <div style="display: flex;">
            打分
            <el-rate disabled v-model="4.5" ></el-rate>
          </div>
          <div style="padding: 5px 0; font-size: 14px">
            羊肉很好吃,店里面气氛很热闹,羊肉滋滋冒油,看起来非常有食欲,去了真滴不亏。
          </div>
          <div class="comment-images">
            <img src="https://qcloud.dpfile.com/pc/6T7MfXzx7USPIkSy7jzm40qZSmlHUF2jd-FZUL6WpjE9byagjLlrseWxnl1LcbuSGybIjx5eX6WNgCPvcASYAw.jpg" alt="">
            <img src="https://qcloud.dpfile.com/pc/sZ5q-zgglv4VXEWU71xCFjnLM_jUHq-ylq0GKivtrz3JksWQ1f7oBWZsxm1DWgcaGybIjx5eX6WNgCPvcASYAw.jpg" alt="">
            <img src="https://qcloud.dpfile.com/pc/xZy6W4NwuRFchlOi43DVLPFsx7KWWvPqifE1JTe_jreqdsBYA9CFkeSm2ZlF0OVmGybIjx5eX6WNgCPvcASYAw.jpg" alt="">
            <img src="https://qcloud.dpfile.com/pc/xZy6W4NwuRFchlOi43DVLPFsx7KWWvPqifE1JTe_jreqdsBYA9CFkeSm2ZlF0OVmGybIjx5eX6WNgCPvcASYAw.jpg" alt="">
          </div>
          <div>
            浏览120 &nbsp;&nbsp;&nbsp;&nbsp;评论5
          </div>
        </div>
      </div>
      <div style="display: flex; justify-content: space-between;padding: 15px 0; border-top: 1px solid #f1f1f1; margin-top: 10px;">
        <div>查看全部119条评价</div>
        <div><i class="el-icon-arrow-right"></i></div>
      </div>
    </div>
  </div>
  <div class="shop-divider"></div>

</div>
<script src="./js/vue.js"></script>
<script src="./js/axios.min.js"></script>
<!-- 引入组件库 -->
<script src="./js/element.js"></script>
<script src="./js/common.js"></script>
<script>

  const app = new Vue({
    el: "#app",
    data: {
      util,
      shop: {},
      vouchers: []
    },
    created() {
      // 获取参数
      let shopId = util.getUrlParam("id");
      // 查询酒店信息
      this.queryShopById(shopId);
      // 查询优惠券信息
      this.queryVoucher(shopId);
    },
    methods: {
      goBack() {
        history.back();
      },
      queryShopById(shopId) {
        axios.get("/shop/" + shopId)
        .then(({data}) => {
          data.images = data.images.split(",")
          this.shop = data
        })
        .catch(this.$message.error)
      },
      queryVoucher(shopId) {
        axios.get("/voucher/list/" + shopId)
        .then(({data}) => {
          this.vouchers = data;
        })
        .catch(this.$message.error)
      },
      formatTime(v){
        let b = new Date(v.beginTime);
        let e = new Date(v.endTime);
        return b.getMonth() + 1 + "月" + b.getDate() + "日 "
          +  b.getHours() + ":" + this.formatMinutes(b.getMinutes())
          + " ~ "/*  + e.getMonth() + 1 + "月" + e.getDate() + "日 " */
          +  e.getHours() + ":" + this.formatMinutes(e.getMinutes());
      },
      formatMinutes(m){
        if(m < 10) m = "0" + m
        return m;
      },
      isNotBegin(v){
        return new Date(v.beginTime).getTime() > new Date().getTime();
      },
      isEnd(v){
        return new Date(v.endTime).getTime() < new Date().getTime();
      },
      seckill(v){
        if(!token){
          this.$message.error("请先登录")
          // 未登录,跳转
          setTimeout(() => {
            location.href = "/login.html"
          }, 200);
          return;
        }
        if(this.isNotBegin(v)){
          this.$message.error("优惠券抢购尚未开始!")
          return;
        }
        if(this.isEnd(v)){
          this.$message.error("优惠券抢购已经结束!")
          return;
        }
        if(v.stock < 1){
          this.$message.error("库存不足,请刷新再试试!")
          return;
        }
        let id = v.id;
        // 秒杀抢购
        axios.post("/voucher-order/seckill/" + id)
        .then(({data}) => {
          // 抢购成功,这里输出订单id,支付功能TODO
          this.$message.success("抢购成功,订单id:" + data)
        })
        .catch(this.$message.error)
      }
    }
  })
</script>
</body>
</html>

测试

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值