返回顶部
首页 > 资讯 > 前端开发 > JavaScript >JavaScript实现语音排队叫号系统
  • 289
分享到

JavaScript实现语音排队叫号系统

2024-04-02 19:04:59 289人浏览 安东尼
摘要

目录介绍主要功能效果展示关键代码介绍 语音排队叫号系统广泛用于银行,餐饮,医院等场景。本系统采用Layui框架完成,前端体验不错,基于角色实现了权限管理,实现了数据库菜单无限级扩展和

介绍

语音排队叫号系统广泛用于银行,餐饮,医院等场景。本系统采用Layui框架完成,前端体验不错,基于角色实现了权限管理,实现了数据库菜单无限级扩展和菜单链接动态控制,系统实现扫码排队,语音叫号等功能。

开发语言:C# 

数据库SQL Server2017

开发工具:vs2019

技术:asp.net+layui

主要功能

带验证码的登录界面,背景可替换。

基于角色的权限管理。

系统具有打印和导出数据表格的功能。

支持筛选列和组合查询。

系统实现换肤功能。 

效果展示

关键代码


<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="TbLineUpList.aspx.cs" Inherits="PaiDuiSys.page.TbLineUpList" %>
 
<!DOCTYPE html>
 
<html xmlns="Http://www.w3.org/1999/xhtml">
<head runat="server">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
    <title>夜鹰排队叫号系统v1.0</title>
    <meta charset="utf-8"/>
    <meta name="renderer" content="WEBkit"/>
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1"/>
    <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1"/>
    <link rel="stylesheet" href="../lib/layui-v2.6.3/CSS/layui.css" rel="external nofollow"  media="all"/>
    <link rel="stylesheet" href="../css/public.css" rel="external nofollow"  media="all"/>
</head>
<body>
    <div class="layuimini-container">
    <div class="layuimini-main">
        <fieldset class="table-search-fieldset">
            <legend>搜索信息</legend>
            <div style="margin: 10px 10px 10px 10px">
                <fORM id="form1"  class="layui-form layui-form-pane" action="">
                    <div class="layui-form-item">
                        <div class="layui-inline">
                            <label class="layui-form-label">业务类型:</label>
                            <div class="layui-input-inline">
                                <select name="BuType" lay-verify="required">
                                                <option value="0" selected="selected">全部</option>
                                                <option value="1">个人业务</option>
                                                <option value="2">对公业务</option>                                               
                                </select>                
                            </div>
                        </div>
                        <div class="layui-inline">
                            <label class="layui-form-label">关键字</label>
                            <div class="layui-input-inline">
                                <input type="text" name="SearchKey" autocomplete="off" class="layui-input"/>
                            </div>
                        </div>
                       
                        
                        <div class="layui-inline">
                            <button type="submit" class="layui-btn layui-btn-primary"  lay-submit lay-filter="data-search-btn"><i class="layui-icon"></i> 搜 索</button>
                        </div>
                    </div>
                </form>
            </div>
        </fieldset>
 
        <script type="text/html" id="toolbarDemo">
            <div class="layui-btn-container">
                <button class="layui-btn layui-btn-sm layui-btn-normal data-add-btn" lay-event="add"> 添加 </button>
                <button class="layui-btn layui-btn-sm layui-btn-normal data-add-btn" lay-event="edit"> 编辑 </button>
                <button class="layui-btn layui-btn-sm layui-btn-normal data-add-btn" lay-event="delete"> 删除 </button>
                <button class="layui-btn layui-btn-sm layui-btn-normal data-add-btn" lay-event="showdetail"> 查看 </button>
            </div>
        </script>
       
        <table class="layui-hide" id="currentTableId" lay-filter="currentTableFilter"></table>
        
  
        </div>
        <script type="text/html" id="currentTableBar">
            <a class="layui-btn layui-btn-normal layui-btn-xs data-count-edit" lay-event="classnum">叫号</a>
            <a class="layui-btn layui-btn-normal layui-btn-xs data-count-edit" lay-event="classfinish">完成</a>
            <a class="layui-btn layui-btn-normal layui-btn-xs data-count-edit" lay-event="classovertime">过期</a>
            <a class="layui-btn layui-btn-normal layui-btn-xs data-count-edit" lay-event="showview">查看</a>
            
        </script>
 
 
