vps搭建网站需要空间重庆小程序开发费用

张小明 2026/3/2 20:01:34
vps搭建网站需要空间,重庆小程序开发费用,wordpress4.6 中文,宝洁公司网站建设现状欢迎大家加入开源鸿蒙跨平台开发者社区#xff0c;一起共建开源鸿蒙跨平台生态。 浇水记录系统概述 浇水记录系统是植物养护应用的核心功能之一。它记录用户对植物的浇水操作#xff0c;帮助用户了解植物的浇水历史和规律。在Cordova框架与OpenHarmony系统的结合下#xff…欢迎大家加入开源鸿蒙跨平台开发者社区一起共建开源鸿蒙跨平台生态。浇水记录系统概述浇水记录系统是植物养护应用的核心功能之一。它记录用户对植物的浇水操作帮助用户了解植物的浇水历史和规律。在Cordova框架与OpenHarmony系统的结合下我们需要实现一个完整的浇水记录系统包括记录的创建、查询、统计和提醒功能。浇水记录数据模型classWateringRecord{constructor(plantId,amount,notes){this.idwater_Date.now();this.plantIdplantId;this.amountamount;// 毫升this.datenewDate();this.notesnotes;this.soilMoisturenull;// 土壤湿度百分比}}classWateringManager{constructor(){this.records[];this.loadFromStorage();}addWateringRecord(plantId,amount,notes){constrecordnewWateringRecord(plantId,amount,notes);this.records.push(record);this.saveToStorage();returnrecord;}getWateringRecordsForPlant(plantId){returnthis.records.filter(rr.plantIdplantId).sort((a,b)newDate(b.date)-newDate(a.date));}getLastWateringDate(plantId){constrecordsthis.getWateringRecordsForPlant(plantId);returnrecords.length0?records[0].date:null;}}这个浇水记录数据模型定义了WateringRecord类和WateringManager类。WateringRecord类包含浇水的详细信息包括植物ID、浇水量、日期和备注。WateringManager类管理所有浇水记录提供了添加记录和查询功能。与OpenHarmony传感器的集成functionrecordWateringWithSensorData(plantId,amount,notes){// 获取土壤湿度传感器数据cordova.exec(function(sensorData){console.log(传感器数据获取成功);constrecordnewWateringRecord(plantId,amount,notes);record.soilMoisturesensorData.moisture;wateringManager.records.push(record);wateringManager.saveToStorage();// 保存到数据库saveWateringRecordToDatabase(record);showToast(浇水记录已保存);},function(error){console.error(传感器数据获取失败:,error);// 即使传感器失败仍然保存记录constrecordwateringManager.addWateringRecord(plantId,amount,notes);saveWateringRecordToDatabase(record);},SensorPlugin,getSoilMoisture,[plantId]);}这段代码展示了如何与OpenHarmony的传感器服务集成。通过SensorPlugin我们可以获取土壤湿度等传感器数据并将其与浇水记录关联。这提供了更加准确的浇水数据。浇水记录列表展示functionrenderWateringRecords(plantId){constplantplants.find(pp.idplantId);if(!plant)return;constrecordswateringManager.getWateringRecordsForPlant(plantId);constcontainerdocument.getElementById(page-container);container.innerHTMLdiv classwatering-records-container h2${plant.name}的浇水记录/h2 button classadd-record-btn onclickshowAddWateringRecordDialog(${plantId}) ➕ 添加浇水记录 /button /div;if(records.length0){container.innerHTMLp classempty-message还没有浇水记录/p;return;}constrecordsListdocument.createElement(div);recordsList.classNamerecords-list;records.forEach(record{constrecordItemdocument.createElement(div);recordItem.classNamerecord-item;recordItem.innerHTMLdiv classrecord-info p classrecord-date${record.date.toLocaleString(zh-CN)}/p p classrecord-amount 浇水量:${record.amount}ml/p${record.soilMoisture?p classsoil-moisture土壤湿度:${record.soilMoisture}%/p:}${record.notes?p classrecord-notes备注:${record.notes}/p:}/div div classrecord-actions button onclickeditWateringRecord(${record.id})编辑/button button onclickdeleteWateringRecord(${record.id})删除/button /div;recordsList.appendChild(recordItem);});container.appendChild(recordsList);}这个函数负责渲染浇水记录列表。它显示了特定植物的所有浇水记录包括日期、浇水量、土壤湿度和备注。用户可以通过编辑和删除按钮管理记录。这种设计提供了清晰的记录展示。添加浇水记录对话框functionshowAddWateringRecordDialog(plantId){constdialogdocument.createElement(div);dialog.classNamemodal-dialog;dialog.innerHTMLdiv classmodal-content h3添加浇水记录/h3 form idadd-watering-form div classform-group label浇水量 (毫升)/label input typenumber idwatering-amount min0 required /div div classform-group label浇水日期/label input typedatetime-local idwatering-date required /div div classform-group label备注/label textarea idwatering-notes/textarea /div div classform-actions button typesubmit保存/button button typebutton onclickcloseDialog()取消/button /div /form /div;document.getElementById(modal-container).appendChild(dialog);// 设置默认日期为当前时间constnownewDate();document.getElementById(watering-date).valuenow.toISOString().slice(0,16);document.getElementById(add-watering-form).addEventListener(submit,function(e){e.preventDefault();constamountparseFloat(document.getElementById(watering-amount).value);constdatenewDate(document.getElementById(watering-date).value);constnotesdocument.getElementById(watering-notes).value;constrecordnewWateringRecord(plantId,amount,notes);record.datedate;wateringManager.records.push(record);wateringManager.saveToStorage();saveWateringRecordToDatabase(record);closeDialog();renderWateringRecords(plantId);showToast(浇水记录已添加);});}这个函数创建并显示添加浇水记录的对话框。用户可以输入浇水量、日期和备注。提交后新记录会被添加到wateringManager中并保存到数据库。这种设计提供了灵活的记录输入方式。浇水统计功能classWateringStatistics{constructor(wateringManager){this.wateringManagerwateringManager;}getTotalWateringCount(plantId){returnthis.wateringManager.getWateringRecordsForPlant(plantId).length;}getAverageWateringAmount(plantId){constrecordsthis.wateringManager.getWateringRecordsForPlant(plantId);if(records.length0)return0;consttotalrecords.reduce((sum,r)sumr.amount,0);returntotal/records.length;}getWateringFrequency(plantId,days30){constrecordsthis.wateringManager.getWateringRecordsForPlant(plantId);constcutoffDatenewDate();cutoffDate.setDate(cutoffDate.getDate()-days);constrecentRecordsrecords.filter(rnewDate(r.date)cutoffDate);return(recentRecords.length/days*7).toFixed(2);// 每周浇水次数}getWateringTrend(plantId,days30){constrecordsthis.wateringManager.getWateringRecordsForPlant(plantId);consttrend{};records.forEach(record{constdatenewDate(record.date).toLocaleDateString(zh-CN);trend[date](trend[date]||0)record.amount;});returntrend;}}这个WateringStatistics类提供了浇水的统计功能。getTotalWateringCount返回浇水总次数getAverageWateringAmount计算平均浇水量getWateringFrequency计算浇水频率getWateringTrend返回浇水趋势数据。这些统计信息可以帮助用户了解浇水规律。浇水提醒功能functioncheckWateringReminders(){plants.forEach(plant{constlastWateringDatewateringManager.getLastWateringDate(plant.id);constwateringIntervalplant.wateringInterval||7;// 默认7天if(!lastWateringDate){// 从未浇过水sendWateringReminder(plant.id,plant.name,从未浇过水);return;}constdaysSinceWateringMath.floor((newDate()-newDate(lastWateringDate))/(24*60*60*1000));if(daysSinceWateringwateringInterval){sendWateringReminder(plant.id,plant.name,已${daysSinceWatering}天未浇水);}});}functionsendWateringReminder(plantId,plantName,message){cordova.exec(function(result){console.log(提醒已发送);},function(error){console.error(提醒发送失败:,error);},NotificationPlugin,sendReminder,[{title:${plantName}需要浇水,message:message,plantId:plantId,type:watering}]);}// 定期检查浇水提醒setInterval(checkWateringReminders,60*60*1000);// 每小时检查一次这段代码实现了浇水提醒功能。checkWateringReminders函数检查所有植物如果某个植物超过设定的浇水间隔就发送提醒。通过NotificationPlugin我们可以向用户发送系统通知。这个功能帮助用户不会忘记给植物浇水。浇水记录导出functionexportWateringRecords(plantId){constplantplants.find(pp.idplantId);constrecordswateringManager.getWateringRecordsForPlant(plantId);constcsvContent[[日期,浇水量(ml),土壤湿度(%),备注],...records.map(r[r.date.toLocaleString(zh-CN),r.amount,r.soilMoisture||N/A,r.notes||])].map(rowrow.join(,)).join(\n);cordova.exec(function(result){console.log(浇水记录已导出);},function(error){console.error(导出失败:,error);},FilePlugin,exportData,[{filename:${plant.name}_watering_records.csv,content:csvContent}]);}这段代码实现了浇水记录的导出功能。通过FilePlugin我们可以将浇水记录导出为CSV格式的文件。这个功能允许用户备份和分析浇水数据。总结浇水记录系统是植物养护应用的重要功能。通过合理的数据模型设计、与OpenHarmony系统的集成和各种统计分析功能我们可以创建一个功能完整的浇水记录系统帮助用户科学地管理植物的浇水。
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

