基于安卓实现多端餐饮管理系统

基于Python(Django)+SQLite 实现(Web) 点菜管理系统 在前端遇到的最多的问题就是对齐,在 JavaScript 以及 jQuery 的操作中,经常会发生无法绑定的情况,后来知道是因为我们的页面是动态加载,一次绑定无法将新的 HTML 元素也进行绑定,最后统一将绑定的操作放在了动态加载之后,而管理和后厨页面中的一些元素需要隔 10 秒、30 秒刷新餐桌信息和上菜信息的就需要在刷新的函数后面再进行绑定。 阅读详情

餐饮管理系统

版权所有 netral

rms 是很典型的管理系统,但是它迭代从未停止过,最近安卓设备流行,市上有了不少的系统,但是系统还是依懒鱼pc,
有没有办法把它脱离pc,独立的一个系统呢
技术难点,http服务实现,个个设备之间数据同步还的需要双向通信IM系统,数据库使用sqlite
-为了系统后期兼容性实现了国际化

  • 使用框架与技术,2019年谷歌推出的jetpack框架,不用说就是香,数据库orm使用room,
  • livedata,databinding,协助使用rxjava,轻松搞定mvvm,主题使用materialdesign2,或者materialdesign3,
  • 登录页面使用自定义键盘,普通系统输入法对大屏幕有点好友,
  • 好吧开始干
    登录页面
  • 在这里插入图片描述

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

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

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

打印 系统最重要的一个部分,分析了国内几个厂家打印机基本打印机原理一样的,看着sdk源码非常塑造,自己重新写了,wifi,蓝牙,usb,串口,等通信,还增加,打印机通功能,
打印机一旦出现问题,比如链接不正常,缺纸,打印错误,开盖等,所有的在线设备回收到通知,也可以指定设备,
为了防止漏单,特意写了cache,收到订单是打印机不正常,恢复正常是仍然可以补打印,
系统内部,整个生态需要技术已经内置了,已经经过测试了,
其他终端就是简单调用就是了,
出品管理,客户自助点餐,店铺广告(大屏幕电视),样样不会缺少,

目前系统就缺少一个云端,系统本事C/S 模式编写,云端也不用太多事情,就是数据存储与控制吧了,
系统非常合适,网络环境比较差的偏远地区,

基于android做一个账户管理系统的app 开发一套个人记账管理的APP,基本要求如下: 1、功能要求: 1)能够分门别类的记录个人的每一笔收入和支出信息; 2)能够管理收入、支出的历史记录,实现查询、更改及删除操作,查询时能够按类别进行过滤; 3)能够按星期、按月、按年统计收入和支出数据(分类统计),并输出结果。 4)收入类别、支出类别自定; 立即下载

相关推荐

Android项目源码可做毕设的简单学生管理系统

本项目是一个基于安卓的简单学生管理系统毕设作品,核心功能就是短信群发和json数据批量导入数据库。项目比较简单也比较卡哇伊,可以拿来照着源码写一个论文做一个简单的毕设。

基于android实现的在线投票App毕业设计源码

首页、个人中心、用户管理、投票类型管理、投票项目管理、投票信息管理、奖励信息管理、系统管理等登录注册、首页、投票项目、公告信息、我的等,在我的页面可以对个人中心、投票项目、投票信息、奖励信息等本系统功能完整,适合作为毕业设计、课程设计、数据库大作业学习。...

843

飞思卡尔16位单片机(二)——CodeWarrior开发环境搭建及新建、调试工程

一、安装CodeWarrior 飞思卡尔16位单片机的开发环境为CodeWarrior5.1,这个软件安装比较简单,软件的安装文件可以从相应的网站上下载。安装CodeWarrior所需要的电脑的硬件资源也比较宽泛,目前一般的电脑都可以满足这个要求,可以支持win10、win7等操作系统。安装过程按照按照软件的提示一步步操作即可。 二、安装USBDM驱动 USBDM是...

bigmarshal的博客 1万+

Android 文件管理系统

Android 文件管理系统

weixin_57585152的博客 203

从零开始开发AI Agent:基于大模型的智能体实战指南

### 摘要 本文介绍了AI Agent的开发全流程,从基础概念到实际部署,涵盖大模型集成、工具调用和记忆系统构建等核心技术。通过电商客服案例展示实战应用,并提供调试优化与部署方案,最后展望了AI Agent的未来发展方向,帮助开发者快速掌握智能体开发技能。

ghs_gss的博客 4868

