指导组--alpha冲刺Day3

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

会议照片

在这里插入图片描述

项目燃尽图

在这里插入图片描述

项目运行图片

后台博客管理界面大体框架

在这里插入图片描述

团队成员站立式会议总结

成员项目进展存在/遇到的问题从今天到明天会议的安排心得体会
072103402-卢成熙商铺展示完成,并且简单完成了商家添加优惠券功能有时候会出现数据库和缓存的数据不一致今天商铺展示的完成,商家优惠券系统大概有雏形,明天希望能完成到抢购优惠券的功能比较简单,就是知识点比较多,有时候需要去网上进行查询,但是这个知识是很重要的,更贴近企业实际开发,很有收获
102101117-刘建鑫完成了用户端前段界面子界面一的初步编写后端未完成,登录界面的接口暂不确定进一步美化和完善登录界面学会了编写一个登录页面感觉自己成长了很多
102101427-陈永裕完成了管理员端前端界面子界面一的大体框架各部分的交互困难寻找解决交互问题的方法更加输入了解前后端数据交互
102101413-王润富完成管理员端前端界面子界面三的大体框架白边问题难以解决查找一些解决白边问题的范例对用vue编写前端更加熟练
102101128-陈林旭完成管理员端前端界面子界面二的部分框架仍然对页面编写不够熟练,效率略低继续加强学习并编写管理员端前端页面在不断地学习中感觉自身充满了成就感
102101133-纳世荣完成管理员端前端新ui界面的部分框架新UI设计实现难度更高实现新UI设计界面前端界面代码实现更加熟练
291800137-赵鑫完善了用户端后端的数据库的搭建实体和关系繁多,构建数据库复杂梳理数据库关系,完善数据库结构并继续进行编写在思考过程中感觉自己的逻辑思维能力得到了很大的锻炼
102101134-范智强完成了用户端前段界面子界面三的大体框架初期未能与后端进行数据传递,页面空缺较多预留空间,并简单设计后期数据样式,继续编写在一次又一次的实操中对自己的技术越来越有自信
102101137-林鹏完成了用户端前段界面子界面五的大体框架用户端页面按钮众多,逻辑复杂理清按钮间的逻辑关系,然后进行编写对前端编写有了进一步的提升
031802441-张志敏完成管理员端前端界面子界面四的大体框架对各组件排版有困难学习并解决各组件排版问题感觉在冲刺过程中自己的编程技术得到了很大的提升

代码迁入

后端商铺查询功能

@Override
    public Result queryById(Long id) throws InterruptedException {
        // 解决缓存穿透
        Shop shop = queryWithPassThrough(id);

        if (shop == null) {
            return Result.fail("店铺不存在!");
        }
        // 7.返回
        return Result.ok(shop);
    }

    public Shop queryWithPassThrough(Long id) {
        String key = RedisConstants.CACHE_SHOP_KEY + id;
        String json = stringRedisTemplate.opsForValue().get(key);
        if(StrUtil.isNotBlank(json)) {
            return JSONUtil.toBean(json, Shop.class);
        }

        if(json != null) { //说明已经存了空值
            return null;
        }

        Shop shop = getById(id);
        if (shop == null) { //如果数据库没有这个数据就缓存空值
            stringRedisTemplate.opsForValue().set(key, "", RedisConstants.CACHE_SHOP_TTL,TimeUnit.MINUTES);
            return null;
        }
        stringRedisTemplate.opsForValue().set(key, JSONUtil.toJsonStr(shop), RedisConstants.CACHE_SHOP_TTL,TimeUnit.MINUTES);
        return shop;
    }

后端商家添加优惠券功能

@Override
    @Transactional
    public void addSeckillVoucher(Voucher voucher) {
        // 保存优惠券
        save(voucher);
        // 保存秒杀信息
        Coupon seckillVoucher = new Coupon();
        seckillVoucher.setVoucherId(voucher.getId());
        seckillVoucher.setStock(voucher.getStock());
        seckillVoucher.setBeginTime(voucher.getBeginTime());
        seckillVoucher.setEndTime(voucher.getEndTime());
        seckillVoucherService.save(seckillVoucher);
        // 保存秒杀库存到Redis中
        stringRedisTemplate.opsForValue().set(RedisConstants.SECKILL_STOCK_KEY + voucher.getId(), voucher.getStock().toString());
    }

前端博客管理界面大体框架

