-
1. 概述总结“抽奖大师活动小程序系统源码”是一套专为微信小程序设计的商业级营销解决方案。它旨在通过趣味性的抽奖互动,帮助企业高效实现线上产品推广、品牌曝光、精准用户信息收集以及线下引流等多重营销目标。该源码支持SAAS模式无限开,提供源码部署,并承诺开源、正版授权及在线更新,为商家提供了高灵活性和自主可控的营销工具。 2. 功能介绍此系统源码具备两大核心功能,旨在提升用户参与度和商家运营效率:广告观看强制机制系统支持运营者进行高级设置,强制要求用户必须观看指定秒数的广告后,才能获得参与抽奖的资格。这一设计巧妙地实现了流量变现,为商家创造了额外的广告收益。DIY前端个性化装修系统支持自行装修前端界面,商家可以根据品牌调性、活动主题(如节日庆典、新品发布)自由设计小程序页面,打造独一无二的视觉风格,增强用户互动体验和品牌认知。 3. 适用场景与行业价值“抽奖大师”凭借其灵活的配置和强大的功能,适用于多种业务场景,具有显著的市场价值:适用场景线上推广与吸粉通过设置诱人的奖品,吸引用户参与并分享活动,实现个人号吸粉和品牌快速扩散。线下门店引流顾客在小程序内抽中优惠券或礼品后,可引导至线下门店核销,有效带动客流量。用户信息收集将抽奖环节与信息填写绑定,可以精准收集目标用户数据,为后续营销提供支持。电商促销与电商平台联动,发放优惠券或实物奖品,提升用户粘性和购买转化率。 行业价值低成本获客相比传统广告投放,抽奖活动依靠用户自发分享,能有效降低获客成本。高转化率趣味性的互动形式能极大提升用户参与积极性,从而带动流量裂变和销售转化。数据驱动决策后台的数据统计功能,能帮助商家分析活动效果,优化营销策略。 问答环节Q1:请问这个源码是“单机版”还是“SAAS版”?可以部署在自己服务器上吗?A1: 该源码是“SAAS版”模式,支持无限开。它采用源码部署方式,这意味着您可以将其部署在自己的服务器上,拥有完全的控制权和数据所有权。(来源:商品页面内容) Q2:我不懂技术,购买后能直接使用吗?如何搭建?A2: 该源码主要面向具备一定技术能力的开发者或企业。我们在售前建议您联系开发者进行详细演示,确保您充分理解产品功能。购买后,您需要具备一定的技术能力或自行寻找技术人员进行部署和配置。(来源:商品页面内容) Q3:怎么安装呢?A3: 本产品通过微擎云端在线交付安装。
-
1. 概述总结在当今快节奏的生活中,顾客对便捷服务的需求日益增长。传统的理发店模式常常面临顾客到店排队时间长、错峰时段客流不均、员工排班混乱、营销手段单一等痛点。为了解决这些问题,一款集手机取号、在线预约、多门店管理、会员营销于一体的理发店预约系统应运而生。 该系统以微信小程序、服务号及手机H5为载体,为理发店提供了一个全方位的数字化解决方案。它不仅能帮助顾客告别排队烦恼,实现“到店即享”,还能让店主通过数据驱动,实现智能排班、降本增效,精准把握市场脉搏。这套系统是传统理发店向现代化、智能化转型的关键一步。 2. 功能介绍根据您提供的链接及行业资料,理发店预约系统通常包含以下核心功能模块:多端协同,覆盖全场景系统支持用户端(顾客)、发型师端、店长端(管理员) 以及多门店管理,满足不同角色的使用需求。无论是单店还是连锁品牌,都能实现统一管理。智能预约与排队顾客可以实时查看各门店、各发型师的空闲时段,在线选择服务项目(如剪发、染发、烫发)并提交预约。系统也支持“手机取号”,让顾客到店后无需排队,系统自动叫号。会员与营销体系内置VIP会员卡和优惠券系统,帮助商家有效锁客、拓客。支持会员充值、积分兑换、新客优惠等多种营销活动,提升顾客复购率。可视化DIY装修系统前端UI支持可视化拖拽式设计,商家可以根据自己的品牌风格,自由定制小程序界面,无需专业编程知识。数据驱动决策系统后台提供详尽的经营数据报表,包括预约量、客单价、热门项目、高峰时段等,帮助经营者精准分析,做出科学决策。多端互通系统通常适用于微信小程序、微信服务号、手机H5网页等多个端口,数据互通,方便顾客从不同渠道访问。 3. 适用场景与行业价值适用场景:连锁及单店理发店无论是大型连锁品牌还是社区小店,都适用。美发理容院提供剪发、染发、烫发、护发等综合服务的门店。男士理容馆专注于男士理发的Barbershop。美容美发综合店同时提供美容与美发服务的门店。 行业价值:提升顾客体验顾客可随时随地进行预约,有效减少等待时间,提升满意度。优化运营效率实现智能排班和员工管理,减少前台工作压力,降低人力成本。通过预约系统合理安排客流,能有效错峰,提升门店坪效。增强盈利能力通过会员卡和优惠券等营销工具,有效提升顾客粘性和复购率,增加客单价,实现营收增长。数据驱动经营通过分析后台数据,商家可以精准了解顾客偏好和消费习惯,从而优化服务项目和定价策略,实现精准营销。 问答环节Q1:这套系统适合只有几名员工的社区小店吗?A: 非常合适。系统支持单门店管理,其核心功能如“手机取号”和“在线预约”能有效解决小店顾客排队时间长的痛点,提升顾客体验和店铺效率。同时,通过会员和优惠券功能,社区小店也能轻松做好老客维护和新客引流。 Q2:系统的前端UI具体能怎么自定义?A: 系统通常提供可视化拖拽式设计工具,您可以像搭积木一样,自由调整首页的布局,更换背景图、颜色主题,以及重新排列功能模块(如“预约”、“作品展示”、“热门活动”等),无需懂代码就能打造出符合您品牌个性的专属界面。 Q3:顾客预约后,如果临时有事,可以取消预约吗?会有什么限制吗?A: 可以的。系统通常支持顾客在预约时间到来前,在用户端自行取消预约。商家也可以根据自身运营规则,在后台设置“最晚取消时间”(例如,预约前1小时),并灵活设定爽约的处理规则,如累计爽约次数限制等。 Q4:这个系统能帮我管理发型师的工作安排和提成吗?A: 可以。在店长端或后台管理系统中,您可以查看每个发型师的预约排班表,实时了解其工作负荷。同时,系统能够记录每个发型师完成的服务项目和对应的业绩,为后续的提成核算和绩效管理提供准确的数据支持。 Q5:我购买了这套系统,后续有技术或售后问题怎么办?A: 该应用通过微擎云端交付安装,根据微擎平台的信息,该商品由开发商“浩创云”提供,并提供了在线客服咨询渠道。您可以通过平台内的客服功能或企业微信联系开发商,获取技术支持和使用指南。
-
一、概述总结这是一款功能全面、灵活强大的活动报名系统源码,旨在帮助各类组织和个人高效、便捷地管理活动报名流程。系统支持自定义表单、扫码核销、多组织机构管理、推广分销等多种功能,可广泛应用于活动比赛、企业培训、行业展会、商会与团建等各类线上线下场景。该系统支持SAAS无限开、源码部署,并兼容微信小程序、微信服务号及手机H5多端互通,为活动主办方提供了一站式的数字化报名管理解决方案。 二、功能介绍自定义表单与信息登记系统支持万能自定义表单,可根据不同活动需求灵活设置报名登记内容,满足多样化的信息收集需求。多元活动管理支持发布活动、管理报名记录,并能灵活设置活动参数,如多规格价格、人数限制、附件上传等。数据统计看板提供直观的数据统计看板,帮助主办方实时掌握报名情况。多城市站与多组织机构支持多城市站功能,并允许创建多个组织机构,每个机构可独立发布和管理自己的活动,实现灵活的分权管理。分销推广功能内置推广分销功能,支持设置推广佣金,通过社交裂变有效扩大活动影响力。多样的核销方式支持多种核销方式,包括手机扫码核销,并兼容硬件扫码器,提升现场签到效率。排行榜与签到功能支持活动报名排行榜功能,并具备签到管理能力,增加活动趣味性与现场管理效率。多端互通系统适用于微信小程序、微信服务号、手机H5,确保参与者可通过多种渠道便捷报名。 三、适用场景与行业价值适用场景:活动与赛事适用于羽毛球比赛、各类体育赛事、文艺比赛等活动的报名与信息收集。企业场景适用于企业培训、团建活动、内部会议、行业展会等的报名管理。社会与组织适用于商会报名、社区活动、公益讲座、社团招募等场景。商业营销可用于外部营销活动、产品发布会、体验课招募等,通过分销功能实现引流。 行业价值:提升效率将传统繁琐的线下报名、人工统计流程线上化,大幅减少人力成本,提升管理效率。数据驱动通过后台数据看板,主办方可以清晰掌握报名人数、来源渠道等关键数据,为活动复盘和后续运营提供决策依据。增强体验参与者可通过手机端轻松完成报名、支付与现场核销,告别排队填表,优化了参与体验。拓展渠道借助多端支持和分销推广功能,活动可以快速触达更多潜在参与者,扩大活动影响力。灵活可控自定义表单、多规格价格、人数限制等功能,让主办方可以根据不同活动的特点灵活配置,确保活动顺利进行。 四、问答环节问:这个系统支持哪些平台或设备访问?答: 本系统兼容微信小程序、微信服务号以及手机H5页面,参与者可以通过多种方式在线报名。同时,后台管理也支持电脑端操作。 问:如何进行现场签到的核销工作?答: 系统支持多种核销方式。您可以使用手机直接扫描参与者的电子票或二维码进行核销,也可以兼容硬件扫码器,现场工作人员可快速完成签到,适合大型活动。 问:系统是否支持多层级的管理或不同机构发布活动?答: 支持。系统具备“多组织机构”功能,可以创建多个组织机构,并允许它们各自独立发布和管理自己的活动,适用于需要分权管理的场景。 问:我想通过活动进行推广,这个系统有相关功能吗?答: 有的。系统内置了推广分销功能,您可以设置分销佣金,参与者或推广员通过分享活动链接促成报名后,可获得相应佣金,从而实现活动的裂变式传播。 问:这个系统是源码开放的,还是需要按年付费使用?答: 根据产品介绍,该应用系统支持SAAS无限开以及源码部署,购买后可以通过微擎云端部署到自己服务器的源码,并可进行二次开发。购买前建议联系开发者详细了解授权与部署细节。
-
1. 概述总结该二手闲置转卖交易系统是一套功能全面、定位清晰的综合性解决方案,旨在为用户搭建一个高效、安全、可信的在线二手商品交易平台。系统不仅覆盖了从商品发布、智能搜索、即时沟通到交易担保、物流跟踪、售后维权的完整交易闭环,还创新性地融入了AI智能识物、动态社区、求购需求和分销推广等社交化与智能化功能,以提升用户粘性和交易效率。系统采用开源源码交付方式,并支持SAAS无限开,赋予了运营者高度的自主权和业务扩展性,可灵活适配个人、社区、校园乃至企业级等多种业务场景,是快速切入二手经济赛道的理想技术载体。 2. 功能介绍该系统集成了二手交易平台所需的核心模块与前沿特性,主要包括:商品发布与管理支持用户快速发布闲置物品,可上传多张图片/视频,填写详细的分类、成色、价格、交易方式等信息。系统还集成了AI智能识物功能,可辅助用户自动识别商品信息,简化发布流程。卖家可在后台对商品进行编辑、上下架及库存管理。智能搜索与发现提供多维度搜索与筛选功能,买家可按关键词、分类、价格区间、成色、地理位置等条件精准查找商品。系统内置AI推荐算法,可根据用户的浏览和交易行为,在首页和详情页推荐“可能感兴趣”的商品,提升转化效率。撮合与沟通工具内置即时通讯(IM)系统,支持买卖双方发送文字、图片、语音及商品链接进行实时沟通和议价。系统还提供“出价/还价”功能,以及预设的快捷短语,降低沟通门槛,促成交易。交易担保与安全支付采用主流的“资金托管”模式,买家付款后资金暂由平台冻结,待确认收货后再打款给卖家,保障双方交易安全。集成了微信支付、支付宝等主流支付渠道,并支持信用支付方式。物流与售后管理支持在线查询物流信息,并提供物流跟踪功能。系统内置了完整的售后流程,支持买家发起退款退货申请,并可引入平台客服介入纠纷裁决,保障用户权益。社交化运营模块包含动态社区功能,用户可发布帖子、分享交易心得、加入圈子、关注好友,形成社区化交易生态,增强用户粘性和平台活跃度。特色增值功能 AI智能识物利用图像识别技术,自动识别商品图片内容,辅助分类和发布。求购需求买家可以发布求购信息,让卖家主动联系,实现反向撮合。广告投放与分销推广支持商家付费置顶商品、投放广告,并内置分销机制,帮助平台和卖家进行流量推广和变现。实名认证建立用户实名认证机制,有效提升交易双方的信誉度,减少欺诈风险。 3. 适用场景与行业价值适用场景:个人闲置交易适用于普通消费者处理家中闲置的电子产品、服饰、家居、图书等各类物品,实现资源的循环利用。社区与校园市场适合在社区、小区、校园等相对封闭的熟人/半熟人环境中搭建本地化二手交易平台,强化信任基础,降低配送成本。小微商家/个人创业为拥有少量稳定货源(如手工制品、尾货)的个人卖家或小型商家提供开店和经营工具,支持多库存管理。垂直领域二手市场可针对特定品类(如二手手机、奢侈品、母婴用品)进行定制化运营,满足特定用户群体的需求。企业级二手回收业务其内置的回收估价、质检登记等模块,可用于搭建专业的二手商品回收与再销售平台。 行业价值:促进循环经济发展通过高效匹配闲置物品的供需双方,直接推动资源的循环利用,符合绿色、低碳、可持续的消费趋势。降低交易信任成本通过实名认证、资金担保、信用评价、纠纷仲裁等机制,系统性解决了二手交易中信息不对称和信任缺失的核心痛点。提升交易效率与体验AI辅助发布、智能搜索推荐、即时沟通、在线支付及物流集成等功能,极大地简化了交易流程,提升了用户体验。构建商业化路径系统内置的广告投放、会员付费、分销推广等多种盈利模式,为平台运营者提供了清晰的商业化变现路径,支持业务的可持续发展。驱动线上线下融合通过LBS(基于位置服务)同城分站功能,能有效引导线上信息匹配至线下成交,激活本地社区经济。 问答环节Q1:这个系统是开源的吗?我可以自行修改和二次开发吗?A1:是的,根据链接介绍,该系统是开源的,提供源码交付。这意味着您可以获得完整的源代码,支持根据自身需求进行二次开发和定制,实现技术自主可控。 Q2:系统是否支持多端使用?比如微信小程序、APP等?A2:支持。该系统的技术架构(如使用UniApp开发)使其具备跨平台能力,可以打包生成微信小程序、H5网页、APP(Android和iOS) 等多种前端应用,满足不同用户的使用习惯。 Q3:系统如何保障交易安全,防止欺诈?A3:系统设置了多重安全机制:首先,要求用户进行实名认证,增加交易真实性;其次,交易采用资金担保模式,买家付款后资金由平台托管,确认收货后才打款给卖家;此外,系统还内置了聊天记录存证、敏感词拦截、一键举报以及纠纷仲裁等功能,全方位保障交易安全。 Q4:我想运营一个本地(如社区或校园)的二手交易平台,这个系统适合吗?A4:非常适合。该系统支持多城市切换和LBS地理位置定位,可以自动推荐同城或附近的商品信息,非常有利于促进本地化当面交易。同时,其社区和圈子功能也能很好地增强本地用户的互动和粘性。 Q5:怎么安装呢?A5:该应用基于微擎云端交付。
-
一、概述总结百变分销级差模式商城小程序系统是一款适配微信小程序的商业赋能工具,以微擎系统交付为核心,提供加密源码保障官方正品权益。系统打破传统单一分销局限,整合 1-3 级分销、级差分销、加权分红等多种灵活模式,为商家构建多元化分销体系,助力拓宽销售渠道、提升盈利效率。 二、功能介绍核心分销模式矩阵基础分销:支持 1-3 级传统分销模式,规则可灵活自定义配置。 进阶分销:涵盖级差分销、加权分红、返还分销等多元形式,满足不同商业场景需求。 特色激励:包含双轨多轨、分红释放、平级奖励、团队奖励功能,强化分销动力。 代理体系支持提供全国区域、街道级代理合伙人权限,覆盖广泛区域运营场景。 经销商申请通道开放,支持多品牌合作下的分销权限管理。 三、适用场景与行业价值适用场景多品牌分销运营:适配白酒(五粮液、泸州老窖等)、汽车轻奢漆面养护等多品类产品推广。 层级化代理管理:适合需要搭建全国区域、街道级代理体系的企业。 创业型商家起步:支持 “申请创业装” 模式,满足中小商家低成本启动分销业务的需求。行业价值降低运营门槛:微信小程序适配属性,无需额外开发成本,快速上线分销业务。 提升分销效率:多元激励模式与层级代理体系结合,激发推广积极性,扩大销售覆盖。 保障长期运营:持续免费更新与高性价比续费,助力商家适应市场变化,稳定发展。四、问答环节问:该系统支持哪些小程序平台?答:目前适用微信小程序,通过微擎系统完成交付。 问:系统包含哪些分销模式?答:包含 1-3 级传统分销、级差分销、加权分红、返还分销、双轨多轨等多种模式,且会持续更新。 问:源码是否开源?安全保障如何?答:源码已加密,非开源模式,提供官方正品保障,确保系统使用安全。 问:该系统适合哪些行业使用?答:适合白酒、汽车漆面养护等需要搭建分销或代理体系的行业,也适配创业型商家启动分销业务。
-
想在支付宝小程序中接入数字人智能交互客户端,现在只提供了web端的接入方式,请问有小程序的接入方式吗?
-
我编写了一个有700多行代码的Java程序,已经打包为可以运行的Jar程序,双击运行后可以读取D分区下的建立的“boxs.txt”文件,读取其中的数据生成大小及位置任意设定的长方体,可以设定描边和填充颜色,可以设定透明度,可以旋转长方体,可以根据字符串来排列各个长方体的前后绘制循序,我想将其发布,不知在哪里可以呢?给看看截屏,运行程序读取文本文件的数据和字符串生成了一个桌子,还可以生成较简单的房子以及更为复杂的建筑等等。
-
工信部将在2024年4月1号开始将打击未备案已上市的APP、小程序、快应用,还未备案的小伙伴赶紧行动起来!你是否正为自己的APP、小程序、ICP备案或快应用备案而苦恼?你需要加急处理,但又不知道该如何操作?别担心,我们将为你提供详细的指导和解决方案。在当今数字化时代,APP、小程序、ICP备案和快应用备案已经成为许多企业和个人不可或缺的一部分。但是,备案过程可能会非常复杂和耗时,这可能对你的业务产生负面影响。因此,加急处理备案变得至关重要。 让我们来看看APP和小程序备案。APP和小程序备案是确保你的应用或小程序符合相关规定和法律要求的方式。 要加急处理APP或小程序备案,你可以首先确保提交备案所需的所有文件和信息都是完整的和准确的。你可以与服务商联系以了解是否有加急处理的选项。ICP备案是指互联网信息服务提供者在工信部门备案,确保你的网站合法经营和符合相关规定。 如果你需要ICP备案加急处理,你可以提前准备好备案所需的所有材料,并咨询备案服务机构是否有加急处理服务。最后,我们来讨论快应用备案。快应用备案是确保你的快应用符合相关规定和要求的过程。 想要加急处理快应用备案,你可以详细了解备案所需的步骤和要求,或者咨询我们以了解加急处理的可行性。无论是APP、小程序、ICP备案还是快应用备案,加急处理都是提高效率和确保你业务顺利开展的关键步骤。通过仔细准备所需材料,与备案服务机构沟通,并了解各个备案过程的要求,你可以在短时间内完成备案。不要让备案成为你业务发展的瓶颈,抓住加急处理的机会,让你的应用、小程序或网站尽快上线吧!云市场直达:云擎技术(广州)有限公司_商家店铺_电话_邮箱_云商店-华为云 (huaweicloud.com)
-
抖音小程序是一种新兴的小程序平台,与微信小程序类似,都是基于小程序框架的开发,不过两者的开发环境和API有所不同。如果你已经开发了一款微信小程序,想要将其转换为抖音小程序,可以按照以下步骤进行: 1.注册抖音小程序账号 首先需要注册一个抖音小程序账号,可以访问抖音小程序官网(https://microapp.bytedance.com/)注册账号,填写相关信息并进行实名认证。 2.安装开发工具 与微信小程序类似,抖音小程序也需要使用开发工具进行开发调试。可以访问抖音小程序官网下载最新版本的开发工具,安装并登录账号。 3.新建抖音小程序项目 在开发工具中,点击新建小程序项目,填写相关信息,选择抖音小程序的模板并创建。 4.导入微信小程序代码 将微信小程序代码文件夹复制到抖音小程序项目中,并根据抖音小程序的开发规范进行修改,例如修改app.js、app.json、app.wxss等文件中的配置信息。 5.修改API接口 抖音小程序的API接口与微信小程序有所不同,需要进行相应的修改。可以访问抖音小程序开发者文档(https://microapp.bytedance.com/docs)查看API接口的使用方式和文档。 6.调试和测试 在开发工具中对抖音小程序进行调试和测试,检查程序是否能够正常运行,是否有错误和问题。 7.提交审核 当抖音小程序开发完成后,需要将其提交审核。在开发工具中选择“上传”功能,填写相关信息并上传代码。上传成功后,可以在抖音小程序管理后台查看审核进度。 总之,将微信小程序转换为抖音小程序需要进行一些调整和修改,特别是API接口和开发环境等方面。开发者需要了解抖音小程序的开发规范和API接口,熟悉抖音小程序开发工具的使用,才能顺利地完成转换和开发工作。 ———————————————— 版权声明:本文为CSDN博主「大山源码」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/m0_55416028/article/details/129661769
-
“中国版ChatGPT首发”,争得不可开交,热闹却一直没个结果—— 自ChatGPT发布以来,目前进展最快的国内产品也仅是开启了内测,不知道啥时候才能玩上。 结果现在有读者跟我们爆料,一个中文版类ChatGPT产品已经悄然上线。 不是预告、也不是开启小范围测试,而是直接人 人 可 用?!中国版ChatGPT这不就来了吗! 听起来有些玄幻,不过我们点进主页试了试,发现确实可玩: 这不得拿出十八般武艺与它较量一番? 我们注册了一个账号,试试它的实际效果如何。 和中国版ChatGPT较量中文 这个官网显示,写作猫同样通过对话问答来解决任务,功能上包括但不限于三大方向。 其一,问答功能,也就是问啥答啥、“帮人思考”这一能力; 其二,文本生成功能,包括整理摘要大纲、写作文、翻译等; 最后,图片生成功能,描述图片内容并让它直接生成。 从功能上看跟ChatGPT差不多,甚至还拥有ChatGPT所没有的图片生成功能。 当然,还有手机端更方便一点,进入“对话写作猫”小程序就能随时和它聊天了。 体验上还算比较简单直接,但都是表面功夫还得来看真本领。比如它的理解、逻辑能力如何,懂不懂常识。 既然是中国版ChatGPT,当然得先来battle一下博大精深的中文。 首先看看它的中文理解能力是否过关,请听题——“能穿多少穿多少”是什么意思? 不错。再试试高阶一点的“国足和国乒谁都赢不了”? 没想到,竟然连这种中文知识都具备了! 既然如此,是时候拿出一些弱智吧段子和它PK了,考考它的逻辑能力—— 高中想提升升学率为什么不直接招大学生? 万万没想到,问完自己被扎了一刀: 招收大学生可能会对学校的教学质量产生影响,因此高中不能直接招收大学生。 最后来考查一下它的常识。来个脑筋急转弯试试: 看起来并没有被问题带跑偏,还是比较理智的。 接下来,进入正经的第二阶段,评估一下它的内容生成效果。 首先是生成速度上,文字平均在3~5秒左右,生成4幅图则需要8秒左右,整体还是比较快的。 随后就是生成内容的实用程度了,简单来说就是解决实际需求的能力。 例如,写小说的故事情节是否完整?查阅到的知识是否直接可用? 先看生成情节的能力,确实是个完整的爱情故事……但等等,孙坚和小乔,这辈分好像有亿点点乱啊! 要是更玄幻一点呢? 天地之间、神秘的少年、精灵、森林……艾玛有画面了! 不论事实性如何,这同人文一般的情节倒是印证了最后那句“爱情可以超越一切外在因素的”…… 然后是一些常规任务之外的需求,例如“角色扮演”: 整体测评来看,写作猫的中文理解和内容生成能力还是不错的,但并不排除它还存在一些bug。 例如,某些回答乍一看合乎逻辑,但细究之下无法直视…… 以及偶尔也会像微软必应一样“发疯”出现回答重复的问题…… 除此之外,我们也在测试时产生了一些疑惑。 例如,虽然它能实现翻译功能: 但却并不直接支持英文问答。 此外,像ChatGPT能直接生成代码的能力,写作猫也还不具备。 不过作为国内率先开箱即用的类ChatGPT产品,也算是可圈可点。 总的来看,写作猫在中文理解和按需生成文本上做得不错,但仍然和ChatGPT一样存在一些“经不起推敲”的回答。 这些问题的产生原因是?而且有关英文和代码生成的能力,也还不知道之后会不会上线。 带着这些疑问,我们同背后的开发团队聊了聊,了解到整个产品从开发到上线的来龙去脉。 AI写作能力的自然延伸 秘塔写作猫团队针对我们提出的问题进行了解答。主要包括三个方面: 为什么能这么快上线,并且直接做到开箱即用? 存在上述bug的原因,会如何解决? 未来有什么样的计划? 首先,之所以能做到如此快地上线,开发人员表示“主要有两个关键”。 第一点,秘塔在大模型训练上有充分的积累。有个很巧妙的时间点在于,ChatGPT上线的同期,秘塔写作猫的AI写作功能也正式开放,当时就已经实现小范围出圈—— 针对AI可能出现的问题如行文流畅度、对中文的理解程度、以及翻译腔等情况,写作猫都能比较好地解决。 此次也可以看到,对话写作猫同样具备这些方面的能力,在涉及内容创作等场景中表现不错。 除此之外,就秘塔写作猫整个产品体系来说,对话写作猫所具备多轮对话能力,其实也是在交互式指令AI写作上的自然延伸,允许用户更自如地进行内容创作和修改。 换言之,相当于对现有AI助手的能力进行补充,这也是该产品的定位所在。 第二点在于技术上的优化。相较于大厂,秘塔的计算资源十分有限(不足千分之一),但团队凭借多年积累的大语言模型相关研发经验,和各类算法和工程上的优化,实现了快速迭代。在大模型落地时,降低了模型的通信量,以维持大语言模型的高效训练。 这背后也离不开团队的技术实力。 秘塔科技CEO闵可锐,是复旦大学计算机系校友,随后前往牛津攻读数学系硕士、UIUC攻读计算机博士,师从马毅教授;除此之外,他还拥有丰富的产业经验,曾担任玻森数据CTO&联合创始人、猎豹移动AI实验室负责人,并参与过谷歌AdSense基于内容广告建模组点击率预测项目。 工程负责人唐悦,同样复旦计算机系校友,他研发过多款APP、游戏及工业机械臂等,曾在著名编程竞赛平台TopCoder上取得构架组排名第一。 总的来看,产品化经验、技术上积累以及团队实力的叠加都是“加速”的原因,也就不奇怪秘塔对话写作猫为何能率先上线了。 至于仍然存在的一些bug,开发人员也进行了解释,并表示:已在持续优化中。 比如像面对重复性问题会无法理解语义。团队解释称,这是因为模型记忆力“太强”了—— 模型会“看到”之前自己的回答,从而比较“偷懒”地采用之前的回答。 还有像不支持英文,但仍有英文回答的现象。这是因为他们内部准备的是简体中文训练数据集,其中不可避免会出现部分英文内容,比如英语教学的文章。 在下个版本中,他们将加入英文语料来提升英文的理解和回答能力。 除此之外,团队还提及了这几个方面的计划。核心有两个方面:持续迭代产品,优化数据和算法。 持续迭代产品这块,开发程序让用户体验正是他们的思虑所在。 任何好的产品都离不开用户的反馈。ChatGPT在去年底发布,很重要的一个原因也是希望得到大量用户的测试和反馈。 我们也在程序中设置了反馈机制,争取不断迭代优化,让更多的用户认可对话写作猫的价值。 至于像核心数据和算法这方面,团队也在持续优化中,英文和代码生成能力也将在后续版本中上线。 国内ChatGPT产品现状如何? 此番首个ChatGPT产品开箱即用,再加上此前高校开放类ChatGPT产品内测,可以看到,国内类ChatGPT产品已呈现出百花待放、百家争鸣的景象。 他们或来自大厂、高校机构,亦或是如秘塔科技这样技术驱动的创业公司;他们进度不同,有已经正在内测、或者已处于上线前夕的团队,也有的才开始将ChatGPT作为企业重要的战略方向,从头打造为自身场景赋能;当然更多的,是基于已有技术的升级迭代,而ChatGPT的出现则刚好验证了他们的技术选择。 在ChatGPT以惊人的速度在全球爆火出圈之际,OpenAI的首席执行官Sam Altman曾坦言: ChatGPT是一个糟糕的产品,它真的不是为使用而设计的。 现在确实是一个激动人心的时刻,但我认为距离拐点还为时尚早。 深究原因,绕不过去的一点,就是ChatGPT没有事实的概念,无法判断对错,导致它有时候会“说谎”。因此,如何让ChatGPT真正能够“使用”,也成为全球躬身入局的玩家需要应对的难题。 如今国内ChatGPT玩家百花待放的同时,他们也逐渐进入产品冷静期—— 开始思考自身定位,如何将ChatGPT“用”到场景中去。 随着对话写作猫的发布,国内ChatGPT产品大致可以梳理成三类。 第一是实用工具类。围绕着ChatGPT的通用助手特性,通过对话的方式来解决人类日常问题。 这其实是ChatGPT技术落地中最直观、也是最快能产生价值的一种方式。 当中代表就是秘塔对话写作猫。在ChatGPT发布之前,秘塔写作猫就已经有多年相关产品经验——以AI助手的角色在学界、产业界出圈。 对他们来说,如今对话写作猫的发布,其实也是进一步完善了自己的产品体系。 第二是对话聊天类。这一类倒也并不陌生,是在AIGC典型场景下诞生的AI社交产品。有了ChatGPT加持,不仅验证了AIGC乃至AGI的技术趋势,从产品的角度来看,还可以丰富他们的表达和组织语言的能力。 像AI对话软件Glow、小冰等产品,也都在这场ChatGPT浪潮中吸引着资本市场的目光。 不过他们需要应对的,是更严格的监管和更复杂的内容审查能力,从最近ChatGPT黑化、xx发疯等现象就可见一斑。 第三是产业类,这是以百度、科大讯飞等为代表的产业玩家,他们本身有深厚的技术与生态积累。 但场景中的高质量数据要求,以及专业性强、容错率低等特性,决定了他们需要彻底解决ChatGPT“一本正经地胡说八道”的问题,这显然也不是短期可以实现的。 总的来看,国内玩家的角色定位逐渐明晰,他们都有各自的场景和数据。但不可否认的是,要让ChatGPT能真正用起来,核心依旧绕不开技术。 从ChatGPT已具备的能力来看,它在长文本理解、代码生成、逻辑推理等功能上都做到了令人惊艳的效果。这一点国内的确存在一定客观差距,需要持续不断地迭代和追赶。但技术上一旦实现,结合场景数据也能快速落地。 开箱即用,就是最快、也是最有效的迭代方式。 一如ChatGPT刚上线之时,一方面,用户给出直接的技术反馈,开发者来以此对症下药。当时网友吐槽数学逻辑性不强、存在事实性错误等问题,OpenAI在后续更新时也在逐渐解决优化; 另一方面,用户充当免费“提示工程师”的角色,帮助产品解决更多长尾场景,激发更多技术能力。比如就有人在GitHub上梳理了ChatGPT的提示词文档。 秘塔科技在此先行一步,值得更多玩家参考。 感兴趣的旁友可戳下方链接或进入微信小程序“对话写作猫”,抢先体验啦! 玩耍地址: https://xiezuocat.com/chat — 完 — 《中国AIGC产业全景报告暨AIGC 50》调研启动 谁会是中国的“ChatGPT”?最有竞争力和潜力的AIGC力量位于何方? 量子位《中国AIGC产业全景报暨AIGC 50》正式启动对外征集,期待有更多优秀的机构、产品、案例与技术能够被大众看到。 ———————————————— 版权声明:本文为CSDN博主「QbitAl」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/QbitAI/article/details/129273081
-
目的:本课题主要目标是设计并能够实现一个基于微信小程序美食菜谱点评系统,前台用户使用小程序,后台管理使用Java+Mysql开发,后台使用了springboot框架;通过后台添加资讯和管理资讯,录入美食和管理美食,管理美食评论等,用户通过小程序登录,查看美食信息、发表评论等。 意义:基于微信美食介绍点评小程序系统是计算机技术与美食交流相结合的产物,通过微信小程序功率系统实现了对美食介绍和美食评论的交流。随着计算机技术的不断提高,计算机已经深入到社会生活的各个角落;而采用人工线下美食交流的方法,受限于时间、场地等的限制。为了满足美食人员对美食可以在天南地北,任何有空的时间交流,在工作人员的具备一定的计算机操作能力的前提下,特编此基于微信美食介绍点评小程序系统以提高美食交流效率。 可行性分析 具体如下: 1.技术可行性 以Windows7或10为操作系统,采用IDEA软件为开发后台管理,运用mysql进行数据库存储,使用微信开发者工具开发微信小程序;后台管理系统硬件环境是PC机,前台用户在手机上使用微信小程序。 2.经济可行性 一方面,采用IDEA和微信开发者工具开发有好的人机界面和强劲的功能支持,使管理员录入美食菜谱信息、管理点评信息等的工作效率进一步提高从而节省人力、物力;另一方面,系统的制作成本低,在现有的PC机上即可使用IDEA和微信开发者工具进行开发。 3.操作可行性 IDEA软件在操作上是在Windows操作系统上进行后台管理系统的使用,主要凭借使用Windows操作技术即可完成数据的录入、修改、删除等功能,简单方便。用户使用手机登录微信小程序美食菜谱点评系统来使用。 主要功能模块 后台管理员功能 会员列表:查看所有注册会员信息,支持删除 录入资讯:录入资讯标题、内容等信息 管理资讯:查看已录入资讯列表,支持删除和修改 留言列表:所有用户留言信息猎豹,支持删除 广告管理:设置小程序首页轮播图广告和链接 录入美食菜谱:录入美食菜谱名称、参考价格、制作市场、上传美食菜谱图片、美食菜谱详情等 美食菜谱管理:查看所有已经录入的菜谱列表,支持修改和删除 美食菜谱评论列表:查看所有用户录入的菜谱评论信息 美食菜谱评论管理:可以删除;也可以审核后,在小程序可看见评论 小程序功能 用户注册登录:注册普通账号,然后使用注册的账号登录登录 微信授权登录:直接使用微信作为账号,授权后登录 资讯功能:用户可以任意浏览资讯列表和详细信息 美食菜谱库:点击所有菜谱菜单,支持查看所有的菜谱信息菜谱查询:在菜谱列表顶部,输入菜谱关键字,点击查询即可 美食菜谱信息: 点击到菜谱详情页面,可以查看菜谱的图片、参考价格、制作市场等 美食菜谱评论列表:在菜谱页面,切换到游客评论,可以查看所有用户评论的内容 美食菜谱收藏:在菜谱信息详情,下方点击“收藏”,进行收藏 美食菜谱评价:登录用户,在菜谱信息详情页面底部,点击我要评论,弹出评论页面,填写后提交;管理员审核后可见 我的菜谱收藏列表:用户收藏的菜谱列表,可以删除。 用户信息:填写姓名、qq、邮箱、备注等信息 退出系统:清除缓存,返回小程序首页 留言:用户可以在小程序对管理平台留言。 开发概要 主要介绍了系统在开发过程中所应用到的一些关键的技术,主要包括了前端小程序开发的MINA框架;后台开发java的框架springboot、模板引擎thymeleaf程序技术;MySQL数据库;以及常规的网页技术HTML/CSS/JAVASCRIPT介绍。 小程序开发:微信开发者工具(MINA框架) 后台环境:JDK1.8 + Tomcat8 后台开发语言:Java 后台开发框架:springboot 后台模板引擎:Thymeleaf 后台开发工具:Idea2020 数据库:mysql8 数据库管理工具:navicat 其他开发语言:html + css +javascript 开发文件说明 实体图和ER图 后台文件 绿色的是开源的后台管理系统框架,不要动 所在路径:Src >main >com.huang.com>houtai 程序名 包含 houtai/fenzu.java 后台分组管理 /quanxian_fenzu_list 分组权限列表 /quanxian_fenzu_xiugai 分组权限 修改 houtai/ guanliyuan.java 后台用户管理 /ht_mima 密码修改 /quanxian_user_add 后台用户录入 /quanxian_user_list 后台用户列表 /quanxian_user_xiugai 用户修改 houtai/ huiyuan.java 后台框架 /login 用户登录页面 /main 后台首页 /top 后台顶部文件 /center 后台中间文件首页 /middel 后台中间文件(包含左右) /left 后台中间文件-左边 /tab 后台中间文件-右边 /down 后台底部文件 /logout 后台退出登录 houtai/ quanxian.java 后台权限管理 /quanxian_caidan_1ji 1级菜单列表 /quanxian_caidan_2ji 2级菜单列表 /quanxian_caidan_2ji_nei 2级菜单 操作 /quanxian_caidan_3ji 3级菜单列表 /quanxian_caidan_3ji_nei 3级菜单 操作页面 houtai/ guanyu.java 关于我们设置 /houtai_guanggao_shezhi 设置广告 /houtai_liuyan_list 留言列表 /houtai_liuyan_del 删除留言 houtai/ xinxi.java 后台新闻管理 /houtai_xinxi_fenlei 信息分类管理 /houtai_xinxi_add 信息录入 /houtai_xinxi_list 信息列表 /houtai_xinxi_xiugai 修改资讯 /houtai_xinxi_del 删除资讯 houtai/ yonghu.java 用户管理 /houtai_yonghu_list 用户列表 /houtai_yonghu_del 删除用户 houtai/ Meishicaipu.java 美食菜谱 /houtai_meishi_shuxing 美食菜谱显示页面 /houtai_meishi_shuxing_nei 美食菜谱设置 /houtai_meishi_add 美食录入 /houtai_meishi_list 美食菜谱列表 /houtai_meishi_xiugai 修改美食 /houtai_meishi_del 删除美食 /houtai_meishi_pinglun_list 美食菜谱评论列表 /houtai_meishi_pinglun_caozuo 后台评论列表操作(修改xiugai和删除del) 小程序文件 所在路径:Src >main >com.huang.com>api 按程序整理的接口列表如下 页面 接口 说明 api/liuyan_api 留言 /wx_liuyan 留言接口 api /pub_api 公用 /wx_get_ad 读取广告设置 api /yonghu_api 用户 /wx_check_reg_yonghu 验证 用户注册 /wx_check_login_yonghu 验证 用户登录 /wx_check_reg_yonghu_weixin 验证 用户登录(微信登录) /wx_huiyuan_xinxi_byid 根据用户id获取用户信息 /wx_huiyuan_xinxi_update_byid 更新用户信息 /wx_huiyuan_mima_act 更新用户密码 api /zixun_api 资讯 /wx_news_list 读取最新5条资讯 /wx_news_list_byid 资讯列表 /wx_news_list_canshu 获取列表的总页数 /wx_news_info 资讯详情 api / Meishi_api 美食菜谱 /wx_meishi_top4 读取最新4条美食菜谱信息 /pinglun_list_by_uid 根据用户id,获取评论列表 /wx_meishi_list 美食菜谱列表 /wx_meishi_list_yeshu 美食菜谱页数 /wx_meishi_xinxi_byid 根据id获取美食菜谱信息 /wx_meishi_pinglun_list 根据id获取美食菜谱评论 /wx_meishi_shoucang 美食菜谱收藏接口 /wx_meishi_pinglun_add 美食菜谱评论 /wx_meishi_shoucang_list 会员美食菜谱收藏列表 /wx_meishi_shoucang_del 美食菜谱收藏删除 成品效果图 小程序效果截图 后台管理截图 ———————————————— 版权声明:本文为CSDN博主「xx华老师」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/u013818205/article/details/128963552
-
🍍前言 本篇文章分享一下我在实际开发小程序时遇到的需要获取用户当前位置的问题,在小程序开发过程中经常使用到的获取定位功能。uniapp官方也提供了相应的API供我们使用。 官网地址:uni.getLocation(OBJECT)) 🍋正文 1、首先看官网 uni.getLocation(OBJECT) 获取当前的地理位置、速度。 OBJECT 参数说明 参数名 类型 必填 说明 平台差异说明 type String 否 默认为 wgs84 返回 gps 坐标,gcj02 返回国测局坐标,可用于 uni.openLocation 和 map 组件坐标,App 和 H5 需配置定位 SDK 信息才可支持 gcj02。 altitude Boolean 否 传入 true 会返回高度信息,由于获取高度需要较高精确度,会减慢接口返回速度 字节跳动小程序、飞书小程序、支付宝小程序不支持 geocode Boolean 否 默认false,是否解析地址信息 仅App平台支持(安卓需指定 type 为 gcj02 并配置三方定位SDK) highAccuracyExpireTime Number 否 高精度定位超时时间(ms),指定时间内返回最高精度,该值3000ms以上高精度定位才有效果 App (3.2.11+)、H5 (3.2.11+)、微信小程序 (基础库 2.9.0+) timeout String 否 默认为 5,定位超时时间,单位秒 仅飞书小程序支持 cacheTimeout Number 否 定位缓存超时时间,单位秒;每次定位缓存当前定位数据,并记下时间戳,当下次调用在cacheTimeout之内时,返回缓存数据 仅飞书小程序、支付宝小程序支持 accuracy String 否 默认为 high,指定期望精度,支持 high,best。当指定 high 时,期望精度值为100m,当指定 best 时期望精度值为20m。当定位得到的精度不符合条件时,在timeout之前会继续定位,尝试拿到符合要求的定位结果 仅飞书小程序支持 isHighAccuracy Boolean 否 开启高精度定位 App (3.4.0+)、H5 (3.4.0+)、微信小程序 (基础库 2.9.0+) success Function 是 接口调用成功的回调函数,返回内容详见返回参数说明。 fail Function 否 接口调用失败的回调函数 complete Function 否 接口调用结束的回调函数(调用成功、失败都会执行) success 返回参数说明 参数 说明 latitude 纬度,浮点数,范围为-90~90,负数表示南纬 longitude 经度,浮点数,范围为-180~180,负数表示西经 speed 速度,浮点数,单位m/s accuracy 位置的精确度 altitude 高度,单位 m verticalAccuracy 垂直精度,单位 m(Android 无法获取,返回 0) horizontalAccuracy 水平精度,单位 m address 地址信息(仅App端支持,需配置geocode为true) address 地址信息说明 属性 类型 描述 说明 country String 国家 如“中国”,如果无法获取此信息则返回undefined province String 省份名称 如“北京市”,如果无法获取此信息则返回undefined city String 城市名称 如“北京市”,如果无法获取此信息则返回undefined district String 区(县)名称 如“朝阳区”,如果无法获取此信息则返回undefined street String 街道信息 如“酒仙桥路”,如果无法获取此信息则返回undefined streetNum String 获取街道门牌号信息 如“3号”,如果无法获取此信息则返回undefined poiName String POI信息 如“电子城.国际电子总部”,如果无法获取此信息则返回undefined postalCode String 邮政编码 如“100016”,如果无法获取此信息则返回undefined cityCode String 城市代码 如“010”,如果无法获取此信息则返回undefined 示例 uni.getLocation({ type: 'wgs84', success: function (res) { console.log('当前位置的经度:' + res.longitude); console.log('当前位置的纬度:' + res.latitude); } }); 1 2 3 4 5 6 7 #注意 H5 平台 1 在较新的浏览器上,H5 端获取定位信息,要求部署在 https 服务上,本地预览(localhost)仍然可以使用 http 协议。 国产安卓手机上,H5若无法定位,检查手机是否开通位置服务、GPS,ROM是否给该浏览器位置权限、浏览器是否对网页弹出请求给予定位的询问框。 安卓手机 在原生App内嵌H5时,无法定位需要原生App处理Webview。 移动端浏览器 普遍仅支持GPS定位,在GPS信号弱的地方可能定位失败。 PC 设备 使用 Chrome 浏览器的时候,位置信息是连接谷歌服务器获取的,国内用户可能获取位置信息失败。 微信公众号可使用微信js sdk,详见 2.9.9 版本以上,优化 uni.getLocation 支持通过 IP 定位。默认通过 GPS 获取,如果获取失败,备选方案是通过 IP 定位获取,需填写三方地图服务平台的秘钥(key)。key配置:manifest.json —> H5配置 —> 定位和地图 —> key。 App 平台 1 Android由于谷歌服务被墙,或者手机上没有GMS,想正常定位就需要向高德等三方服务商申请SDK资质,获取AppKey。否则打包后定位就会不准。云打包时需要在manifest的SDK配置中填写 Appkey。在 manifest 可视化界面有详细申请指南,详见:https://ask.dcloud.net.cn/article/29。离线打包自行在原生工程中配置。注意包名、appkey、证书信息必须匹配。真机运行可以正常定位,是因为真机运行基座使用了DCloud向高德申请的sdk配置,打包后必须由开发者自己申请。如果手机自带GMS且网络环境可以正常访问google定位服务器,此时无需在 manifest 填写高德定位的 sdk 配置。 注意手机自身要开启定位、同时要给App赋予定位权限。权限判断可参考:https://uniapp.dcloud.net.cn/api/system/getappauthorizesetting.html <map> 组件默认为国测局坐标 gcj02,调用 uni.getLocation 返回结果传递给 <map> 组件时,需指定 type 为 gcj02。 定位 和 map 是两个东西。通过 getLocation 得到位置坐标后,可以在任意map地图上展示,比如定位使用高德,地图使用 google 的 webview 版地图。如果坐标系不同时,注意转换坐标系。 如果使用 web-view 加载地图,无需在manifest里配地图的sdk配置。 持续定位方案:iOS端可以申请持续定位权限,参考。Android如果进程被杀,代码无法执行。可以使用 unipush ,通过服务器激活App,执行透传消息,让App启动然后采集位置。Android上,即使自己写原生插件做后台进程,也很容易被杀,unipush是更合适的方案 3.3.0 版本以上 优化系统定位模块,可不使用三方定位SDK的进行高精度定位,具体参考:系统定位。 小程序平台 1 api默认不返回详细地址中文描述。需要中文地址有2种方式:1、使用高德地图小程序sdk,在app和微信上都可以获得中文地址,参考。2、只考虑app,使用plus.geolocation也可以获取中文地址。manifest里的App SDK配置仅用于app,小程序无需在这里配置。 可以通过用户授权API来判断用户是否给应用授予定位权限,详见 在 微信小程序 中,当用户离开应用后,此接口无法调用,需要申请 后台持续定位权限 ,另外新版本中需要使用 wx.onLocationChange 监听位置信息变化;当用户点击“显示在聊天顶部”时,此接口可继续调用 补充: 以上内容为 官方文档 搬运过来的,详情可点击链接跳转至官网。 我们本次开发的是小程序,需要注意的是,我们本次小程序获取定位使用的是腾讯位置服务,所以需要申请腾讯位置服务的SDK。 2、腾讯位置服务平台申请密钥和下载SDK 申请步骤:详细文档 2.1 申请开发者秘钥 点击文档中的申请秘钥链接,跳转至腾讯位置服务平台,如下图所示申请即可。(没有账号的先注册账号) 2.2 开通webserviceAPI服务 开通webserviceAPI服务:控制台 ->应用管理 -> 我的应用 ->添加key-> 勾选WebServiceAPI -> 保存 (小程序SDK需要用到webserviceAPI的部分服务,所以使用该功能的KEY需要具备相应的权限) 1、申请Key 2、复制申请好的Key值等待使用 2.3 下载微信小程序JavaScriptSDK 微信小程序JavaScriptSDK下载地址(点击文字即可跳转) 下载好解压完成后,我们一般放在根目录下面的common目录下(如下图) 2.4 安全域名设置 安全域名设置,在小程序管理后台 -> 开发 -> 开发管理 -> 开发设置 -> “服务器域名” 中设置request合法域名,添加https://apis.map.qq.com 到这里终于算是申请完了,在配置一下就好了。 3、配置manifest.json文件 "permission" : { "scope.userLocation" : { "desc" : "为了您更好的体验,请确认获取您的位置" } } "requiredPrivateInfos": ["getLocation", "chooseLocation"] 4、示例代码展示 4.1 引用下载好的SDK 这里我放到了common目录下: import QQMapWX from "../../common/qqmap-wx-jssdk.js" 1 4.2 获取定位函数示例 methods: { //获取位置信息 async getLocationInfo() { return new Promise((resolve) => { //位置信息默认数据 let location = { longitude: 0, latitude: 0, province: "", city: "", area: "", street: "", address: "", }; uni.getLocation({ type: "gcj02", success(res) { location.longitude = res.longitude; location.latitude = res.latitude; // 腾讯地图Api const qqmapsdk = new QQMapWX({ key: 'XXXXXXXXXXXXXXXXXXXXXXXX' //这里填写自己申请的key }); qqmapsdk.reverseGeocoder({ location, success(response) { let info = response.result; console.log(info); location.province = info.address_component.province; location.city = info.address_component.city; location.area = info.address_component.district; location.street = info.address_component.street; location.address = info.address; resolve(location); }, }); }, fail(err) { console.log(err) resolve(location); }, }); }); } } 4.3 调用函数 函数调用可以自己去选择在页面加载的时候加载,或者有一个触发条件。(我是用的页面加载,所以放在了onload方法中)。 async onLoad() { const location = await this.getLocationInfo(); this.position = location.address }, 1 2 3 4 注意:这里使用的this.position,是在data中定义的,代码示例中没有写。需要自己在data方法中定一个position变量 4.4 页面渲染 <view style="margin-top: 40rpx;margin-left: 16rpx;color:red;"> 当前定位:{{position}} </view> 1 2 3 5、效果展示 到这里就结束啦!想要的获取用户位置信息的功能就实现啦。 ———————————————— 版权声明:本文为CSDN博主「不苒」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/qq_49002903/article/details/128632851
-
前言 先介绍一下项目场景,主要是通过微信小程序二维码裂变分享,每个账号有专属邀请二维码,分享出去,有新人扫码入驻,就可以得到现金奖励或红包奖励。当然,产品设计会更丰富,不止有裂变模式,还有渠道推广模式,还有各种奖励规则,但核心实现都是生成二维码。对于如何生成微信小程序二维码,本文一共列举了5种实现方式,其中第1、2种是网上常见的方式,第3、4、5种封装的更为优雅,文末可打包下载开箱即用的全套源码,我更期待老铁的文末 投票 :哪种方式你更喜欢? 先看官网 项目主要用的是微信官方提供的服务端能力,考虑到涉及secret和token等安全问题,所以从架构上设计的调用链路为:前端->后端API->微信API。裂变的场景决定要选择获取不限制的小程序码接口,永久有效,数量暂无限制,接口英文名:getUnlimitedQRCode。 官方地址:https://developers.weixin.qq.com/miniprogram/dev/OpenApiDoc/qrcode-link/qr-code/getUnlimitedQRCode.html 一、JDK自带的URLConnection方式 在网上常见的方式,这是从 JDK1.1 开始就自带的Http请求方式,核心代码如下: public byte[] getWechatQrcodeByHttpURL(String url, Map<String, Object> body) { HttpURLConnection httpURLConnection = null; try { httpURLConnection = (HttpURLConnection) new URL(url).openConnection(); httpURLConnection.setRequestMethod("POST"); // 发送POST请求必须设置如下两行 httpURLConnection.setDoOutput(true); httpURLConnection.setDoInput(true); // 获取URLConnection对象对应的输出流 PrintWriter printWriter = new PrintWriter(httpURLConnection.getOutputStream()); // 发送请求参数 printWriter.write(JSONObject.toJSONString(body)); // flush输出流的缓冲 printWriter.flush(); //开始获取数据 try (InputStream inputStream = httpURLConnection.getInputStream(); ByteArrayOutputStream out = new ByteArrayOutputStream()) { byte[] buffer = new byte[1024]; int len = -1; while ((len = inputStream.read(buffer)) != -1) { out.write(buffer, 0, len); } return out.toByteArray(); } } catch (Exception e) { e.printStackTrace(); } finally { if (httpURLConnection != null) { httpURLConnection.disconnect(); } } return null; } JDK自带的方式,功能虽然可以实现,但代码看上去确实跟不上时代发展了! 二、Apache的HttpClient方式 HttpClient 相比于 JDK 自带的 URLConnection方式,代码做了封装,可读性和简洁度都显著提升!核心代码如下: public byte[] getWechatQrcodeByHttpClient(String url, Map<String, Object> body) { CloseableHttpClient httpClient = HttpClientBuilder.create().build(); HttpPost httpPost = new HttpPost(url); try { StringEntity entity = new StringEntity(JSONObject.toJSONString(body)); entity.setContentType("image/png"); httpPost.setEntity(entity); HttpResponse response = httpClient.execute(httpPost); try (InputStream inputStream = response.getEntity().getContent(); ByteArrayOutputStream out = new ByteArrayOutputStream()) { byte[] buffer = new byte[1024]; int len = -1; while ((len = inputStream.read(buffer)) != -1) { out.write(buffer, 0, len); } return out.toByteArray(); } } catch (Exception e) { e.printStackTrace(); } return null; } Maven依赖: <dependency> <groupId>org.apache.httpcomponents</groupId> <artifactId>httpclient</artifactId> <version>4.5.12</version> </dependency> 三、okhttp3方式 okhttp3是Square公司开发,用于替代 HttpUrlConnection和Apache HttpClient方式,优雅的 API 设计,且链式调用,让你顺滑到底! 核心代码如下: public byte[] getWechatQrcodeByOkhttp3(String url, Map<String, Object> body) { OkHttpClient client = new OkHttpClient().newBuilder().build(); okhttp3.MediaType mediaType = okhttp3.MediaType.parse("application/json"); RequestBody requestBody = RequestBody.create(mediaType, JSONObject.toJSONString(body)); Request request = new Request.Builder().url(url).method("POST", requestBody).build(); try { Response response = client.newCall(request).execute(); if (response.isSuccessful()) { return response.body().bytes(); } } catch (IOException e) { e.printStackTrace(); } return null; } Maven依赖: <dependency> <groupId>com.squareup.okhttp3</groupId> <artifactId>okhttp</artifactId> <version>3.14.2</version> </dependency> 四、Unirest方式 okhttp3方式其实不管是性能还是代码的链式调用,都已经非常优秀。但作为底层基于Apache HttpClient方式的unirest-java,提供了更为便捷、链式调用、功能强大的API用于http请求!核心代码如下(一行代码搞定,屌爆了!!!): public byte[] getWechatQrcodeByUnirest(String url, Map<String, Object> body) { return Unirest.post(url).body(JSONObject.toJSONString(body)).asBytes().getBody(); } Maven依赖: <dependency> <groupId>com.konghq</groupId> <artifactId>unirest-java</artifactId> <version>3.11.11</version> </dependency> 五、RestTemplate方式 我之前写过一篇博文对RestTemplate.exchange结合案例进行了详细的介绍:RestTemplate.exchange各种用法(包括泛型等 --全),推荐阅读! 这也是我们项目实际使用的方式,使用Spring框架开发,还是强烈推荐使用Spring的RestTemplate,它是对于其它方式的高级封装,内部可以配置ClientHttpRequestFactory来指定底层请求方式: 指定为SimpleClientHttpRequestFactory,则内部使用JDK自带的HttpURLConnection方式 指定为HttpComponentsClientHttpRequestFactory,则内部使用Apache HttpClient方式 指定为OkHttp3ClientHttpRequestFactory,则内部使用okhttp3方式 核心代码也是一行: public byte[] getWechatQrcodeByRestTemplate(String url, Map<String, Object> body) { return restTemplate.exchange(url, HttpMethod.POST, new HttpEntity<>(body, null), byte[].class).getBody(); } 另外,RestTemplate在构造函数中默认增加了ByteArrayHttpMessageConverter,可以读取和写入字节数组的HttpMessageConverter的实现,默认情况下,此转换器支持所有媒体类型(media types)。 其它细节 getAccessToken 这是接口调用凭证,用restTemplate调用也是非常简洁,核心代码如下: private String wechatQrcodeUrl = "https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token="; private String appid = "替换成你的appid"; private String s = "替换成你的secret"; public String getAccessToken() { String url = String.format(wechatAccessTokenUrl, appid, s); Map<String, String> responseBody = restTemplate.exchange(url, HttpMethod.GET, null, new ParameterizedTypeReference<Map<String, String>>() {}).getBody(); if (responseBody == null || responseBody.get("errcode") != null) { // 获取失败 System.out.println("getAccessToken失败:" + (responseBody == null ? "null" : responseBody.toString())); return null; } return responseBody.get("access_token"); } 对于access_token,建议保存到redis,2小时过期后再获取 构建参数map body 就是参数Map,需要根据实际情况自行设定: Map<String,Object> body = new HashMap<>(); // 场景码,与前端约定,最终是需要前端解析 body.put("scene", scene); // 正式版为 "release",体验版为 "trial",开发版为 "develop"。默认是正式版。 body.put("env_version", envVersion); // 透明,根据你的场景自行设置body参数 body.put("is_hyaline", true); byte[]数组 为什么要先得到byte[]数组?,因为我们需要先判断返回结果是否包含errcode,如果不包含,才是图片Buffer! 如果不包含errorCode,那么byte[]数组不管是保存本地,还是转成Base64,或者上传到OSS,都非常湿滑了! 保存本地 private void saveQrCodeToLocal(byte[] bytes) { try { InputStream inputStream = new ByteArrayInputStream(bytes); FileOutputStream out = new FileOutputStream("d:\\test.png"); byte[] buffer = new byte[8192]; int bytesRead = 0; while ((bytesRead = inputStream.read(buffer, 0, 8192)) != -1) { out.write(buffer, 0, bytesRead); } out.flush(); inputStream.close(); out.close(); } catch (IOException e) { e.printStackTrace(); } } Base64 Base64.getEncoder().encodeToString(bytes); 1 上传OSS 这是我们项目使用的, 底层做了封装,直接传byte[]即可,非常方便! ———————————————— 版权声明:本文为CSDN博主「天罡gg」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/scm_2008/article/details/128764936
-
1.1 课题背景 互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。所以各行业,尤其是规模较大的企业和学校等都开始借助互联网和软件工具管理信息,传播信息,共享信息等等,以此可以增强自身实力,提高在同行业当中的竞争能力,并从各种激烈的竞争中获取发展的机会。针对装修样板信息管理混乱,出错率高,信息安全性差,劳动强度大,费时费力等问题,经过分析和考虑,在目前的情况下,可以引进一款在线装修管理系统这样的现代化管理工具,这个工具就是解决上述问题的最好的解决方案。它不仅可以实时完成信息处理,还缩短装修样板信息管理流程,使其系统化和规范化。同时还可以减少工作量,节约装修样板信息管理需要的人力和资金。所以在线装修管理系统是信息管理环节中不可缺少的工具,它对管理者来说非常重要。 1.2研究内容: 对在线装修管理系统设计制作,不仅需要技术支撑,也需要大量的理论研究。本文在对在线装修管理系统进行介绍时,将按照如下内容进行。 第一部分:介绍在线装修管理系统研究的背景意义,便于用户了解系统; 第二部分:介绍开发在线装修管理系统需要搭建的环境,包括技术和工具; 第三部分:介绍用户对在线装修管理系统的功能要求,以及对在线装修管理系统的性能要求等; 第四部分:介绍数据库的设计方案,以及根据功能要求设计的功能结构; 第五部分:介绍通过编码最终实现的系统功能运行效果; 第六部分:介绍系统的功能测试,对系统进行综合检测,并及时解决系统出现的问题,直至系统运行正常。 二、主要技术: 2.1 Spring Boot框架: Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。 SpringBoot基于Spring4.0设计,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程。另外SpringBoot通过集成大量的框架使得依赖包的版本冲突,以及引用的不稳定性等问题得到了很好的解决。 2.2 MYSQL数据库: 在动态网站的兴起之初,作为高级编程语言的Java自然不会放弃这个领域的蛋糕。Sun公司推出了Servlet作为输出动态网站的一种技术标准,虽然不怎么受当时程序员的喜爱,但是当初也没有太多的选择,随后几个月java语言问世,不考虑性能和效率如何,起码在书写网页所需要的动态代码块和静态代码块方面进行了区分,让书写效率和可读效率大大的提升,所以很多Java程序员以及刚入行的初级程序员都选择了java语言作为自己职业的发展方向,Sun公司为了维护Java语言在高级编程语言上的江湖地位,防止java继续抢走市场份额占有率,Sun公司联合Apache基金会研发了一个关于Java动态网页的一个新型的技术标准,这就是vue技术。 三、系统设计: 3.1 系统功能设计: 在前面分析的管理员功能的基础上,进行接下来的设计工作,最终展示设计的管理员结构图。管理员增删改查装修样板 3.2 功能结构设计: 3.2.1 装修实体属性 3.2.2 装修队实体属性 3.3 登录时序图设计: 四、小程序端: 4.1 登录注册 4.2 系统首页 4.3 装修设计 4.4 装修团队 4.5 公告模块: 4.6 我的个人中心 五 、管理后端: 系统后台是对数据的维护,功能都是齐全的,这里就不做一一截图了。 5.1 后台登录 5.2 装修订单管理 5.3 售后申请 六、主要表设计: 用户表设计 序号 列名 数据类型 说明 允许空 1 Id Int id 否 2 dic_code String 字段 是 3 dic_name String 字段名 是 4 code_index Integer 编码 是 5 index_name String 编码名字 是 6 super_id Integer 父字段id 是 7 beizhu String 备注 是 8 create_time Date 创建时间 是 公告信息表 序号 列名 数据类型 说明 允许空 1 Id Int id 否 2 ews_name String 公告标题 是 3 news_types Integer 公告类型 是 4 news_photo String 公告图片 是 5 insert_time Date 添加时间 是 6 news_content String 公告详情 是 7 create_time Date 创建时间 是 装修队表 序号 列名 数据类型 说明 允许空 1 Id Int id 否 2 tuandui_name String 团队名称 是 3 tuandui_photo String 团队头像 是 4 tuandui_phone String 联系方式 是 5 tuandui_email String 电子邮箱 是 6 tuandui_content String 团队介绍 是 7 tuandui_delete Integer 逻辑删除 是 8 create_time Date 创建时间 是 用户表 序号 列名 数据类型 说明 允许空 1 Id Int id 否 2 yonghu_name String 用户姓名 是 3 yonghu_photo String 用户头像 是 4 yonghu_id_number String 身份证号 是 5 yonghu_phone String 联系方式 是 6 yonghu_email String 电子邮箱 是 7 new_money BigDecimal 余额 是 8 yonghu_delete Integer 逻辑删除 是 9 create_time Date 创建时间 是 装修表 序号 列名 数据类型 说明 允许空 1 Id Int id 否 2 zhuangxiu_uuid_number String 装修编号 是 3 tuandui_id Integer 装修团队 是 4 zhuangxiu_name String 装修名称 是 5 zhuangxiu_photo String 装修照片 是 6 zhuangxiu_types Integer 装修类型 是 7 zhuangxiu_new_money BigDecimal 装修定金 是 8 zhuangxiu_clicknum Integer 点击次数 是 9 zhuangxiu_content String 装修介绍 是 10 shangxia_types Integer 是否上架 是 11 zhuangxiu_delete Integer 逻辑删除 是 12 insert_time Date 录入时间 是 13 create_time Date 创建时间 是 装修订单表 序号 列名 数据类型 说明 允许空 1 Id Int id 否 2 zhuangxiu_order_uuid_number String 订单号 是 3 zhuangxiu_id Integer 装修 是 4 yonghu_id Integer 用户 是 5 zhuangxiu_order_time Date 预约时间 是 6 zhuangxiu_order_true_price BigDecimal 实付价格 是 7 zhuangxiu_order_types Integer 订单类型 是 8 zhuangxiu_order_payment_types Integer 支付类型 是 9 insert_time Date 订单创建时间 是 10 create_time Date 创建时间 是 七、代码参考 # Tomcat server: tomcat: uri-encoding: UTF-8 port: 8080 servlet: context-path: /springboot4447x spring: datasource: driverClassName: com.mysql.jdbc.Driver url: jdbc:mysql://127.0.0.1:3306/springboot4447x5?useUnicode=true&characterEncoding=utf-8&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=GMT+8 username: root password: 123456 # driverClassName: com.microsoft.sqlserver.jdbc.SQLServerDriver # url: jdbc:sqlserver://127.0.0.1:1433;DatabaseName=springboot4447x # username: sa # password: 123456 servlet: multipart: max-file-size: 100MB max-request-size: 100MB resources: static-locations: classpath:/testStatic/,classpath:/META-INF/resources/,classpath:/resources/,classpath:/static/,classpath:/public/ #mybatis mybatis-plus: mapper-locations: classpath*:mapper/*.xml #实体扫描,多个package用逗号或者分号分隔 typeAliasesPackage: com.entity global-config: #主键类型 0:"数据库ID自增", 1:"用户输入ID",2:"全局唯一ID (数字类型唯一ID)", 3:"全局唯一ID UUID"; id-type: 1 #字段策略 0:"忽略判断",1:"非 NULL 判断"),2:"非空判断" field-strategy: 2 #驼峰下划线转换 db-column-underline: true #刷新mapper 调试神器 refresh-mapper: true #逻辑删除配置 logic-delete-value: -1 logic-not-delete-value: 0 #自定义SQL注入器 sql-injector: com.baomidou.mybatisplus.mapper.LogicSqlInjector configuration: map-underscore-to-camel-case: true cache-enabled: false call-setters-on-nulls: true #springboot 项目mybatis plus 设置 jdbcTypeForNull (oracle数据库需配置JdbcType.NULL, 默认是Other) jdbc-type-for-null: 'null' 八、项目总结: 采用Java+Mysql的方式设计制作的在线装修管理系统,在功能上可以满足管理人员对于信息的管理需求;在界面的设计上,尽最大努力用自身的美工知识做到界面美观简洁。在操作方面上,让系统可以方便操作,同时对用户常见的误操作行为进行分析总结,并尽力在系统中避免同样的由于用户的误操作所带来的错误现象。 作为毕业设计,分配给本系统的设计与制作时间还是不足的,所以,在线装修管理系统还有许多需要完善的地方。 第一个就是本系统的编程代码问题,各个程序文件的代码存在冗余的地方非常多,导致代码不够简洁,同时对代码的注释也比较麻烦。编码期间,对于很多页面可以共享的函数与方法都没有单独列出来,而是在需要用到函数和方法的页面上都重新编写了代码,通过后期的技术学习,以及对编码过程的分析总结,发现可以把共用的函数或方法编写在同一个页面上,在之后的页面中,需要使用此函数的页面,则可以直接调用函数,无需再编写代码了,这样可以简化代码,也能节省时间和存储空间。 第二个就是对数据库的设计不够好,在数据处理中,影响程序运行速度。因此需要对数据库的性能进行优化。通过这方面知识的学x,在某个开发技术类的博客中,发现可以用数据库连接池技术来解决数据库的性能问题,另外还需规范数据库里面的关系模式,降低数据库的冗余率,提高运行速度。 如果说平时的作业也是检查对知识的掌握情况,那么制作毕业设计,将是对自身所有知识的一个全面检测。因为系统能够制作完成则是经历了很多阶段,正如文中所展示的那样,先有可行性分析,对功能的分析,对功能的设计,对数据库的设计,对程序功能的编码实现,对完成编码程序的测试等,这些环节缺一不可,而且还都需要认真对待,大学学到的所有知识在制作系统时,才会发现不够用。所以这个项目制作,在检测自身能力的同时,也对问题分析,资料搜集,问题解决等能力进行了培养。 ———————————————— 版权声明:本文为CSDN博主「java李杨勇」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/weixin_39709134/article/details/129234459
-
在用微信小程序进行资源上传时,华为云对象存储的sdk应该使用哪个版本?大概的流程是什么样的?感谢各位大佬解答!
上滑加载中
推荐直播
-
用码道,让你的AI作品三步上朋友圈2026/08/04 周二 19:00-20:00
林华鼎-华为云AI开发者运营负责人
从入门 · 到做AI应用 · 到企业级开发。不教编程,只教用AI · 零代码、有产出、能带走、可炫耀 · 每课人人动手实操
回顾中 -
华为云码道Agent集成与鸿蒙实战2026/08/11 周二 19:00-21:00
王一男-华为云码道产品规划专家;李炎-华为云码道产品专家;彭江敏-华为云鸿蒙端云一体化开发专家
本次直播带你解读华为云码道7月份产品新特性、新功能。更有专家演示码道Agent Space × 钉钉机器集成实战,从0到1打通消息通道;码道鸿蒙端云一体化实战,快速搭建员工签到系统。
回顾中 -
基于华为云码道,构建你的定制化AI搭子2026/08/14 周五 09:00-11:30
明亮-华为云开发者发展与支持部部长
本期直播将向您全面介绍华为云码道产品,并基于码道手把手教你部署自己的定制化AI陪伴搭子。
回顾中
热门标签