Paddle账户与支付宝功能快速开通指南:全球化支付解决方案

本文为开发者提供了Paddle账户与支付宝功能集成的详细开通与配置指南。通过Paddle这一全球化支付与销售平台,开发者可一站式管理全球支付与税务合规,而集成支付宝则能无缝覆盖中国用户,实现“一个平台,覆盖全球主流支付方式”,有效提升支付转化率与收款效率。

qq_27496129的博客 1121

安卓宿舍管理系统源码

开发环境及工具:大等于jdk1.8,大于mysql5.5,idea(eclipse),Android Studio技术说明:springboot mybatis android代码注释齐全,没有多余代码,适合学习(毕设),二次开发,包含论文技术相关文档功能介绍:用户端:登录注册首页展示轮播,公告,报修,晚归登记点击公告可查看详情,点击报修进入报修界面,填写报修内容提交即可,登记晚归则输入日期及原因提交即可,缴费进入缴费列表点击缴费支付即可个人中心显示我的信息(可编辑),我的报修,我的晚归后台管理:统计分析:

wfuhui的博客 1724

雷电模拟器安装面具环境并过软件检测系列(看这一篇就够了!)

雷电模拟器安装面具环境并过基本软件的环境检测

qq_45059975的博客 6万+

基于安卓Android的企业员工管理系统设计与实现

(2)员工基本信息管理:员工基本信息包括姓名性别等基本信息,只有员工本人才能修改,本部门部长以及高层可以查看以及删除,而一个员工的基本信息是员工所以数据的依托,一旦员工基本信息删除,说明该员工不在该企业,则删除员工的所以数据。(1)实用性:本系统以员工管理为主要的目标,已为用户的服务为原则,并且融入的公司管理的理念,根据公司管理管理的具体需要,具有操作简单,开发成本降低,给员工管理提供了管理的决策支持。(3)安全性:员工管理开发中,不同的用户通过不同的权限实现系统的访问,系统保证的数据安全。

毕业作品网站 3684

Android Framework AMS面试题及参考答案

比如,应用 B 的 Activity 如果是 “singleTask” 启动模式,AMS 会查找应用 B 是否有包含该 Activity 的任务栈,若有则将这个任务栈切换到前台,并且清除该 Activity 之上的其他 Activity,实现流畅的跨应用跳转体验。如果一个 Activity 的启动依赖于另一个 Activity 的结果,AMS 会暂停当前 Activity 的部分生命周期操作,等待依赖的 Activity 完成相关操作后,再继续当前 Activity 的生命周期进程。

大模型大数据攻城狮的专栏 1863

Lammps实现随机粗糙度表面沸腾

Lammps实现随机粗糙度表面沸腾前言 前言

Rockyoung 2703

花火串串外卖管理系统的设计与实现

关于小旭:同学们,你们好!我从事计算机毕业设计服务已经有4年的时间了,在这个过程中,我帮助了许多学生顺利完成了他们的毕业设计。我熟练掌握多种计算机开发技术,包括Java、SSM、SpringBoot、Python、微信小程序、安卓APP等,能够为同学们的毕业设计提供全方位的技术支持。同时,我还提供远程部署安装服务确保项目能够稳定运行。👇👇以下毕设均可提供远程部署安装服务,文末有微信联系方式有需要的可以添加👇👇❤️❤️同学们在毕业设计选题、项目开发以及论文编写过程中遇到的任何问题,都可以随时留言咨询,

2301_79657448的博客 611

pg lib的信息及产生pg lib的三种方法

pg lib相比basic lib会多几方面pg 信息。除了pg arc(pg pin)以外,liberty还提供电压值,以及pmk cell的power_down_function功能相关信息。1.电压值除了常见的primary pg还有secondary pg和衬底。2.pg arc后端需要去做redhawk功耗分析,需要pg liberty提供pg arc,如果没有pg arc就需要手动去写custom lib代替3.pmk cell的power_down_function。

m0_61544122的博客 595

【毕业设计管理系统有哪些?】app,模型,小程序,前后端项目大全

系统:宿舍管理系统,订餐系统,博客,智慧农业,天气app,备忘录app,待办事项app,日历app,新闻阅读app,单片机程序,物业管理系统,商城系统,音乐播放器,视频播放器,二维码扫描系统,程序,网站,在线考试系统,教务系统,人力资源管理,药品管理系统,图书管理系统,选课系统,健身管理系统,图像识别,分类系统,成绩管理系统,学生管理系统,餐饮管理系统,物资管理系统,仓库管理系统,二手闲置商城,电影爬虫等等。物联网:C/C++(单片机) + SpringBoot(数据中台) + Vue(可视化)