郑州网站公司排名wordpress翠竹林主题

Python剪贴板操作终极指南:Pyperclip让跨平台复制粘贴如此简单 【免费下载链接】pyperclip Python module for cross-platform clipboard functions. 项目地址: https://gitcode.com/gh_mirrors/py/pyperclip 想要在Python中轻松实现跨平台的剪贴板操作吗&am…

张小明 2026/1/17 5:00:54 网站建设

手机网站建设基本流程编程序可以做网站吗

✍✍计算机毕设指导师** ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡有什么问题可以…

张小明 2026/1/17 4:58:53 网站建设

茂名网站建设系统个人可以建设农资网站吗

计算机毕业设计校园服务平台alsns9(配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。 上课、报修、抢场、蹭饭、二手、兼职、失物、活动……校园生活被割裂成十几个微信群和永远排…

张小明 2026/1/17 4:56:52 网站建设

贵阳有哪些可以制作网站的公司吗dedecms做网站

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个基于AI的SwitchyOmega插件增强工具,能够自动分析用户浏览习惯,智能生成代理规则。功能包括:1. 自动识别常用网站并推荐最优代理节点 2. …

张小明 2026/1/17 4:54:51 网站建设

淘宝客网站制作视频教程网站开发相关外文书籍

如何转行黑客/网络安全行业?从0开始保姆级讲解! 网络安全技术被广泛应用于各个领域,各大企业都在争抢网络安全人才,这使得网络安全人才的薪资一涨再涨,想转行网络安全开发的人也越来越多。而想要顺利转行网络安全开发&…

张小明 2026/1/17 4:52:50 网站建设

重庆梁平网站建设公司wordpress第三方登录

优化 Windows 8 系统性能:禁用不必要的服务 1. 服务概述 在计算机开机运行时,服务是一类在后台持续运行的软件应用程序。Windows 操作系统拥有众多后台服务,这些服务为系统提供了诸如网络连接、视觉支持以及外部设备连接(如打印机服务)等基本功能。然而,每个后台运行的…

张小明 2026/1/17 4:50:49 网站建设