springboot+vue运动场馆预约系统python+django体育馆预约系统

💖💖作者:IT跃迁谷毕设展
💙💙个人简介:曾长期从事计算机专业培训教学,本人也热爱上课教学,语言擅长Java、微信小程序、Python、Golang、安卓Android等。平常会做一些项目定制化开发、代码讲解、答辩教学、文档编写、也懂一些降重方面的技巧。平常喜欢分享一些自己开发中遇到的问题的解决办法,也喜欢交流技术,大家有技术代码这一块的问题可以问我!
💛💛想说的话:感谢大家的关注与支持!
💜💜
Java实战项目集
微信小程序实战项目集
Python实战项目集
安卓Android实战项目集

💕💕文末获取源码

运动场馆预约系统-系统简介

现如今,预约这种行为方式更适合当下快节奏,高效率的生活,随着技术不断发展和专业人才不断增加,在生活中,却又普遍存在运动场所排队久,没有场地可供使用等情况。线上的运动场馆预约系统的实现,可以解决生活中普遍存在的公共设施利用率低的问题。除此之外,针对目前的疫情管控工作,也有一定的帮助。管理人员可以通过设置开放时间段和限制容纳人数,对预约人流量进行控制,可以一定程度上减少因人员过度聚集导致疫情传播。
由此“IT跃迁谷毕设展”准备开发一个运动场馆预约系统。

运动场馆预约系统-技术选型

开发语言:Java+Python
数据库:MySQL
系统架构:B/S
后端框架:SpringBoot(Spring+SpringMVC+Mybatis)+Django
前端:Vue+HTML+CSS+JavaScript+jQuery

运动场馆预约系统-图片展示

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

运动场馆预约系统-代码展示

运动场馆预约系统-Java

public void run(String... args) throws Exception {
        //更新csms_vdstate表的信息
        List<Csms_Venue> csms_venueLists = adminService.queryAllVenue();
        for(Csms_Venue csms_venue:csms_venueLists){
            //删除原有记录
            adminService.deleteVdstate(csms_venue.getVenue_Id());
            //设置预定日期表
            Date date = new Date();
            for(int i=0;i<3;i++){
                //利用日历计算时间
                Calendar calendar = Calendar.getInstance();
                calendar.setTime(date);
                //加相应的天数
                if(i!=0){
                    calendar.add(Calendar.DATE,1);//把日期往后增加一天.整数往后推,负数往前移动
                }
                date = calendar.getTime();
                Csms_Vdstate csms_vdstate = new Csms_Vdstate();
                csms_vdstate.setVdstate_Id(csms_venue.getVenue_Id());
                csms_vdstate.setVdstate_Date(date);
                StringBuffer stringBuffer = new StringBuffer("11111111111111111111111");
                //将未开馆前的时间设置为0
                for(int y = 0;y<csms_venue.getVenue_Open(); y++){
                    if(stringBuffer.charAt(y)=='1'){
                        stringBuffer.replace(y,y+1,"0");
                    }
                }
                //将闭馆后的时间设置为0
                for(int y = stringBuffer.length()-1;y>=csms_venue.getVenue_Close(); y--){
                    if(stringBuffer.charAt(y)=='1'){
                        stringBuffer.replace(y,y+1,"0");
                    }
                }
                csms_vdstate.setVdstate_St(stringBuffer.toString());
                adminService.addVdstate(csms_vdstate);
            }
        }
        ScheduledTasksController scheduledTasksController = (ScheduledTasksController) SpringContextUtil.getBean("scheduledTasksController");
        scheduledTasksController.updateData();
    }

运动场馆预约系统-Python

    def choose_block(self, nodes):
        try:
            free_cnt = 0
            for i in self.left_block:
                logging.info("%d点 %d号 状态 %s" % (self.when_to_start,
                             i // 5 + 1, nodes[i].get_attribute('class')))
                if 'free' in nodes[i].get_attribute('class'):
                    free_cnt = free_cnt + 1
                    nodes[i].click()
                    logging.info("预定了 %d点 开始 %d 号" %
                                 (self.when_to_start, i // 5 + 1))
                    self.during_time = self.during_time - 1
                    if self.during_time > 0 and 'free' in nodes[i + 1].get_attribute('class'):
                        nodes[i + 1].click()
                        logging.info("预定了 %d点 开始 %d 号" %
                                     (self.when_to_start + 1, (i + 1) // 5 + 1))
                        self.during_time = self.during_time - 1
                    break
            if self.during_time > 0:
                for i in self.left_block:
                    logging.info("%d点 %d号 状态 %s" % (
                        self.when_to_start + 1, (i + 1) // 5 + 1, nodes[i + 1].get_attribute('class')))
                    if 'free' in nodes[i + 1].get_attribute('class'):
                        free_cnt = free_cnt + 1
                        nodes[i + 1].click()
                        logging.info("预定了 %d点 开始 %d 号" %
                                     (self.when_to_start + 1, (i + 1) // 5 + 1))
                        self.during_time = self.during_time - 1
                        break
            if free_cnt == 0:
                raise ValueError("没有空场地了")
        except IndexError as e:
            raise IndexError('选择场地时数组越界')
        except Exception as e:
            raise

    def move_verify(self):
        t = datetime.now()
        bg_ = base64.b64decode(self.find_by_classname(
            'verify-img-panel').find_element_by_tag_name('img').get_attribute('src')[22:])
        tp_ = base64.b64decode(self.find_by_classname(
            'verify-sub-block').find_element_by_tag_name('img').get_attribute('src')[22:])
        bg = cv2.imdecode(np.frombuffer(bg_, dtype=np.uint8), flags=1)
        tp = cv2.imdecode(np.frombuffer(tp_, dtype=np.uint8), flags=1)
        distance = identify_gap(bg, tp, os.path.join(
            filePath, 'old_log', '%s-%d-%d.png' % (threading.current_thread().getName(), t.month, t.day)))
        tracks = get_track(distance)
        slider = self.find_by_classname('verify-move-block')
        self.move_to_gap(slider, sum(tracks) + 3)

运动场馆预约系统-结语

💕💕
Java实战项目集
微信小程序实战项目集
Python实战项目集
安卓Android实战项目集
💟💟如果大家有任何疑虑,欢迎在下方位置详细交流。

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT跃迁谷毕设展

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值