blotemj.blog.youkuaiyun.com 673

《Zephyr OS 入门与实战》第3章:第一个 Zephyr 程序 - Blinky 实战

解决方法:确认设备树overlay文件已正确加载。返回值,确认驱动初始化状态。

2301_79143213的博客 541

深度学习工具包 DeepLearningToolbox

深度学习工具包Deprecation notice.-----This toolbox is outdated and no longer maintained.There are much better tools available for deep learning than this toolbox, e.g. [Theano](http://deeplearning.net/software/theano/), [torch](http://torch.ch/) or [tensorflow](http://www.tensorflow.org/)I would suggest you use one of the tools mentioned above rather than use this toolbox.Best, Rasmus.DeepLearnToolbox================A Matlab toolbox for Deep Learning.Deep Learning is a new subfield of machine learning that focuses on learning deep hierarchical models of data.It is inspired by the human brain's apparent deep (layered, hierarchical) architecture.A good overview of the theory of Deep Learning theory is[Learning Deep Architectures for AI](http://www.iro.umontreal.ca/~bengioy/papers/ftml_book.pdf)For a more informal introduction, see the following videos by Geoffrey Hinton and Andrew Ng.* [The Next Generation of Neural Networks](http://www.youtube.com/watch?v=AyzOUbkUf3M) (Hinton, 2007)* [Recent Developments in Deep Learning](http://www.youtube.com/watch?v=VdIURAu1-aU) (Hinton, 2010)* [Unsupervised Feature Learning and Deep Learning](http://www.youtube.com/watch?v=ZmNOAtZIgIk) (Ng, 2011)If you use this toolbox in your research please cite [Prediction as a candidate for learning deep hierarchical models of data](http://www2.imm.dtu.dk/pubdb/views/publication_details.php?id=6284)```@MASTERSTHESIS\{IMM2012-06284, author = "R. B. Palm", title = "Prediction as a candidate for learning deep hierarchical models of data", year = "2012",}```Contact: rasmusbergpalm at gmail dot comDirectories included in the toolbox-----------------------------------`NN/` - A library for Feedforward Backpropagation Neural Networks`CNN/` - A library for Convolutional Neural Networks`DBN/` - A library for Deep Belief Networks`SAE/` - A library for Stacked Auto-Encoders`CAE/` - A library for Convolutional Auto-Encoders`util/` - Utility functions used by the libraries`data/` - Data used by the examples`tests/` - unit tests to verify toolbox is workingFor references on each library check REFS.mdSetup-----1. Download.2. addpath(genpath('DeepLearnToolbox'));Example: Deep Belief Network---------------------```matlabfunction test_example_DBNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit RBM and visualize its weightsrand('state',0)dbn.sizes = [100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);figure; visualize(dbn.rbm{1}.W'); % Visualize the RBM weights%% ex2 train a 100-100 hidden unit DBN and use its weights to initialize a NNrand('state',0)%train dbndbn.sizes = [100 100];opts.numepochs = 1;opts.batchsize = 100;opts.momentum = 0;opts.alpha = 1;dbn = dbnsetup(dbn, train_x, opts);dbn = dbntrain(dbn, train_x, opts);%unfold dbn to nnnn = dbnunfoldtonn(dbn, 10);nn.activation_function = 'sigm';%train nnopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.10, 'Too big error');```Example: Stacked Auto-Encoders---------------------```matlabfunction test_example_SAEload mnist_uint8;train_x = double(train_x)/255;test_x = double(test_x)/255;train_y = double(train_y);test_y = double(test_y);%% ex1 train a 100 hidden unit SDAE and use it to initialize a FFNN% Setup and train a stacked denoising autoencoder (SDAE)rand('state',0)sae = saesetup([784 100]);sae.ae{1}.activation_function = 'sigm';sae.ae{1}.learningRate = 1;sae.ae{1}.inputZeroMaskedFraction = 0.5;opts.numepochs = 1;opts.batchsize = 100;sae = saetrain(sae, train_x, opts);visualize(sae.ae{1}.W{1}(:,2:end)')% Use the SDAE to initialize a FFNNnn = nnsetup([784 100 10]);nn.activation_function = 'sigm';nn.learningRate = 1;nn.W{1} = sae.ae{1}.W{1};% Train the FFNNopts.numepochs = 1;opts.batchsize = 100;nn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.16, 'Too big error');```Example: Convolutional Neural Nets---------------------```matlabfunction test_example_CNNload mnist_uint8;train_x = double(reshape(train_x',28,28,60000))/255;test_x = double(reshape(test_x',28,28,10000))/255;train_y = double(train_y');test_y = double(test_y');%% ex1 Train a 6c-2s-12c-2s Convolutional neural network %will run 1 epoch in about 200 second and get around 11% error. %With 100 epochs you'll get around 1.2% errorrand('state',0)cnn.layers = { struct('type', 'i') %input layer struct('type', 'c', 'outputmaps', 6, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %sub sampling layer struct('type', 'c', 'outputmaps', 12, 'kernelsize', 5) %convolution layer struct('type', 's', 'scale', 2) %subsampling layer};cnn = cnnsetup(cnn, train_x, train_y);opts.alpha = 1;opts.batchsize = 50;opts.numepochs = 1;cnn = cnntrain(cnn, train_x, train_y, opts);[er, bad] = cnntest(cnn, test_x, test_y);%plot mean squared errorfigure; plot(cnn.rL);assert(er<0.12, 'Too big error');```Example: Neural Networks---------------------```matlabfunction test_example_NNload mnist_uint8;train_x = double(train_x) / 255;test_x = double(test_x) / 255;train_y = double(train_y);test_y = double(test_y);% normalize[train_x, mu, sigma] = zscore(train_x);test_x = normalize(test_x, mu, sigma);%% ex1 vanilla neural netrand('state',0)nn = nnsetup([784 100 10]);opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samples[nn, L] = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.08, 'Too big error');%% ex2 neural net with L2 weight decayrand('state',0)nn = nnsetup([784 100 10]);nn.weightPenaltyL2 = 1e-4; % L2 weight decayopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex3 neural net with dropoutrand('state',0)nn = nnsetup([784 100 10]);nn.dropoutFraction = 0.5; % Dropout fraction opts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex4 neural net with sigmoid activation functionrand('state',0)nn = nnsetup([784 100 10]);nn.activation_function = 'sigm'; % Sigmoid activation functionnn.learningRate = 1; % Sigm require a lower learning rateopts.numepochs = 1; % Number of full sweeps through dataopts.batchsize = 100; % Take a mean gradient step over this many samplesnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex5 plotting functionalityrand('state',0)nn = nnsetup([784 20 10]);opts.numepochs = 5; % Number of full sweeps through datann.output = 'softmax'; % use softmax outputopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, train_x, train_y, opts);[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');%% ex6 neural net with sigmoid activation and plotting of validation and training error% split training data into training and validation datavx = train_x(1:10000,:);tx = train_x(10001:end,:);vy = train_y(1:10000,:);ty = train_y(10001:end,:);rand('state',0)nn = nnsetup([784 20 10]); nn.output = 'softmax'; % use softmax outputopts.numepochs = 5; % Number of full sweeps through dataopts.batchsize = 1000; % Take a mean gradient step over this many samplesopts.plot = 1; % enable plottingnn = nntrain(nn, tx, ty, opts, vx, vy); % nntrain takes validation set as last two arguments (optionally)[er, bad] = nntest(nn, test_x, test_y);assert(er < 0.1, 'Too big error');```[![Bitdeli Badge](https://d2weczhvl823v0.cloudfront.net/rasmusbergpalm/deeplearntoolbox/trend.png)](https://bitdeli.com/free "Bitdeli Badge")

2027-2029年最值得选择的Java毕业设计选题大全:1000个热门选题推荐✅✅✅

文章摘要 本文提供了一系列计算机科学与技术领域的毕业设计选题推荐,涵盖多个技术方向和应用场景,包括但不限于: 管理系统开发:如小区物业、办公设备、健身房会员、社区农产品直销等管理系统 数据分析与可视化:基于Python/Hadoop/Spark的购物中心流量分析、MOOC课程数据分析、电商评价分析等 小程序开发:校园公益互助、心理健康测评、政务服务便民等微信小程序 人工智能应用:基于深度学习/BERT模型的图书馆座位预约、舆情监测等智能系统 特色平台开发:民族手工艺品交易、校园二手书籍共享、猫咖管理等创新平

优快云毕设辅导道祖第一人、全网粉丝50W+,专注于大学生项目实战开发,讲解,毕业答疑辅导,高校老师/讲师/同行合作。以及产品测评宣传、工具推广等合作。同时招收学生代理、校园代理。 198

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Android实训——图书管理系统

此图书系统是最基础的Android studio管理系统开发案例,如需要可借鉴

m0_66689733的博客 5662

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

android+后台健身管理系统

android+后台健身管理系统

欧阳小白闯天涯 1323

基于Android Studio开发的人员管理系统APP

这是一个具有登录功能和人员信息增删改查功能的人员管理系统,在之前也有做过一个通过http协议与云平台对接的app,正好需要完成一个课程设计,所以就好好的补习了一下安卓开发的知识。这是一个简单的课程设计项目,作为非计算机或移动开发专门的专业的小伙伴完全够用。技术是越来越多的,我们能做到的只有精益求精,不断地学习新的技术,加油。

weixin_46155589的博客 4692

Android Visualizer 实战:把声音画出来

是系统提供的音频效果(AudioEffect)之一。它挂在音频链路上,,把数据回吐给你——画波形、画频谱、做响度表。

Android的专栏 301

Android 开发入门实践(十三):用 Intent、UiState 和 Reducer 理解 MVI 的状态更新

本文记录第141—145课对MVI架构的入门实践,通过“返回列表”功能逐步构建意图(NewsIntent)、状态(NewsUiState)与状态转换(reduce)机制。基于单向数据流,用户操作生成意图,ViewModel通过Reducer根据旧状态计算新状态,并通过StateFlow更新Compose界面。代码实现清晰分离关注点,强化了对状态管理、事件驱动与数据流的理解。

Easyhood的博客 333

RK-RK3572-Android16- 编译打包优化-OTA整包-差分包打包

这里主要记录一下 RK3572 在Android16 上面进行OTA升级的整包和差分包制作经验的一个分享,整理知识点,方便后续自己和其它同事开发提高工作效率、直接使用。不管哪一个平台,MTK 也好、RK也好 基本上都是不同Android版本各个子系统之间还是有一点点区别的,所以有必要记录整理知识点,方便提高开发效率、生产效率。针对OTA升级问题 ,再一次说明还是要看官方提供的文档,按照文档来。

十年饮冰,难凉热血 169

Android Message源码阅读

本文梳理了Android Handler机制中Message的核心设计:链表结构、消息复用池(sPool)及回收机制,重点解析了异步消息与同步屏障(SyncBarrier)的协同机制。当主线程需优先处理UI绘制等高优先级任务时,系统通过postSyncBarrier插入屏障,使Looper跳过普通同步消息,优先执行标记为异步的UI渲染任务,确保帧率流畅。该机制是保障Android界面响应性的关键技术之一。

u012116089的博客 203

BUUCTF-菜刀流量-MISC-学习笔记

从 1970-01-01 00:00:00 UTC 起算的秒数,——Wireshark 直接告诉你它回答的是谁;由表可知道,96帧返回了flag.rar。, 代表删除键,先删了4次,又删了1次。所以密码是:SuperMaster。解析128帧的响应,即133帧。所以这是一个标准抓包文件,用。解压压缩包拿到html代码。:选中 128 帧,展开。:128 和 131 的。能把一问一答放在一起看;是八进制(Oct)的数字。(或 TCP 层)看到。对比一下ASCii 码表。

晓梦林的博客 68

安卓部署Linux性能实测:一颗移动处理器,能否胜任日常 Linux 开发?

本文通过在一加Ace5上部署NimoteCode的ARM64 Linux环境,测试了其在CoreMark、SQLite编译及并行构建中的表现。结果显示,尽管单核性能约2.34GHz,多核扩展比达6.15×,但优化编译耗时仍高达35秒,反映移动处理器虽具备一定开发能力,却受限于文件系统开销与运行环境(如PRoot)。实际开发中,非优化构建效率较高,而并行编译可显著提速。结论:安卓手机可作为轻量级开发辅助工具,但无法替代桌面环境,真正价值在于便携性与即时响应,而非全功能替代。

一个不知名码农的专栏 326

Android Laya 与 Native Bridge:页面识别、双向通信、协议设计和崩溃定位

Laya 与 Native 通信的难点不在于某个或的写法,而在于边界:页面来源是否可信、协议是否明确、线程是否正确、请求是否幂等、页面是否仍然存在、日志是否能关联一次完整请求。建立这些边界后,才能把“页面白屏”“按钮无响应”“重复消息”和“Native 崩溃”拆成可验证的层次,并沿着真实调用链找到根因。

路在脚下,幸福在手中,莫贪!!!!! 162
下一篇: 基于安卓餐饮管理系统
别跑程序
博客等级 码龄15年 4粉丝 2原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值