</div>
<script src="../lib/layui-v2.6.3/layui.js" charset="utf-8"></script>
<script>
   
    layui.use(['form', 'table'], function () {
        var $ = layui.Jquery;
            form = layui.form;
            table = layui.table;
            layer = layui.layer;
        table.render({
            elem: '#currentTableId',
            url: '../ajax.ashx?rnum=2',
            toolbar: '#toolbarDemo',
            defaultToolbar: ['filter', 'exports', 'print', {
                title: '提示',
                layEvent: 'LAYTABLE_TIPS',
                icon: 'layui-icon-tips'
            }],
            cellMinWidth: 80,
            cols: [[
                { type: "checkbox", width: 50 }, 
                { field: 'ID', width: 80, title: 'ID' },
                { field: 'CreateTime', width: 200, title: '创建时间' },
                { field: 'CustName', width: 100, title: '客户姓名'},
                { field: 'CustIDCard', width:200, title: '身份证' },
                { field: 'CustTel', width: 120, title: '客户电话' ,edit: 'text'},
                { field: 'LineNum', width: 60, title: '排号' },
                { field: 'WindowNumStr', width: 120, title: '当前窗口' },
                { field: 'BuType', title: '类型', width: 120,hide: true },
                { field: 'BuTypeStr', title: '类型', width: 120},                
                { field: 'BuStatusStr', width: 80, title: '状态'},                
                { field: 'Memo', title: '备注(点击单元格改备注)', event: 'setMemo' },
                { field: 'CallTime', title: '最后一次叫号时间',  hide: true },
                { field: 'FinishTime', title: '业务完成时间',  hide: true },
                { field: 'OptName', title: '业务办理人员',hide: true },
                { field: 'OptUserId', title: '业务办理人员ID', hide: true },
                { field: 'WindowNum', title: '窗口号', hide: true },
                { field: 'LineNum', title: '排队号', hide: true },
                {title: '操作', width:300, toolbar: '#currentTableBar', align: "center"}
            ]],
            limits: [10, 15, 20, 25, 50, 100],
            limit: 10,
            page: true,
            skin: 'line',
            done(res, curr, count) {
                let data = res.data;
                data.forEach((value, i) => {
                   
                    //console.log(value.BuStatus);
                    //根据每一行的status字段,设置当前行的背景颜色
                    if (value.BuStatus =="1") {
                        $('.layui-table tr[data-index="' + i + '"]').css({ 'background-color': 'red','color':'#fff'});
                    } else if (value.BuStatus =="2") {
                        $('.layui-table tr[data-index="' + i + '"]').css({ 'background-color': '#3cb371', 'color': '#fff'});
                    } else if (value.BuStatus == "3"){
                        $('.layui-table tr[data-index="' + i + '"]').css({ 'background-color': '#ccc', 'color': '#fff'});
                    }
 
                });
            }        
        });
 
       
        // 监听搜索操作
        form.on('submit(data-search-btn)', function (data) {
           
            //执行搜索重载
            table.reload('currentTableId', {
                page: {
                    curr: 1
                }
                , where: {
                    BuType: data.field.BuType,
                    SearchKey: data.field.SearchKey
                }
            }, 'data');
 
            return false;
        });
 
        
        table.on('toolbar(currentTableFilter)', function (obj) {
            if (obj.event === 'add') {  // 监听添加操作
                var index = layer.open({
                    title: '新增用户',
                    type: 2,
                    zIndex: layer.zIndex,
                    id: 'LAY_layuiproadd',  //设定一个id,防止重复弹出
                    shade: 0.1,
                    maxmin: true,
                    // shadeClose: true,
                    area: ['60%', '520px'],
                    content: '../page/table/TbLineUpAdd.aspx',
                    success: function (layero, index) {
                        layer.setTop(layero);
                    }
                });
                $(window).on("resize", function () {
                    layer.full(index);
                });
            } else if (obj.event === 'delete') {  // 监听删除操作
                var checkStatus = table.checkStatus('currentTableId');
                var dataarray = checkStatus.data;
                var ids = "0";
                for (var i = 0; i < dataarray.length; i++) {
                    ids += "," + dataarray[i].ID;
                }
                ids += ",0";
                layer.confirm('确定删除该记录吗?一旦删除不能恢复!', { icon: 3, title: '提示' }, function (index) {
                    $.ajax({
                        url: '../Ajax.ashx', //要请求的url地址
                        type: 'POST', //请求方法 GET or POST
                        async: true, //是否使用异步请求的方式
                        timeout: 5000, //请求超时的时间,以毫秒计
                        data: {
                            rnum: 10,
                            ids: ids
                        },
                        dataType: 'JSON',
                        success: function (data) {
                            console.log(obj);
 
                            layer.alert("删除成功");
                            table.reload('currentTableId', {})
 
                        }
                    });
                });
 
            } else if (obj.event === 'edit') {
                var checkStatus = table.checkStatus('currentTableId');
                var dataarray = checkStatus.data;
                console.log(dataarray);
                if (dataarray.length > 0) {
                    layer.open({
                        type: 2 //此处以iframe举例
                        , title: '编辑用户'
                        , area: ['60%', '520px']
                        , shade: 0.1
                        , maxmin: true
                        , id: 'LAY_layuipro' //设定一个id,防止重复弹出
                        , content: '../page/table/TbLineUpEdit.aspx'
                        , zIndex: layer.zIndex
                        , success: function (layero, index) {
                            var item = dataarray[0];
                            var body = layer.getChildFrame('body', index);
                            console.log(o);
                            body.find("[name='rid']").val(item.ID);
                            body.find("[name='CustName']").val(item.CustName);
                            body.find("input[name='CustIDCard']").val(item.CustIDCard);
                            console.log(item.BuType);
                            console.log(body.find("input[name='BuType'][value='2']"));
                            if (item.BuType == "1") {
 
                                body.find("input[name='BuType'][value='1']").prop("checked", true);
                            }
                            else {
 
                                $(body).find("input[name='BuType'][value='2']").prop("checked", true);
                            }
                            body.find("[name='CustTel']").val(item.CustTel);
                            body.find("[name='Memo']").val(item.Memo);
                            layer.setTop(layero);
 
                            //关键点:父窗口调用子页面的getformobj函数,返回子页面的form对象,然后重绘子页面的数据。
                            var iframeWin = window[layero.find('iframe')[0]['name']];
                            var o = iframeWin.getformobj();
                            o.render();
 
 
                        }
                    });
 
                }
                else {
                    layer.msg('请先勾选一条要编辑的数据');
                }
            } else if (obj.event === 'showdetail') {
                var checkStatus = table.checkStatus('currentTableId');
                var dataarray = checkStatus.data;
                if (dataarray.length > 0) {
                    layer.open({
                        type: 2 
                        , title: '查看用户'
                        , area: ['50%', '520px']
                        , shade: 0.1
                        , maxmin: true
                        , id: 'layuiproview' //设定一个id,防止重复弹出
                        , content: '../page/table/TbLineUpView.aspx'
                        , zIndex: layer.zIndex
                        , success: function (layero, index) {
                            var item = dataarray[0];
                            var body = layer.getChildFrame('body', index);
                            console.log(item);
                            body.find("[name='rid']").val(item.ID);
                            body.find("[name='CustName']").val(item.CustName);
                            body.find("input[name='CustIDCard']").val(item.CustIDCard);
                            body.find("input[name='CreateTime']").val(item.CreateTime);
                            body.find("input[name='CallTime']").val(item.CallTime);
                            body.find("input[name='FinishTime']").val(item.FinishTime);
                            body.find("input[name='OptName']").val(item.OptName);
                            body.find("input[name='LineNum']").val(item.LineNum);
                            body.find("input[name='WindowNum']").val(item.WindowNum);
                           
                            if (item.BuType == "1") {
                                body.find("input[name='BuType'][value='1']").prop("checked", true);
                            }
                            else {
                                $(body).find("input[name='BuType'][value='2']").prop("checked", true);
                            }
                            body.find("[name='CustTel']").val(item.CustTel);
                            body.find("[name='Memo']").val(item.Memo);
                            layer.setTop(layero);
                            //关键点:父窗口调用子页面的getformobj函数,返回子页面的form对象,然后重绘子页面的数据。
                            var iframeWin = window[layero.find('iframe')[0]['name']];
                            var o = iframeWin.getformobj();
                            o.render();
                        }
                    });
 
                }
                else {
                    layer.msg('请先勾选一条要编辑的数据');
                }
            }
 
 
        });
        //监听单元格编辑
        table.on('edit(currentTableFilter)', function (obj) {
            var v = obj.value; //得到修改后的值
            var data = obj.data;//得到所在行所有键值
            var CurrentField = obj.field; //修改的字段
            $.ajax({
                url: '../Ajax.ashx', //要请求的url地址
                type: 'POST', //请求方法 GET or POST
                async: true, //是否使用异步请求的方式
                timeout: 5000, //请求超时的时间,以毫秒计
                data: {
                    rnum: "11",
                    id:data.ID,
                    value:v,
                    Field:CurrentField
                },
                dataType: 'json', //预期的服务器返回参数类型
                beforeSend: function () {
 
                },
                success: function (data) {
                    layer.msg("修改成功");
                },
                error: function () {
 
                },
                complete: function () {
 
                }
            });
           
        });
 
        //监听表格复选框选择
        table.on('checkbox(currentTableFilter)', function (obj) {
            //console.log(obj)
        });
        function getWindowVoice()
        {  // 获取浏览器中语音 (中文 + 本地服务)
            return window.speechSynthesis.getVoices().find(item => item.localService && item.lang === 'zh-CN');
        }
        table.on('tool(currentTableFilter)', function (obj) {
            var data = obj.data;
            if (obj.event === 'classnum') {
                const synth = window.speechSynthesis
                const message = new SpeechSynthesisUtterance();
 
                function voice_playback(text) {
                    message.text = text;
                    message.lang = 'zh';
                    message.volume = 1;     // 声音音量:1
                    message.rate = 1;       // 语速:1
                    message.pitch = 1;       // 音高:1
                    message.voice = getWindowVoice();  // 使用本地服务合成语音(若是获取不到 请异步获取, 加一个setTimeout)
                    //synth.cancel(message);
                    window.speechSynthesis.cancel();
                    synth.speak(message)
                }
                
 
                var s = "请" + obj.data.LineNum + "号顾客" + obj.data.CustName + "到" + obj.data.WindowNumStr + "号窗口办理业务";
 
              
                voice_playback(s);
                setstatus("4", obj.data.ID, obj.tr);
                
                return false;
            } else if (obj.event === 'classfinish') {
                setstatus("5", obj.data.ID, obj.tr);
                return false;
            } else if (obj.event === 'classovertime') {
                setstatus("6", obj.data.ID, obj.tr);
 
                return false;
            }
            else if (obj.event === 'setMemo') {
                layer.prompt({
                    formType: 2
                    , title: '修改用户【' + data.CustName + '】的备注'
                    , value: data.Memo
                }, function (value, index) {
                    layer.close(index);
                    $.ajax({
                        url: '../Ajax.ashx', //要请求的url地址
                        type: 'POST', //请求方法 GET or POST
                        async: true, //是否使用异步请求的方式
                        timeout: 5000, //请求超时的时间,以毫秒计
                        data: {
                            rnum:"7",
                            id: obj.data.ID,
                            memo: value
                        },
                        dataType: 'json', //预期的服务器返回参数类型
                        beforeSend: function () {
 
                        },
                        success: function (data) {
                            //console.log(data);
                            //同步更新表格中缓存对应的值
                            obj.update({
                                Memo: value
                            });
                        },
                        error: function () {
 
                        },
                        complete: function () {
                            
                        }
                    });
 
 
                   
                   
                });
            }
            else if (obj.event === 'showview') {
                layer.open({
                    type: 2
                    , title: '查看用户'
                    , area: ['50%', '520px']
                    , shade: 0.1
                    , maxmin: true
                    , id: 'layuiproview' //设定一个id,防止重复弹出
                    , content: '../page/table/TbLineUpView.aspx'
                    , zIndex: layer.zIndex
                    , success: function (layero, index) {
                        var item = obj.data;
                        var body = layer.getChildFrame('body', index);
                      
                        body.find("[name='rid']").val(item.ID);
                        body.find("[name='CustName']").val(item.CustName);
                        body.find("input[name='CustIDCard']").val(item.CustIDCard);
                        body.find("input[name='CreateTime']").val(item.CreateTime);
                        body.find("input[name='CallTime']").val(item.CallTime);
                        body.find("input[name='FinishTime']").val(item.FinishTime);
                        body.find("input[name='OptName']").val(item.OptName);
                        body.find("input[name='LineNum']").val(item.LineNum);
                        body.find("input[name='WindowNum']").val(item.WindowNum);                        
                        if (item.BuType == "1") {
                            body.find("input[name='BuType'][value='1']").prop("checked", true);
                        }
                        else {
                            $(body).find("input[name='BuType'][value='2']").prop("checked", true);
                        }
                        body.find("[name='CustTel']").val(item.CustTel);
                        body.find("[name='Memo']").val(item.Memo);
                        layer.setTop(layero);
                        //关键点:父窗口调用子页面的getformobj函数,返回子页面的form对象,然后重绘子页面的数据。
                        var iframeWin = window[layero.find('iframe')[0]['name']];
                        var o = iframeWin.getformobj();
                        o.render();
                    }
                });
            }
        });
 
        function setstatus(currentrnum,currentid,objtr) {
            $.ajax({
                url: '../Ajax.ashx', //要请求的url地址
                type: 'POST', //请求方法 GET or POST
                async: true, //是否使用异步请求的方式
                timeout: 5000, //请求超时的时间,以毫秒计
                data: {
                    rnum: currentrnum,
                    id: currentid
                },
                dataType: 'json', //预期的服务器返回参数类型
                beforeSend: function () {
 
                },
                success: function (data) {
                    //console.log(data);
                    switch (currentrnum) {
                        case "4": $(objtr).css({ "background-color": "red", "color": "#fff" });  $(objtr).find("td[data-field='BuStatusStr']").find("div").text("办理中"); break;
                        case "5": $(objtr).css({ "background-color": "#3cb371", "color": "#fff" });$(objtr).find("td[data-field='BuStatusStr']").find("div").text("已完成"); break;
                        case "6": $(objtr).css({ "background-color": "#ccc", "color": "#fff" }); $(objtr).find("td[data-field='BuStatusStr']").find("div").text("已过期"); break;
 
                    }  
                },
                error: function () {
 
                },
                complete: function () {
 
                }
            });
        }
 
    });