<template>
  <div style="height: 100%">
    <el-container style="height: 100%">
      <el-aside
        width="200px"
        style="background-color: rgb(238, 241, 246); height: 100%"
      >
        <el-menu
          :default-openeds="['1', '3']"
          style="height: 100%"
          background-color="rgb(0,21,41)"
          text-color="#fff"
        >
          <div
            style="
              height: 60px;
              line-height: 60px;
              text-align: center;
              background: #002140;
              color: white;
            "
          >
            <b>点评系统后台</b>
          </div>
          <el-submenu index="0">
            <template slot="title"
              ><i class="el-icon-house"></i>系统首页</template
            >
          </el-submenu>

          <!--博客管理栏-->
          <el-submenu index="1">
            <template slot="title"
              ><i class="el-icon-message"></i>博客管理</template
            >
            <el-menu-item-group>
              <template slot="title">分组一</template>
              <el-menu-item index="1-1">选项1</el-menu-item>
              <el-menu-item index="1-2">选项2</el-menu-item>
            </el-menu-item-group>
            <el-menu-item-group title="分组2">
              <el-menu-item index="1-3">选项3</el-menu-item>
            </el-menu-item-group>
            <el-submenu index="1-4">
              <template slot="title">选项4</template>
              <el-menu-item index="1-4-1">选项4-1</el-menu-item>
            </el-submenu>
          </el-submenu>

          <!--优惠券管理栏-->
          <el-submenu index="2">
            <template slot="title"
              ><i class="el-icon-menu"></i>优惠券管理</template
            >
            <el-menu-item-group>
              <template slot="title">分组一</template>
              <el-menu-item index="2-1">选项1</el-menu-item>
              <el-menu-item index="2-2">选项2</el-menu-item>
            </el-menu-item-group>
            <el-menu-item-group title="分组2">
              <el-menu-item index="2-3">选项3</el-menu-item>
            </el-menu-item-group>
            <el-submenu index="2-4">
              <template slot="title">选项4</template>
              <el-menu-item index="2-4-1">选项4-1</el-menu-item>
            </el-submenu>
          </el-submenu>

          <!--数据统计栏-->
          <el-submenu index="3">
            <template slot="title"
              ><i class="el-icon-setting"></i>数据统计</template
            >
            <el-menu-item-group>
              <template slot="title">分组一</template>
              <el-menu-item index="3-1">选项1</el-menu-item>
              <el-menu-item index="3-2">选项2</el-menu-item>
            </el-menu-item-group>
            <el-menu-item-group title="分组2">
              <el-menu-item index="3-3">选项3</el-menu-item>
            </el-menu-item-group>
            <el-submenu index="3-4">
              <template slot="title">选项4</template>
              <el-menu-item index="3-4-1">选项4-1</el-menu-item>
            </el-submenu>
          </el-submenu>
        </el-menu>
      </el-aside>

      <!--页眉头部-->
      <el-container>
        <el-header
          style="
            text-align: right;
            font-size: 12px;
            border-bottom: 1px solid #ccc;
            line-height: 60px;
            display: flex;
          "
        >
          <div style="flex: 1; font-size: 18px">
            <span style="cursor: pointer">666</span>
          </div>
          <el-dropdown style="width: 200px">
            <i class="el-icon-caret-bottom" style="margin-right: 15px"></i>
            <el-dropdown-menu slot="dropdown">
              <el-dropdown-item>查看</el-dropdown-item>
              <el-dropdown-item>新增</el-dropdown-item>
              <el-dropdown-item>删除</el-dropdown-item>
            </el-dropdown-menu>
          </el-dropdown>
          <span>欢迎您,超级管理员</span>
        </el-header>

        <!--时间选择,博客名称-->
        <div>
          <span>添加时间</span>
          <el-date-picker
            v-model="value2"
            type="datetime"
            placeholder="选择日期时间"
            align="right"
            :picker-options="pickerOptions"
          >
          </el-date-picker>
          <el-button type="primary" icon="el-icon-search">查询</el-button>
        </div>

        <!--表格内容-->
        <el-main>
          <el-table
            ref="multipleTable"
            :data="tableData"
            tooltip-effect="dark"
            border
            style="width: 100%"
            @selection-change="handleSelectionChange"
          >
            <el-table-column type="selection" width="55"> </el-table-column>
            <el-table-column fixed prop="date" label="博客编号" width="150">
            </el-table-column>
            <el-table-column prop="name" label="博客名称" width="300">
            </el-table-column>
            <el-table-column prop="province" label="用户id" width="120">
            </el-table-column>
            <el-table-column prop="city" label="评论数量" width="120">
            </el-table-column>
            <el-table-column prop="address" label="添加时间" width="300">
            </el-table-column>
            <el-table-column label="操作">
              <template slot-scope="scope">
                <el-button
                  size="mini"
                  @click="handleEdit(scope.$index, scope.row)"
                  >编辑</el-button
                >
                <el-button
                  size="mini"
                  type="danger"
                  @click="handleDelete(scope.$index, scope.row)"
                  >删除</el-button
                >
              </template>
            </el-table-column>
          </el-table>

          <!--页码选择-->
          <div style="margin-top: 20px">
            <el-pagination
              @size-change="handleSizeChange"
              @current-change="handleCurrentChange"
              :current-page="currentPage4"
              :page-sizes="[100, 200, 300, 400]"
              :page-size="100"
              layout="total, sizes, prev, pager, next, jumper"
              :total="1000"
            >
            </el-pagination>
          </div>
        </el-main>
      </el-container>
    </el-container>
  </div>
</template>

测试

博客管理界面测试结果

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值