</script>
    
</body>
</html>

以上就是javascript实现语音排队叫号系统的详细内容,更多关于JavaScript语音排队叫号系统的资料请关注编程网其它相关文章!

--结束END--

本文标题: JavaScript实现语音排队叫号系统

本文链接: https://lsjlt.com/news/161080.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • JavaScript实现语音排队叫号系统
    目录介绍主要功能效果展示关键代码介绍 语音排队叫号系统广泛用于银行,餐饮,医院等场景。本系统采用Layui框架完成,前端体验不错,基于角色实现了权限管理,实现了数据库菜单无限级扩展和...
    99+
    2024-04-02
  • JavaScript如何实现语音排队叫号系统
    这篇文章给大家分享的是有关JavaScript如何实现语音排队叫号系统的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。介绍语音排队叫号系统广泛用于银行,餐饮,医院等场景。本系统采用Layui框架完成,前端体验不错,...
    99+
    2023-06-22
  • PHP开发点餐系统的排队取号功能实现步骤是什么?
    PHP开发点餐系统的排队取号功能实现步骤是什么?随着互联网技术的发展,越来越多的餐厅选择使用点餐系统来提高效率,提升用户体验。而排队取号功能则是现代用户尤为重视的一个功能。本文将详细介绍PHP开发点餐系统的排队取号功能实现步骤。一、需求分析...
    99+
    2023-11-01
    包括排队列表展示
  • JavaScript如何实现语音识别
    这篇文章将为大家详细讲解有关JavaScript如何实现语音识别,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。这里介绍一个开源的JavaScript语言输入库,名叫ann...
    99+
    2024-04-02
  • 玩转Win8系统语音控制功能实现真正的无鼠标语音操作
    在Windows系统电脑操作中用户都习惯了使用鼠标来执行各种命令,在最新的win8系统中加入新潮功能,即语音控制功能,能够让用户真正实现无鼠标的语音操作,是不是觉得很新奇呢?一起来看一下高手是如何来玩转win8系统下的语...
    99+
    2023-06-05
    Win8 语音控制 语音 控制 功能 系统
  • Go语言开发点餐系统中的餐厅排队功能详解
    Go语言开发点餐系统中的餐厅排队功能详解餐厅排队功能是现代点餐系统中不可或缺的一部分。这个功能可以让顾客在不用等待餐桌的情况下提前进行点餐,然后在指定的时间到达餐厅取餐。这不仅能提高餐厅的效率,还可以减少顾客等待时间,提升顾客的用餐体验。本...
    99+
    2023-11-01
    开发 Go语言 餐厅排队
  • Python控制windows系统音量实现实例
    使用python可以对windows系统的音量进行读取或者设置。 平台:visual studio code 语言:python 需要的python模块: 1、pyqt5 2、cty...
    99+
    2023-01-28
    Python控制系统音量 Python控制Windows音量
  • 呼叫中心系统对接web业务系统实现网页通话能力
    呼叫中心系统对接web业务系统实现网页通话能力,支持私有化部署的语音系统。 主需要将API接口融合到业务系统,调用参数即可实现呼叫与接听。通话记录支持post推送。 一,点击呼叫 地址:http://192.168.1.220/bltcal...
    99+
    2023-09-16
    php 开发语言
  • win7系统如何实现电脑录音
    这篇文章主要为大家展示了“win7系统如何实现电脑录音”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“win7系统如何实现电脑录音”这篇文章吧。在系统桌面,点击开始菜单。搜索录音。将录音拖到桌面上...
    99+
    2023-06-28
  • python进阶——AI视觉实现口罩检测实时语音报警系统
      大家好,我是csdn的博主:lqj_本人 这是我的个人博客主页:lqj_本人的博客_CSDN博客-微信小程序,前端,vue领域博主lqj_本人擅长微信小程序,前端,vue,等方面的知识https://blog.csdn.net/l...
    99+
    2023-08-31
    人工智能 python 计算机视觉
  • Java实现排球比赛计分系统
    初步计划:或许由于个人原因,排球计分系统在假期就完成了,一直未写博客,就这样一直在推就是不想写,在加上过完年就工作了,可能刚实习工作比较紧所以一直等到现在。写这个系统之前我简单构思了一下,因为离校前我去洛阳参加了一个多月的Java培训,所以...
    99+
    2023-05-31
    java 计分系统 ava
  • JavaScript实现简单抽奖系统
    本文实例为大家分享了JavaScript实现简单抽奖系统的具体代码,供大家参考,具体内容如下 模拟实现抽奖系统 前端使用JavaScript代码实现抽奖系统,代码如下: 样式代码: ...
    99+
    2024-04-02
  • javascript实现用户管理系统
    本文实例为大家分享了javascript实现用户管理系统的具体代码,供大家参考,具体内容如下 一些知识点梳理: 1.获取ta1表格中的某行某列的元素 document.getElem...
    99+
    2024-04-02
  • Go语言开发实现分布式消息队列系统的方法与实践
    在当今互联网高并发和大规模数据处理的背景下,分布式消息队列系统作为一种重要的中间件技术日益受到关注。它可以有效地缓解系统压力,提高系统的可扩展性和可靠性。Go语言由于其并发模型、高性能和简洁的特点,在开发分布式消息队列系统中具有独特的优势。...
    99+
    2023-11-20
    Go语言开发 方法与实践 分布式消息队列系统
  • android预置默认的语音信箱号码具体实现
    有些SIM卡在出厂时并没有预置VoiceMail number,但运营商又要求能够根据PLMN去自适应的从手机中读取到预设的VM number。在此介绍以xml的方式预置VM ...
    99+
    2022-06-06
    语音信箱 默认 Android
  • 计算机团队毕业设计:JAVA医院预约挂号系统+微信小程序系统设计与实现
    本次选用JAVA进行医院预约挂号系统团队毕业设计开发,包含:WEB网站系统+微信小程序系统。 项目功能-模块图 开发概要 开发操作系统:windows10 + 8G内存 + 500G WEB开发环境:JDK1.8 + Tomcat8 W...
    99+
    2023-09-02
    课程设计 微信小程序 小程序
  • C语言实现点菜系统
    本文实例为大家分享了C语言实现点菜系统的具体代码,供大家参考,具体内容如下 一、main.c #include<stdio.h> #include<string.h...
    99+
    2024-04-02
  • Vue2响应式系统之异步队列怎么实现
    这篇“Vue2响应式系统之异步队列怎么实现”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Vue2响应式系统之异步队列怎么实现...
    99+
    2023-06-30
  • 基于Java Springboot + Vue + MyBatis实现音乐播放系统
    目录摘要主要设计功能设计主要技术功能截图用户端首页登录注册歌单信息歌手信息我的音乐评论点赞管理员端首页用户管理歌手管理歌单管理部分代码数据库设计用户表评论表收藏表歌手歌曲表歌手表项目...
    99+
    2024-04-02
  • 基于C++如何实现简单的音乐系统
    本篇内容介绍了“基于C++如何实现简单的音乐系统”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!实现步骤第一:你需要了解 Beep 函数,不了...
    99+
    2023-07-04
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作