- 开源博客,微信,qq,头条小程序均可使用
博客前后端均已开源,前端uniapp,后端golang 展示 展示一 展示二 展示三 [图片] [图片] [图片] 简介 前端地址:uniblog 后端地址:cjblog 博客地址:博客 配合 blog ,借鉴WeHalo样式开发出来的 简约风 uniapp版博客,可供多端使用。 快速开始 前端部分: 地址:uniblog git clone https://github.com/cjyzw/uniblog 或者打开插件市场点击右侧导入插件/下载zip 打开Hbuilder本项目,右击关联云空间,选择阿里云,将db_init.json部署到云存储中。注:打开unicloud控制台,选择阿里云服务空间/云数据库/token表,点击管理修改typ,appid,secret即可 用Hbuilder打开本项目中mainfest.json填写对应小程序的appid 点击Hbuilder工具栏/运行,运行到某某小程序,注: 记得下载对应的小程序运行工具 config/index.js中,ipAddress填写调取markdown文件的博客地址 App.vue中,找到bannerimglist,修改地址,可以将轮播图中的图片替换,设置个人logo图片,修改homeImg 注:必须是HTTPS的因为,所有小程序官方规定,需要把博客地址[代码]如:https://blog.hexiefamily.xin[代码]和[代码]https://v2.jinrishici.com[代码]以及[代码]https://vkceyugu.cdn.bspapp.com[代码]添加到微信,qq,字节头条等公众平台的 [代码]request 合法域名[代码]中 如果博客地址不会配置https协议可以看这里 [代码]globalData: { windowHeight: uni.getSystemInfoSync().windowHeight, windowWidth:uni.getSystemInfoSync().windowWidth, //全局变量 userInfo: null, openid:'', skin: null, roleFlag: false, jrscurl: "https://v2.jinrishici.com", BlogName: "代码改变生活", highlightStyle: "dracula", //代码高亮样式,可用值default,darcula,dracula,tomorrow adminOpenid: "", homeImg:'/static/image/cat.png', bannerimglist:[ 'https://vkceyugu.cdn.bspapp.com/VKCEYUGU-aliyun-6rawjgd8tdtl4007ee/a93bb8b0-50dd-11eb-a16f-5b3e54966275.jpg', 'https://vkceyugu.cdn.bspapp.com/VKCEYUGU-aliyun-6rawjgd8tdtl4007ee/a8638120-50dd-11eb-a16f-5b3e54966275.jpg', 'https://vkceyugu.cdn.bspapp.com/VKCEYUGU-aliyun-6rawjgd8tdtl4007ee/aa0fd190-50dd-11eb-bd01-97bc1429a9ff.jpg', 'https://vkceyugu.cdn.bspapp.com/VKCEYUGU-aliyun-6rawjgd8tdtl4007ee/aade6c30-50dd-11eb-a16f-5b3e54966275.jpg', 'https://vkceyugu.cdn.bspapp.com/VKCEYUGU-aliyun-6rawjgd8tdtl4007ee/ab9d7670-50dd-11eb-a16f-5b3e54966275.jpg' ] } [代码] **注:例子中无appid,所以无法在手机上运行,如果需要预览,真机调试填上自己的小程序 appid哦~,具体各类小程序如何运行可以访问 运行 后端部分: 地址:cjblog 做法一(无需代码) 下载:cjblog.zip 下载:对应系统二进制文件 cd cjblog,点击二进制文件 打开浏览器,访问http://localhost:8081 即可 在resources/blog_docs/content中添加文件夹/mardown文件即可 所有配置项在config.json中,均可以修改 [代码]{ "port": 8081, "pageSize": 7, "descriptionLen": 200, "author": "Chensir", "webHookSecret": "cj", "timeLayout": "2006.01.02 15:04", "siteName": "Chensir's Personal Blog", "documentPath": "resources/blog_docs", "htmlKeywords": "forest blog,Golang,前端", "htmlDescription": "Chensir's Personal blog", "categoryListFileNumber": 6, "themeColor": "#9c27b0", "dashboardEntrance": "/admin", "themeOption": ["#673ab7","#f44336","#9c27b0","#2196f3","#607d8b","#795548"] } [代码] 做法二(熟悉golang) git clone http://github.com/cjyzwg/cjblog cd cjblog go mod tidy(前提已经开启export GO111MODULE=on) go run main.go打开浏览器,访问http://localhost:8081 即可 删除resources/blog_docs/content中所有内容,分类名为文件夹名如:DNS,文件为名为:a.md 所有配置项在config.json中,均可以修改 [代码]{ "port": 8081, "pageSize": 7, "descriptionLen": 200, "author": "Chensir", "webHookSecret": "cj", "timeLayout": "2006.01.02 15:04", "siteName": "Chensir's Personal Blog", "documentPath": "resources/blog_docs", "htmlKeywords": "forest blog,Golang,前端", "htmlDescription": "Chensir's Personal blog", "categoryListFileNumber": 6, "themeColor": "#9c27b0", "dashboardEntrance": "/admin", "themeOption": ["#673ab7","#f44336","#9c27b0","#2196f3","#607d8b","#795548"] } [代码] 注:请确保go版本在1.11以上 注意事项: 所有的笔记都是markdown文件,.md结尾 服务端代码中不涉及mysql部分,本着简洁的目的,通过生成的cache文件来访问,若要添加,可自行添加或者联系我 可将此代码部署到服务器,或者部署到本机,服务器代理转发到本机即可 接口部分: 没有加token鉴别,可自行添加 【文章列表】博客地址+/apis/articlelist,参数:page || search || 无 【文章内容】博客地址+/apis/articlecontent,参数:path(文件路径名,如:/DNS/a.md) 【文章分类】博客地址+/apis/category,参数:无 【文章分类的内容】博客地址+/apis/categorycontent,参数:name(分类名) 【今日诗词获取token】今日诗词地址+/token,参数:name(分类名) 【今日诗词获取诗句】今日诗词地址+/sentence,header头加:X-User-Token(token) 演示 博客地址:https://blog.hexiefamily.xin/ 微信小程序 qq小程序 头条小程序 [图片] [图片] [图片] 提示 qq小程序个体不支持评论功能 头条小程序抖音ios版访问不了,头条的审核机制问题 通常上线审核要2-3天,把握好时间哈~ 功能 文章展示 评论展示 搜索文章功能 文章评论功能 评论功能内容识别 友链展示 点赞功能(云函数) 文章浏览统计功能(云函数) 用户回复评论追评功能 生成海报 博主查看评论功能 博主回复评论功能 支付宝小程序抽屉功能修复… 感谢 UniBlog的诞生离不开下面这些项目: WeHalo: 一个简约清爽的开源博客微信小程序。 ColorUI:鲜亮的高饱和色彩,专注视觉的小程序组件库 ForestBlog:golang简约版的博客应用 其他 <font color=#0099ff>startmyblog</font>: 使用flutter做的app,调取后端做接口。 <font color=#0099ff>qrcp_pass</font>: 解决跨平台传文件,不用经过微信压缩即可传视频。 捐赠 如果 UniBlog 圆了你在微信/qq/抖音小程序或app各个平台中的梦想了,可以众筹作者买个小茗同学喝喝(注:捐赠请备注哈) | 微信 | | [图片] |
2021-01-29 - 带背景的文字效果
首先设置文字大小,加粗,设置一个背景,是这样的效果 font-size: 50px; font-weight: bold; background: url('https://images.cnblogs.com/cnblogs_com/mxiaoli/1534426/t_timg.jpg')no-repeat; [图片] 再加上这一句,你会发现背景图片消失了 -webkit-background-clip: text; [图片] 再加一句 color: transparent;就是这样的效果 [图片] 如果你还想更花里胡哨一点,可以加动画让它动起来,就像这样 [图片] WXML代码: <view class="bg">小黎,低头是题海,抬头是远方 There are no shortcuts to any place worth reaching</view> WXSS代码: .bg { font-size: 16px; font-weight: bold; color: transparent; background: url('https://images.cnblogs.com/cnblogs_com/mxiaoli/1534426/t_timg.jpg'); -webkit-background-clip: text; animation: move 20s linear infinite; } @keyframes move { 0% { background-position: left; } 50% { background-position: right; } 100% { background-position: left; } } 总结:-webkit-background-clip:text;这个属性的意思是,以区块内的文字作为裁剪区域向外裁剪,文字的背景即为区块的背景,文字之外的区域都将被裁剪掉。再通过设置文字颜色为透明,就能出现这样的效果 注意:-webkit-background-clip: text;属性必须写在设置背景属性之后。因为设置在之前裁剪什么,空气么?
2020-12-02 - banner效果美化
先上图 [图片] wxss: .bannerSwiper { height:300rpx; width: 100vw; position: absolute; left: 0rpx; top: 10rpx; } .imageBanner { width: 100%; height: 100%; border-radius: 20rpx; position: relative; padding: 0; line-height: 100%; background: transparent; text-align: left; } .imageBanner_small { transform: scale(0.9); transition: 0.2s, ease-in 0s; border-radius: 10rpx; width: 100%; height: 100%; position: absolute; bottom: 0; z-index: 100; padding: 0; line-height: 100%; background: transparent; text-align: left; opacity: 0.5; } wxml: <view class="container"> <swiper class='bannerSwiper' previous-margin="80rpx" next-margin='80rpx' indicator-dots="true" indicator-color='#999' indicator-active-color='#fff' indicator-dots="{{indicatorDots}}" autoplay="{{autoplay}}" interval="{{interval}}" duration="{{duration}}" bindchange='onChange' circular='true'> <block wx:for="{{banner}}"> <swiper-item> <image class="{{index==selindex?'imageBanner':'imageBanner_small'}}" style="background:{{item}}"></image> </swiper-item> </block> </swiper> </view> github地址:https://github.com/jieqwer/-Banner
2020-11-27 - 如何关注公众号以后自动推送小程序?
如何关注公众号以后自动推送小程序? 这个问题是不是觉得没什么难度?打开配置界面一看你就傻眼了。 [图片] 怎么自动回复里没有跳转小程序选项?自定义菜单里面是有的呀!:( [图片] 遇到困难先不要慌,办法总是有的! 不过要做一点点准备工作,首先绑定要跳转的小程序,然后准备好小程序的APPID和跳转路径。 然后,一行代码搞定: <a data-miniprogram-appid="小程序APPID" data-miniprogram-path="跳转路径">点我跳转到小程序</a> 上面准备的小程序APPID和跳转路径编辑一下即可。 <a data-miniprogram-appid="wx3fa5ddf638c664d8" data-miniprogram-path="page/tabBar/index/index">点我跳转到小程序</a> [图片] [图片] 想体验效果,搜索:来一间 公众号体验。关键词自动回复也可以用这个方法配置哦! [图片] 补充一点: 如何获取小程序页面路径的方法:https://developers.weixin.qq.com/community/develop/article/doc/0008627017cf104da879c3dd25b813
2020-07-14 - 基于微信小程序.云开发,互联网+餐饮解决方案
小程序码农们的福利来了! 第一次接触微信小程序云开发,就迷恋上她了。首先,她提供免费的基础版,降低用户的使用成本,无需考虑服务器的问题。其次,她融入了微信的生态,可以利用很多的资源。如果能够把云开发技术潜能激发,可以产生巨大的效益。我相信云开发在未来一两年会把大量SaaS平台干掉。在如此的诱惑下,我就产生了创业的念头,云开发+餐饮的解决方案。一方面通过成为微信支付服务商,发展特约商户,获得支付流水;另一方面为餐饮客户提供小程序定制服务。然而,梦想很美好,现实很残酷。新冠肺炎的爆发,餐饮行业受到重创,倒闭的倒闭,停业的停业。因此,我们的业务很难开展,粮草不足,创业失败! 经过一段时间的思想斗争,决定把项目开源,让更多的码农兄弟感受云开发的强大,同时避免采坑。 项目地址:https://git.weixin.qq.com/bmwkj/waiter-dev https://github.com/kem709394/waiter-dev 产品介绍:http://www.bmwkj.ltd [视频] [图片][图片][图片] 为特餐饮助手 基于微信小程序.云开发(serverless)技术 结合物联网云打印服务,实现低成本,高效能的互联网+餐饮解决方案 无需租用服务器,开通微信提供的云开发基础套餐(免费),即可搭建整套系统方案 为特餐饮助手的特点:简单、易用、高效、稳定、安全,最重要的是低成本。 功能特色: 点餐:扫描点餐、预定点餐、协助点餐、呼叫服务 外卖:配送外卖、自提外卖 订桌:预定餐桌 排队:排队取号 配送:配送跟踪 后台功能: 服务中心,提供服务员常用的功能,如服务员帮助客人下单,菜品状态更新,查看餐桌状况,自定义菜品价格(当菜品价格为时价,通过扫码获取价格),订单处理(接单、制作、取消、退款、完成等功能),排队取号和餐桌呼叫的处理,配送跟踪辅助功能(扫码取件,完成订单,退回订单,订阅派单通知等) 用户管理,管理微信用户的信息 职员管理,管理商户的职员,根据职务分配相应的操作权限 厨房管理,分配厨房打印机,如果厨房用到打印机,需要在此功能进入绑定 餐桌管理,管理餐桌的信息,可以在线生成点餐码 栏目管理,管理菜品的栏目,对菜品进行分类 菜品管理,管理所有的菜品,包括普通菜品、时价菜品(没有固定价格,通过扫码获取价格)、套餐菜品(由普通菜品进行组合),普通菜品和时价菜品可以设置出菜厨房,普通菜品可以设置多种规格和多种可选属性。 订单管理,管理所有的订单,包括点餐、外卖、订桌 公告管理,管理小程序的公告内容 反馈管理,管理用户提交的反馈内容 打印管理,管理云打印,绑定打印机的设备码,可以测试打印机 配送记录,管理配送记录,跟踪配送信息 支付记录,管理支付记录 统计报表,可统计内容包括订单数量,菜品销量,配送数量,有年月日三个维度选择 系统设置,对系统的参数进行设置 麻雀虽小五脏俱全,本解决方案能够满足大部分餐饮行业商户的需求。 由于微信提供的免费资源有限,本应用通过了长时间优化和验证,满足每天300单一下的商户免费使用。 serverless毕竟是新技术,使用过程中肯定会遇到很多坑,但总有解决的办法。 技术支持 [图片]
2020-07-20 - BookChat v2.1 发布,开源的书籍阅读微信小程序
BookChat 介绍 微信叫[代码]WeChat[代码],所以我们叫[代码]BookChat[代码]. [代码]BookChat[代码] - 面向程序员的开源书籍和文档阅读学习小程序,同时也是一款基于 Apache 2.0 开源协议进行开源的通用书籍阅读微信小程序。 升级日志 实现微信登录和绑定 移除小程序的普通注册(微信一键登录更便捷) 调整内容显示样式,优化内容阅读体验 列表页增加搜索入口 优化登录提示和登录跳转 小程序体验码 体验一下,相信你会喜欢,没有理由 [图片] 开源地址 Gitee: https://gitee.com/truthhun/BookChat GitHub: https://github.com/TruthHun/BookChat
2019-07-18 - 用wordpress打造的第一个小程序:图书共享借阅
wx-booker 微信小程序-书巢小程序(图书共享预定 ) 更新至V2.0.0 体验效果 在微信中搜索小程序【建始同城共享书】或扫码体验 [图片] [图片] [图片] 初衷 通过微信小程序向当地爱书者提供一个图书共享预定平台,前期期望投入费用越少越好。同时还要有一定的变现能力,例如图书借阅费、本地商家广告投放。 V2.0.0功能新增(20200205) 完全自定义文章类型和自定义字段 增加输入ISBN一键获取豆瓣书籍信息 增加看广告显示隐藏内容短代码,可插入到正文任意位置 增加办公文档查看 增加切换风格 增加关于页面,内容在后台配置输出 增加悬浮广告位,可后台配置显示在首页/列表页/详情页 增加可关闭借阅按钮 增加若干全局设置 V1.0.0功能分解 图书分类管理 图书信息管理,包括介绍和图书相关ISBN、关联分类等 预借功能与费用管理 图书在馆状态 全局搜索图书 图书条形码扫码查询 用户管理与用户等级 广告管理 本地商家服务投放 图书订阅帮助信息 用户浏览与喜欢统计 UI交互清爽简单 程序选型 域名:阿里云购买 制作小程序域名还是必须的,这个去阿里云买一个.com域名就好。年费50元+。 服务器:阿里云ECS 这个是做互联网没办法少的,选用ECS主要因为我服务器有其他建站需求,建立多个网站使用。年费:500元+。 后台:Wordpress 强大而免费,通过插件的使用可以打造出功能完善的CMS/商城系统。年费:0元。 RESTAPI:微慕小程序插件 这个是用于将wordpress和小程序通信的插件程序,我是用的是微慕小程序插件1.6.0。年费:0元。 小程序:微信小程序个人版 前期因为无法预测变现能力,所以考虑成本,我输出的是个人版小程序。未来有更多本地商业服务的时候,移植到企业版。年费:0元。 前端:微慕开源版+自己摸索完成 小程序的前端是我通过微慕开源版3.6的代码二次开发完成,我现在Github已开源,有需要的朋友可以Clone。费用:0元。 使用 环境准备 服务器选型购买、域名购买、备案、配置环境网上很多教程这里不再赘述,注意:微信小程序要求域名需备案、https://开头。 程序安装 Wordpress安装 前往官方下载或者https://github.com/WordPress/WordPress最新版本,按网上教程一步步安装。 Wordpress主题安装 我使用raz主题,主要是我比较懒,这个主题不光是因为我网站商城需要简洁的效果,自带的文章自定义字段也方便我定义。 [图片] Wordpress插件安装 这里用到两个插件:微慕的小程序插件https://github.com/iamxjb/rest-api-to-miniprogram+全局搜索插件Search Everything,在wordpress后台安装新插件搜索进行安装。前者的RestAPI用于与微信小程序通信,后者用于小程序支持字段搜索。 [图片] [图片] [图片] 微慕开源版下载 微慕算很良心的小程序开源商,功能多,文档详细,社区活跃,值得使用。需要高级功能的可以去微慕商城购买专业版,提供在线技术支持。微慕开源版本在Github的传送门:https://github.com/iamxjb/winxin-app-watch-life.net。 微信小程序账号申请 前往微信官方注册小程序账号,后台获取你的appid和秘匙,填写相应的小程序信息。选择服务类型时要注意,个人类型的小程序在服务类型选择上要慎重,看官方文档,最好选择工具类型。 微信小程序开发环境安装 前往微信官方下载最新版本的微信开发者工具,安装后启用微慕开源版的代码,按微慕官方的帮助文档修改代码中相应的设置。 [图片] 至此,程序安装完成,这一步预览小程序的效果是微慕小程序的模板。 微信小程序-书巢小程序模板安装调试 Wordpress插件替换 Clone 微信小程序-图书共享预定到本地,其中code是小程序前端代码。plug是微慕的小程序插件的修改版,该插件务必配合使用raz主题才能用。 [图片] 小程序前端代码替换 将code里的代码复制替换微慕的前端代码即可。 [图片] 建立分类 代码中的书籍、帮助FAQ、本地活动调用的是Wordpress的三个父级目录。在Wordpress的文章分类中首先创建三个父级目录,将目录ID分别替换代码的中cateparentID/categories。三个id分别在page/index/index.js,page/faq/faq.js,page/act/act.js [图片] [图片] 写文章 自定义字段和分类记得填写和选择。注意书目、本地活动对应的字段对应不同的用途。 [图片] [图片] 配置本地活动轮播 进入wordpress后台微慕的小程序插件,输入要在小程序中轮播显示的本地活动文章ID。用于轮播显示在详情页底部和我的信息页入口。 [图片] 天气和地址配置 使用高德SDK,前往并注册账号获取key,key和city需要配置成你的信息。需要配置的文件pages/mine/mine.js,pages/amap/amap.js。SDK在Github的传送门:https://github.com/amap-demo/wx-regeo-poiaround-weather。 [图片] 微信小程序2.0.0-书巢小程序模板安装调试 将文件包插件目录下的两个插件文件安装或覆盖在wordpress的插件目录中(/wp-content/plugins/); 进入wordpress后台管理,开启pods和微慕小程序插件; 在pods插件中启用Migrate: Packages组件; 在Migrate: Packages组件中导入文件包data目录下的pods文件; 导入后,左侧菜单栏会出现【书目】【帮助】【活动】三个自定义文章以及二级菜单分类和设置等; 接下来导入书目模拟数据:进入菜单工具-可用工具中启用【导入】, 然后将文件包中的书目模拟数据导入; 将小程序代码直接在小程序开发工具中导入。 在wordpress后台配置微慕小程序的相关key 在小程序代码里的project.config.json和config.js进行配置相关key 在wordpress的书目设置和全局设置中进行相关文字设置,包括首页标题等 完成后,进行测试即可。 任何问题进QQ群反馈:928993356 20200331补充: 不知为何mac笔记本搜索不到群。先通过加我个人QQ号和个人微信号拉进群。 QQ号:2307944871 (小鱼哥) 微信号:gamch2 (小鱼哥) 感谢 感谢https://www.hellobeebee.com/ 提供空间。升级为书巢小程序官方网站。 感谢https://www.appbeebee.com/ 提供主题。V2.0.0无需安装此主题。 感谢https://shops.minapper.com/ 提供小程序代码 如果你觉得这个模板不错,请打赏馆长。 [图片] 相关资源 github https://github.com/shiheme/wx-booker gitee镜像 https://gitee.com/week7day/wx-booker
2020-03-31 - 校园跳蚤小程序
该校园跳蚤小程序目前功能已完善, 具有以下功能: 权限管理:管理员、警务人员、后勤人员、普通用户 公告管理 跳蚤市场 维修上报 路线导航 从功能讲,具有一个可圈可点的类朋友圈信息发布功能, 具体截图如下: 1 [图片] 2 [图片] 3 [图片] 4 5 [图片] 6 [图片] 7 [图片] 8 备注:目前该小程序有计划开源,适合云开发初学者练手用。
2020-05-31 - 纯云开发二手书商城的全开源demo
这是为母校写的一个纯粹的公益小程序,原生+云开发,写文章太累了,所以所有代码我都写了注释,还是很适合入门学习的,特别是云开发 [图片] [图片] [图片] 程序本身来说,我认为没啥多大的亮点,只不过把很多单个案例综合起来了,云开发方面,比如:支付、提现、获取用户手机号、发短信、发邮箱。。。。。。。界面上,清一色的flex布局。 和完整版得商城小程序,还差了一丢丢–购物车,因为思考了一下,这个小程序着实用不着,用来学习还是可以了滴 源码和使用教程发在Github: https://github.com/xuhuai66/used-book-pro
2019-09-18 - DDMAL开源的小程序+H5+公众号商城系统
DDMAL商城系统,开源的小程序+H5+公众号商城系统是基于ThinkPhp6.0+Vue 开发的一套移动电商系统。 演示地址[图片] 1、支持手机浏览器访问的独立H5版 新增了独立H5版本,可以适用于手机浏览器访问 为快速封装APP做好基础,不再受限于微信小程序审核的烦恼 为后期支持支付宝支付,第三方支付对接提供可行性解决方案 2、基础框架无缝升级至TP6.0 ThinkPHP6.0运行环境要求PHP7.1+T,可无缝升级系统 采用PHP7强类型 原生多应用支持 更强大和易用的查询 全新的事件系统 模型事件和数据库事件统一纳入事件系统 模板引擎分离出核心 内部功能中间件化 SESSION机制改进 对Swoole以及协程支持改进 对IDE更加友好 统一和精简大量用法 3、支持队列、长链接、定时任务 支持数据先进先出原则,减轻服务器空间资源占用压力 实现消息推送的安全、稳定、节省,加入RedisAPI,在高并发情况下稳定性更好,访问速度大大提升 轻松应对大流量访问,节省服务器资源,更适合配置CDN,实现服务器成本高效可控 4、前后端分离,API接口,二次开发更高效 ◆为优质产品打造精益团队 术业有专攻,通过前后端分离,让前后端工程师只需要专注于前端或者后端的开发工作,培养前端工程师独特的技术特性,然后构建出一个全栈式的精益开发团队。 ◆提高工作效率,分工更加明确 前后端分离的工作流程可以使得前端专心前端,后端关心后端,两者开发同时进行,提高工作效率,页面的增加和路由的修改也不必再去麻烦后端,开发更加灵活。 ◆局部性能提升 通过前端路由的配置,我们可以实现页面的按需加载,无序一开始加载首页便加载网站的所有资源,服务器也不再需要解析前端页面,在页面交互及用户体验上有所提升。 ◆增强代码的可维护性 前后端分离后,应用的代码不再是前后端混合,只有在运行期才会调用依赖关系,并且分层明确,应用代码变得整洁清晰 5、全新的移动端框架,更好的页面效果和用户体验 底层框架进行重构,低延时加载前端页面,相较传统的H5访问速度提升40倍,小程序访问速度提升10倍 [图片][图片][图片][图片][图片][图片][图片]
2020-02-27 - wemall商城16套价值74000元商用源码开放下载
打个招呼 2013年,WeMall商城开源版上线,开源中国商城类下载量第一。 2015年,WeMall商城开启商业版步伐,分销商城、多店铺、团购商城等16套商城系统接连上线。 8年来,商业版服务海内外商家5万余家。 2020年,由于新冠疫情蔓延,各行各业面临着巨大挑战,实体行业更是谋求突围,转战线上。 为助力企业线上经营,我们做了一个重要决定:WeMall商城16套商用源码29.9元全部开源! WeMall阵容 WeMall微商城系统是基于ThinkPHP技术架构,实现MVC、缓存等框架设计的微商城源码,帮助中小 企业及个人迅速搭建商城系统,减少二次开发带来的成本。 [图片][图片] 微信扫码立即下载wemall商城16套商城源码 [图片]
2020-06-12 - 优秀开源项目推荐-基于云开发的英文单词对战小程序
在我开始之前,我首先要声明我并不是这个开源项目的开发者/维护者,因此,大家不要太信任我的观点。我确实非常深入地研究了这个项目的代码实现,但是无论如何我也不能保证能跟开发者保持一致。话虽如此,我已经用源码来支持我的观点,并尝试着使我的论点尽可能的真实。 本文背景 是这样的,我最近在开发双人对战答题,在参考git上一些好的开源项目的时候发现了这个小程序,目前这个小程序完全开源的,如果对这个对战模式感兴趣可以学习下。 本文内容 本文介绍一款优秀的开源项目推荐优秀的开源项目推荐基于云开发的英文单词对战小程序 项目介绍 https://juejin.im/post/6844904136215887880 项目地址 https://github.com/arleyGuoLei/wx-words-pk 一下内容摘自开源项目readme 单词天天斗微信小程序云开发实现的单词PK小程序,支持好友对战、随机匹配、人机模式,完整代码,可以直接部署阅览 ~ UI可以披靡市场上所有同类型小程序,体验也是一流的哦 ~ 目前已经有同学在QQ小程序、阿里小程序部署;也有同学修改成了[代码]公务员题库[代码] ~ 期待看到各类优秀产品上线哦 ~ 部署文档: 源码目录下 - 部署文档.md 如果觉得这个文档比较长,可以查看源码目录下 - 精简核心文档.md 上线说明: 源码开源,但上线需要经过作者许可哦 ~ 开发不易、创作不易。需要支付RMB [代码]66+[代码]方可上线,保障作者著作权益 ~ 如果你觉得项目对你有所帮助 ~ 期待得到你的打赏哦 在线体验[图片] UI截图[图片] [图片] [图片] [图片] [图片] [图片] [图片] [图片] [图片] 需求概述[图片] 单词对战模式 对战业务需求解析单词对战的游戏核心为:随机生成一定数量的单词列表的单选题类型题目,题目文本为该单词,有 4 个随机中文释义的选项,其中仅有一个为正确释义,双方用户一起选择释义,正确率高且速度快的用户获得对战胜利。 单词对战游戏分为好友对战、随机匹配、人机对战三种对战的形式,均通过上述游戏核心的方式进行对战。 对战设置用户还可以对以下对战信息进行自定义设置 对战的单词书,用户可以选择自己想要背诵的单词类型,包含四级核心词、四级大纲词、六级核心词、六级大纲词、考研真题核心词、考研大纲词、小学必备词、中考大纲词、高考大纲词、雅思大纲词、商务词汇等多种单词书,亦可以选择随机单词书模式,则将从所有的单词中进行随机抽取;设置每一局对战的单词数目为以下任意一种:8、 10(默认)、 12、 15、 20设置切换下一题是否自动播放单词发音设置错词是否加入到生词本开始和错词的时候是否震动设置默认是否播放背景音乐,游戏中也可以随时关闭/开启背景音乐 其他细节优化加入[代码]正在对战过程中[代码]、[代码]对战已结束[代码]、[代码]房间已满[代码]等非正常类型房间,做出相应的交互提示,然后跳转至首页在对战过程中任意用户退出游戏或掉线,则结束本局游戏,进行对战结算对战结束后,房主可以选择再来一局,当房主创建好再来一局的房间后,另外一个用户可以选择再来一局,加入继续对战在对战过程中,选择错误的单词或使用提示卡选择的单词,自动加入到用户生词本,用户可以在生词本中进行复习加入倒计时机制,每一个单词的对战周期为 10s,超时则判断为错选 完整对战流程图[图片] 词汇挑战模式 词汇挑战模式业务解析词汇挑战的核心为:获取随机的一个单词作为单选题题目文本,包含四个中文释义选项,其中一个为正确答案,选择错误则失败,选择正确再获取随机单词,循环下去。 挑战复活机制在词汇挑战的过程中,如果选择错误,可以有两次复活机会 首次复活:通过分享小程序获得复活机会第二次复活:通过观看一个 15s 之内的广告获得复活机会当第三次选择错误,显示再来一局,从零开始记录分数 其他词汇挑战每正确一个词,得分增加 100 分当挑战失败的时候,如果挑战分数高于历史最高分数,则修改历史最高分数为当前分数,用于排行榜排行可以使用提示卡进行选择 完整挑战流程图[图片] 其他功能 生词本用户可以在生词本中查看在单词对战模式、词汇挑战模式中选择错误的单词可以查看单词及单词释义、播放单词发音、删词生词在设置中可以一键清空所有生词 学习打卡当在单词对战模式中,当天对战局数超过 5 局且胜利局数超过 2 局,则打卡成功可以在在打卡页面查看当日进度,可以查看历史的打卡日历 排行榜排行榜包含词力值、词汇挑战分数、签到天数等排名信息每类排行版显示前 20 名的排名头像和昵称以及分数显示自己当前类目下的排名以及分数 用户相关数据库应记录的用户数据包含:昵称、头像、对战局数、胜利局数、选择的单词本、词力值词力值机制:在单词对战模式、单词挑战模式中,每局对战都可以获得相应的词力值分数,作为用户的经验值 其他建议反馈:用户可以在小程序中,反馈意见,然后再后台可以查看用户留言打赏作者:用户可以在小程序中,通过扫码的形式,对小程序进行打赏小程序友情链接:可通过当前小程序跳转至作者的其他小程序中小程序中加入部分广告,不影响用户体验 团队组成整个项目的产品方案、UI 设计、开发、测试、上线运营等皆一个人独立完成。 技术方案 设计设置使用sketch完成,设计稿上传至[代码]蓝湖[代码],作为数据标注。 蓝湖链接链接:https://lanhuapp.com/url/qe2Dl 密码: ydIX 设计图源文件[图片] [图片] [图片] [图片] 下载链接: https://pan.baidu.com/s/1KsZjvlTUbtyYFDcVCy91lg 密码:vylm 开发技术栈前端:原生微信小程序服务端:微信小程序云开发 其他工具ESLintGit + GithubvscodeElectronNodeJSPython 系统架构 项目文件简介├── cloudfunctions # 云开发_云函数目录 | ├── model_auto_sign_trigger # 自动签到定时触发器 | ├── model_book_changeBook # 改变单词书 | ├── model_userWords_clear # 清除用户生词 | ├── model_userWords_get # 获取用户生词 | └── model_user_getInfo # 获取用户信息 ├── db # 数据整理的脚本 ├── design # 设计稿文件、素材文件 | └── words-pk-re.sketch # 设计稿 ├── docs # 项目文档 ├── miniprogram # 小程序前端目录 | ├── app.js # 小程序全局入口 | ├── app.json # 全局配置 | ├── app.wxss # 全局样式 | ├── audios # 选词正确错误的发音 | | ├── correct.mp3 | | └── wrong.mp3 | ├── components # 全局组件 | | ├── header # header组件 | | ├── loading # 全局loading | | └── message # 全局弹窗 | ├── images | | ├── ... 图片素材 | ├── miniprogram_npm # 小程序npm目录 | | └── wxapp-animate # 动画库 | ├── model # 所有的数据库操作 | | ├── base.js # 基类,所有集合继承该基类 | | ├── book.js # 单词书集合 | | ├── index.js # 导出所有数据库操作 | | ├── room.js # 房间集合 | | ├── sign.js # 签到集合 | | ├── user.js # 用户集合 | | ├── userWord.js # 生词表集合 | | └── word.js # 单词集合 | ├── pages # 页面 | | ├── combat # 对战页 | | ├── home # 首页 | | ├── ranking # 排行榜 | | ├── setting # 设置页 | | ├── sign # 签到页 | | ├── userWords # 生词表页 | | └── wordChallenge # 单词挑战 | └── utils | ├── Tool.js # 全局工具类,放了加载、全局store等 | ├── ad.js # 广告 | ├── log.js # 日志上报 | ├── router.js # 全局路由 | ├── setting.js # 全局设置 | └── util.js # 全局工具函数 ├── package.json └── project.config.json # IDE设置、开发设置 云开发数据交互的 Model 层设计在该项目中,将所有的服务端交互、数据库的读取、云函数的调用都放到了 model 目录下,对该目录结构深入解析。 (1) Base.jsbase 基类,所有其他数据集合都继承该类,在构造函数中,用来做数据集合初始化和生命一些可能所需用到的变量。 import $ from './../utils/Tool' const DB_PREFIX = 'pk_' export default class { constructor(collectionName) { const env = $.store.get('env') const db = wx.cloud.database({ env }) this.model = db.collection(`${DB_PREFIX}${collectionName}`) this._ = db.command this.db = db this.env = env } get date() { return wx.cloud.database({ env: this.env }).serverDate() } /** * 取服务器偏移量后的时间 * @param {Number} offset 时间偏移,单位为ms 可+可- */ serverDate(offset = 0) { return wx.cloud.database({ env: this.env }).serverDate({ offset }) } } (2)其他集合文件 (model 目录下,除了 base 和 index 之外的文件)在这些文件中,对应和文件名同名的集合的所有数据操作,比如 book.js 中,包含了所有对 pk_book 集合的所有数据增删改查操作。 import Base from './base' import $ from './../utils/Tool' const collectionName = 'book' /** * 权限: 所有用户可读 */ class BookModel extends Base { constructor() { super(collectionName) } async getInfo() { const { data } = await this.model.get() return data } async changeBook(bookId, oldBookId, bookName, bookDesc) { if (bookId !== oldBookId) { const { result: bookList } = await $.callCloud('model_book_changeBook', { bookId, oldBookId, bookName, bookDesc }) return bookList } } } export default new BookModel() (3)index.js在该文件中,对所有的数据集合操作文件进行引入,然后又导出,之后在其他文件中的的调用,就只需要引入该文件即可,就可以实现调用不同的集合操作。 import userModel from './user' import bookModel from './book' import wordModel from './word' import roomModel from './room' import userWordModel from './userWord' import signModel from './sign' export { userModel, bookModel, wordModel, roomModel, userWordModel, signModel } 环境区分在小程序初始化的时候,对云开发环境进行了全局的初始化,区别开发环境和正式环境。 // app.js initEnv() { const envVersion = __wxConfig.envVersion const env = envVersion === 'develop' ? 'dev-lkupx' : 'prod-words-pk' // 'prod-words-pk' // ['develop', 'trial', 'release'] wx.cloud.init({ env, traceUser: true }) this.store.env = env }, onLaunch() { this.initEnv() this.initUiGlobal() }, 难点解析 难点 1:单词数据 1. 抓包分析和代码实现本课题中使用 MacOS 系统、Charles 抓包软件、安卓手机作为抓包的基本环境。首先在电脑上安装 Charles,然后开启 Proxy 抓包代理,同局域网下配置手机 WiFi 代理实现抓取手机包。 2. 单词数据整理通过爬虫下来的单词数据如下,对于该课题的项目单词数据相对复杂,所以我们对单词数据结构进行简化,只提取项目中需要的字段,以单词 yum 为例: 优化前: {"wordRank":63,"headWord":"yum","content":{"word":{"wordHead":"yum","wordId":"PEPXiaoXue4_2_63","content":{"usphone":"jʌm","ukphone":"jʌm","ukspeech":"yum&type=1","usspeech":"yum&type=2","trans":[{"tranCn":"味道好","descCn":"中释"}]}}},"bookId":"PEPXiaoXue4_2"} 优化后: {"rank":286,"word":"yum","bookId":"primary","_id":"primary_286","usphone":"jʌm","trans":[{"tranCn":"味道好"}]} 通过 NodeJS 编写批量格式整理的程序,整理后导出 JSON 文件 [图片] 3. 数据文件批量导入(传入数据库)由于微信小程序云开发控制台不支持数据文件的批量导入数据库,所以开发了一个支持云开发数据集合批量导入的程序 [图片] [图片] [图片] 数据库批量导入程序更多解析:https://juejin.im/post/5e2bf3e4f265da3e4244ea7f程序代码开源:https://github.com/arleyGuoLei/wxcloud-databases-import 难点 2:单词对战模式本节详细解析单词对战模式的实现,将从创建房间(生成随机词汇、新增房间数据)、对战监听、对战过程(好友对战、随机匹配、人机对战)、对战结算的角度进行分析。 创建对战房间对战房间的创建,分为触发创建房间事件、获取当前选择的单词书、获取单词对战每一局的词汇数量、从数据库 pk_word 集合读取随机单词、格式化获取的随机单词列表、创建房间(使用生成的单词列表、是否好友对战条件)、根据房间的 roomId(主键)跳转至对战页等多个步骤流程组成。 [图片] 房间数据监听单词对战模式中,对 room 数据集合的监听是对战的核心要点,进入对战页面后,调用数据集合的 WatchAPI 对 room 集合中的当前房间记录进行监听,在当前房间记录数据发生变化的时候,将会调用 watch 函数的回调,执行相应的业务,详细流程如下: [图片] 好友对战的实现有了前面创建好的对战房间,也建立好了对当前房间的数据监听,接下来就可以实现有趣的对战交互了。游戏会监听好友用户准备,更新 room 集合中的 right.openid 字段,触发 watch,通知房主可以开始对战;房主点击开始对战,会更新 room 集合中的 state 字段为 PK,watch 回调通知双方开始对战,显示第一道题目,双方用户选择释义的时候,会把选择结果和得分更新至 left/right 中的 grades 和 gradeSum 字段,在 watch 的回调中对双方的选择结果进行显示;当对战到达最后一道题目,且双方都选择完毕,进入结算流程,将房间 state 更新至 finish;如果在对战过程中,有任意用户离开对战,将修改房间 state 为 leave;对战结束之后,房主可以选择再来一局,进行创建房间,更新上一个房间的 nextRoomId 字段,在 watch 回调中通知非房主用户可以加入新的房间,进行再来一局的对战。 [图片] 随机匹配的实现随机匹配对战相对于好友对战的区别在于:好友对战是通过房主将房间链接(roomId)分享到微信好友/微信群,当用户点击分享卡片之后,会跳转至对战页面且房间 Id 为当前分享的房间 roomId,用户进入房间之后就进行上述的监听操作和准备、开始对战等。然而随机匹配的实现原理为,当用户触发随机匹配操作之后,会先在数据库检索有没有符合自己所选择的单词书、目前房主在等待的房间,如果有则加入该房间,如果没有则创建新的随机匹配房间,等待其他用户进入。用户进入之后会自动触发准备操作,房主在 watch 中监听到有用户准备,然后自动触发开始对战操作,后续对战、结算、再来一局流程则和好友对战流程一致。 [图片] 人机对战的实现人机对战的核心思想为:房主用户端随机取一名人机用户,房主端触发人机的自动准备,房主端也自动开始对战,在对战过程中,房主端通过页面 UI 用户手动选词,人机将在 2~5s 或房主选词之后随机完成选词操作,正确率为 75%。 后期可以对正确率进行优化,根据用户的历史正确率进行自动化推算,实现更智能的人机用户,提供更好的用户体验。 [图片] 最后通过 3 个月的开发、功能迭代和运营,目前拥有2600 多的用户量,小程序用户打分为5.0 满分。创建房间且完成对战12000 多局,收录词汇25960个,收录了用户65000多个生词,十分感谢这个项目带给我的成就感。
2020-09-02 - 【开源】多多客小程序-微信小程序SaaS平台源码-微信第三方服务商必备
多多客小程序作为青否原班人马打造的微信小程序第三方SaaS平台,结合5年商城系统、3年小程序SaaS平台研发及运营经验,重点发力小程序个性化和各类营销玩法。 [图片] 多多客小程序开源版,基于doodoo.js,vue.js,Koa+Vue+Taro最佳实践。 多多客小程序支持完全可视化DIY,50+营销组件,海量行业模板。 可视化DIY,随心设计 丰富组件库,样式、大小、颜色自由更改;可视化自由拖拽,满足任何个性化需求。 [图片] 50+营销组件,提升留存率 分销、拼团、集赞、WIFI一键连、消息推送等多样营销玩法,获客、促活新利器,轻松助力企业推广、提升留存。 [图片] 海量行业模板,多样化选择 汽车、房产、教育、美容等各行业优质模板不断更新,任意选择搭配使用,30 s生成企业精美微站。 开源版:https://gitee.com/doodooke/doodoo 体验地址(商业版):https://www.doodooke.com/
2020-03-19 - 发现开源小程序之美十,旅游攻略小程序
发现开源小程序之美一,个人博客小程序 https://developers.weixin.qq.com/community/develop/article/doc/000a40e13ec550274e2a9addd56413发现开源小程序之美二,微慕WordPress小程序 https://developers.weixin.qq.com/community/develop/article/doc/000c44945dc728ab9c2aff2a55b013发现开源小程序之美三,抽奖助手小程序 https://developers.weixin.qq.com/community/develop/article/doc/0002846854056847b66a2d13451013发现开源小程序之美四,在线答题小程序 https://developers.weixin.qq.com/community/develop/article/doc/00040af07005609a223acee0151413发现开源小程序之美五,营销组件库 https://developers.weixin.qq.com/community/develop/article/doc/000c4235c98740a1dc2a1a6045b013发现开源小程序之美六,酱茄小程序 https://developers.weixin.qq.com/community/develop/article/doc/00040ede6d0388082a3aeb49b57813发现开源小程序之美七,二手书商场 https://developers.weixin.qq.com/community/develop/article/doc/0006ceb61a87182a4b3a1b32a5bc13发现开源小程序之美八,我要戴口罩https://developers.weixin.qq.com/community/develop/article/doc/0006a047b0cee0d5713ad731f5b813发现开源小程序之美九,失物招领小程序 https://developers.weixin.qq.com/community/develop/article/doc/000ca6a3b28ce8857b5a8bb3351c13发现开源小程序之美十,旅游攻略方面的微信小程序 https://developers.weixin.qq.com/community/develop/article/doc/000cc694e9c790ce755aee41556013 不知不觉已经整理了十个开源小程序,10作为一个数字的临界值,我打算作为该系列的最后一篇文章,后面如果有好的开源项目推荐,会开一个新的系列。 之所以推荐这个小程序是因为目前我本人在做一个民宿的项目,所以从这个开源小程序做了很多的参考,学习到很多。 白鲸旅行攻略[图片]项目简介:一款非常优秀的旅游攻略方面的微信小程序项目已经上线 有疑问可以提Issues 我看到会及时跟进的目录结构:images — 存放项目图片pages — 存放项目页面相关文件style — 存放独立wxss样式文件,可import引入utils — 存放utils文件,可require引入项目截图:[图片] [图片] [图片] [图片] [图片] [图片] [图片] 码云地址 https://gitee.com/ckjcode/big-white-whale-travel-guide
2020-05-29 - 减少重复造轮子,开源微信小程序商城(前后端开源:uniapp+Java),秒杀、优惠券、多商户、直播卖货、分销等功能。
注意 Entity里不是缺少get、set方法,Eclipse、IDEA请先安装lombok插件 使用须知 ✅允许 个人学习使用 允许用于学习、毕设等 允许进行商业使用,请自觉遵守使用协议,如需要商业使用推荐购买商业版(进群联系群主) 请遵守 Apache License2.0 协议,再次开源请注明出处 推荐Watch、Star项目,获取项目第一时间更新,同时也是对项目最好的支持 如何交流、反馈、参与贡献? 官方社区:http://fly2you.cn gitee仓库:https://gitee.com/fuyang_lipengjun/platform github仓库:https://github.com/lipengjun92/platform-wxshop 官方QQ群: https://qm.qq.com/cgi-bin/qm/qr?k=HNLRmaIdvnj2e_TGkMspORvIn-AHNZCb&jump_from=webapi”>img border=“0” src="//pub.idqqimg.com/wpa/images/group.png" alt=“微同科技 ①群” title=“微同科技 ①群”> https://qm.qq.com/cgi-bin/qm/qr?k=4i3Z9xgp7SlPnk_X1v0TWToSOoT_gJMz&jump_from=webapi”>img border=“0” src="//pub.idqqimg.com/wpa/images/group.png" alt=“微同科技 ②群” title=“微同科技 ②群”> https://qm.qq.com/cgi-bin/qm/qr?k=hQLMx7vYLfP_C-d2-yP_udx1yciJXfHC&jump_from=webapi”>img border=“0” src="//pub.idqqimg.com/wpa/images/group.png" alt=“微同科技 ③群” title=“微同科技 ③群”> Watch、Star项目,进群联系群主获取《微同开源商城启动部署手册.docx》 技术讨论、二次开发等咨询、问题和建议,请移步到官方社区,我会在第一时间进行解答和回复! 微信扫码并关注公众号,获得项目最新动态及更新提醒 [图片] 开发计划 1 使用uniapp重构小程序端所有页面 2 修复所以已知bug,使用遇到bug请给我们提交issues 3 后台使用SpringBoot重构 4 适配H5、IOS、Android端 5 接入支付宝支付 6 出配套视频教程 微同商城商业版 小程序 [图片] H5 IOS Android 商业版与开源版差异 微信小程序商城(Java版) 获得荣誉 GVP [图片] 新手必看启动教程 https://www.bilibili.com/video/av66149752 微同商城开源版体验: [图片] git:https://gitee.com/fuyang_lipengjun/platform 代码生成工具IDEA插件 git:https://gitee.com/fuyang_lipengjun/platform-gen 技术选型 1 后端使用技术 1.1 springframework4.3.7.RELEASE 1.2 mybatis3.1.0、MyBatis-Plus 3.1.0 1.3 shiro1.3.2 1.4 servlet3.1.0 1.5 druid1.0.28 1.6 slf4j1.7.19 1.7 fastjson1.2.30 1.8 poi3.15 1.9 velocity1.7 1.10 quartz2.2.3 1.11 mysql5.1.39 1.12 swagger2.4 1.13 j2cache2.3.22-release 1.14 weixin-java-mp3.2.0 1.15 MybatisPlus3.1.0 1.16 lombok 2 前端使用技术 2.1 Vue2.5.1 2.2 iview 2.3 layer3.0.3 2.4 jquery2.2.4 2.5 bootstrap3.3.7 2.6 jqgrid5.1.1 2.7 ztree3.5.26 2.8 froala_editor1.2.2 项目结构 [代码]platform |--platform-admin 后台管理 |--platform-api 微信小程序商城api接口 |--platform-common 公共模块 |--platform-framework 系统WEB合并,请打包发布此项目 |--platform-gen 代码生成 |--platform-mp 微信公众号模块 |--platform-schedule 定时任务 |--platform-shop 商城后台管理 |--uni-color-ui uni-mall商城参考项目 |--uni-mall 移动端商城 |--wx-mall 微信小程序商城 [代码] 实现功能 一:会员管理 a 会员管理 b 会员等级 c 收货地址管理 d 会员优惠劵 e 会员收藏 f 会员足迹 g 搜索历史 h 购物车 二:商城配置 a 区域配置 b 商品属性种类 c 品牌制造商 d 商品规格 e 订单管理 f 商品类型 g 渠道管理 h 商品问答 i 反馈 j 关键词 三:商品编辑 a 所有商品 b 用户评论 c 产品设置 d 商品规格 e 商品回收站 四:推广管理 a 广告列表 b 广告位置 c 优惠劵管理 d 专题管理 e 专题分类 五:订单管理 a 所有订单管理 六:系统管理 a 管理员列表 b 角色管理 c 菜单管理 d SQL监控 e 定时任务 f 参数管理 g 代码生成器 h 系统日志 i 文件上传 j 通用字典表 七:短信服务平台 a 配置短信平台账户信息 b 向外提供发送短信接口: [代码]http://域名:端口/api/sendSms?mobile=13000000000,15209831990&content=发送的短信内容 安全起见,需配置有效IP地址。platform.properties -> sms.validIp [代码] 安装教程 配置环境(推荐jdk1.8、maven3.3、tomcat8、mysql5.7、redis4.0.1) 创建数据库 依次初始化sql脚本 /_sql/platform.sql /_sql/sys_region.sql 导入项目到IDE中 导入支付证书至/platform-shop/src/main/resources/cert/目录下(申请商户号、开通微信支付、下载支付证书) 修改配置文件 /platform-admin/src/main/resources/dev/platform.properties jdbc.url jdbc.username jdbc.password wx.appId wx.secret wx.mchId wx.paySignKey wx.notifyUrl sms.validIp mp.appId mp.secret mp.token mp.aesKey 修改配置文件 /platform-admin/src/main/resources/j2cache.properties redis.hosts redis.password 启动redis服务 启动后台项目(参照开发文档) 打开微信开发者工具 导入 /wx-mall填写appId 修改 /wx-mall/config/api.js里API_BASE_URL的值 使用eclipse启动项目后默认访问路径 http://localhost:8080/platform-framework 使用idea启动项目后默认访问路径 http://localhost:8080 页面展示 登录页面 [图片] 首页 [图片] 发送短信 [图片] 捐赠 [图片] 小程序首页 [图片] 专题 [图片] 分类 [图片] 购物车 [图片] 登录授权 [图片] 优惠券 [图片] 小程序并联手机 [图片] uniapp版本 [图片] [图片] [图片] [图片] [图片] [图片] 开发文档目录 a name=“doc” href=“http://fly2you.cn/guide/index” target="_blank">[图片]
2020-08-11 - 开源微信小程序商城,开源微信商城小程序,PHP开源小程序商城
微信小程序商城,微信商城,多门店+拼团+限时秒杀+砍价+优惠券+积分+三级分销; 软件架构后端:thinkphp3.2.3;缓存:redis; 前端:未使用uniapp等第三方开发框架 安装教程小程序端:clone或者下载代码,用微信开发者工具进行编辑 请修改相应的appid 后端: 1:QQ群:573290500, 2:群文件下载, 3:准备域名 4:完成域名解析 5:上传程序到服务器 6:配置扩展 PS:详细安装过程查看群文件; 前端效果图概述 [图片] 支持积分,优惠券,多门店,到店核销 [图片] [图片] 团购:开团/参团 [图片] 限时秒杀 [图片] 砍价 [图片] 三级分销 [图片] 小程序二维码 [图片] 演示后台https://shop.e-notice.cn/admin.php 账户:admin 密码:admin123456 PS:演示后台每小时自动还原 源码: https://gitee.com/zp16162004/PCSHOP
2020-09-25 - 微信证件OCR小程序应用案例分享
应用场景 身份证/银行卡识别 用户身份认证 - 应用于政务、金融、企业服务等应用下的远程用户身份认证,自动识别并录入各字段信息,降低用户输入 成本,有效提升用户体验。 商户身份核验 - 应用于电商、外卖、运输服务等场景下的商户身份认证、资质文件审核,提高平台服务质量,规避恶意违规等业务风险。 身份证识别: [图片] 银行卡识别: [图片] 营业执照识别 企业信息电子化存档 - 准确识别营业执照的关键字段,快速核验企业资质,完成企业信息的快速录入,提升企业信息化管理水平,有效节约人力成本 。 商家资质审查 - 通过对供应商企业信息的结构化识别和审核核验,提高合作伙伴的管理效率 银行金融信贷服务 - 适用于企业银行开户、信贷评估等金融服务场景,通过对企业信息的自动化审查,提升银行业务效率,有效控制业务风险。 [图片] 驾驶证/行驶证识别 车主身份认证 - 只需拍照即可快速上传本人证件信息,帮助车主快速完成身份认证,降低车主输入成本,广泛应用于 ETC 办理、打车、租车、车险投保理赔等场景。 车主信息服务 - 在汽车保险理赔、二手车交易、车辆租借和年审等场景,帮助用户快速录入车辆相关信息,提高业务人员的办公效率和服务准确性。 [图片] 通用印刷体识别 纸质文档电子化- 使用通用文字识别技术,助您完成大量的文档整理工作,从书籍、纸质论文、档案、PPT 课件等印刷资料,到课堂笔记、作业作文等手写内容,均可实现拍照自动识别文字,方便用户进行文本录入和文档管理,提高产品易用性和用户体验。 [图片] 补充:微信证件OCR的接口文档 银行卡识别 营业执照识别 驾驶证识别 身份证识别 通用印刷体识别 行驶证识别 服务平台 OCR 接口
2020-10-10 - 【U计划】弹幕biubiu小程序开发经验分享
弹幕biubiu小程序开发经验分享 Hello,大家好~我们是来自清华大学软件学院大三的弹幕弹幕团队,我是团队的Leader&Developer。我们团队开发的小程序叫作“弹幕biubiu”,主要应用场景是各类晚会现场。你可能已经发现了,我们的团队名和小程序名是不一样的,这是因为我们在确定了团队名称之后,发现这个名字已经被其他的小程序占用了,所以我们只能将小程序换成另一个名字。这也提醒了大家,在开发小程序的时候,一定要先确认自己起的名字没有被使用哦~ 我们的小程序是从去年10月开始开发的,直至今年3月基本完成。之后在今年4月的清华大学软件学院学生节上,我们的小程序作为观众弹幕互动平台被使用,并取得了广泛好评。这一方面说明我们小程序的实用性,另一方面也说明了弹幕互动及其衍生方向依然有很大的发展空间。 [图片] 我们团队的开发选用了敏捷开发的方式,并采用Scrum框架(下图源自清华大学软件学院刘强老师的软件工程课件)。本文将介绍我们团队在开发过程中所做的一些主要工作,希望能够给大家一些启发与帮助。[图片] 1.立项 万事开头难,开发过程中最困难的地方,往往就是在最开始的地方。一个团队中不缺技术人员,而缺少设计人员,也就是“有思想的人”。而且好的想法一定是来源于生活的,如果不仔细观察生活,只是天马行空地构想,是无法获得好的项目主题的。 我们团队在计划开发一个小程序之后,就开始讨论主题。首先我们确定了我们小程序的大致方向。我们发现在每次举办院系学生节时,都需要科协同学用一天的时间去部署弹幕墙,这样效率较低,而且也常常出现弹幕墙宕机的情况,所以我们决定开发一个学生节小程序。之后我们团队通过头脑风暴,将自己设想为学生节举办方与学生节观众,讨论我们可能需要哪些功能,不需要哪些功能等等,从而将项目目标进一步细化。 在这里我们并不能只单纯地讨论,我们需要一个记录者,将所有人的想法记录下来并进行归整,之后再由每个成员进行修改完善,得到我们开发的第一份文档——产品规划文档(弹幕biubiu的产品规划文档)。如果大家对产品规划文档形式不太清楚的话,可以参照上述我们的文档。在文档中我们对于产品的定位、产品的特性以及产品的路线都有了一个明确的描述。 当我们有了产品规划文档之后,立项的过程还没有结束。因为这个文档只是根据自己团队的想法写成的,但是真正的用户会有成千甚至上万人,并不一定每个人都和团队内的成员想法相同。除此之外,市场上可能已经有一些类似的产品。所以我们必须要进行一个调查,明确其他可能的用户的需求以及现有市场上的产品提供的功能。这样的调查有助于我们跳出团队内固有的思维模式,催生出一些新的点子,同时也能避免无用功。在调查结束之后,我们获得了更多的用户需求。我们需要对需求进一步整理细化,写出用户故事(弹幕biubiu的需求获取与用户故事文档),并画出用户故事地图。 [图片] 到此为止,我们基本完成了所有立项工作。这时整个团队应当对自己的项目开发目标有了明确清晰的认知。 2.设计 当明确需求之后,我们就要开始设计工作,也就是进入到敏捷开发的迭代周期中了。设计主要分为两部分: 系统设计 原型设计 系统设计中最重要的工具是UML,即统一建模语言。你可能会用到其中的类图、活动图、用例图等。 2.1 系统设计 系统设计目的是确立技术开发过程中的总纲,这也是开发过程中极为重要的一步,整个开发过程都是围绕系统设计文档展开的。 我们团队开发的小程序使用的是MVC模式,即模型(model)-视图(view)-控制器(controller)。这种模式满足了高内聚、低耦合的程序结构,便于团队开发与管理。 系统设计要求我们首先对于整体系统结构有一个清晰的构想。我们的弹幕小程序的系统架构图如下所示,可以看到这里我们将系统清晰地分为了数层。 [图片] 之后我们就需要对系统的结构进行细化,主要包括两部分内容: 数据存储结构。也就是数据库的设计。我们用一个数据库来管理数据,那么我们需要构造哪些表,每个表中需要保存那些数据等等,都是我们需要考虑的问题。我们团队采用了Mysql+Redis两种数据库相结合的存储模式,保证了数据的读写效率。 前后端接口设计。接口设计可以方便团队前后端开发的分离,提高开发效率。我们团队采用的是Restful的API接口规范,大家可以自行查阅了解该规范的内容。 因为不同的小程序会有不同的系统,所以我这里的设计思路也仅供大家参考,主要的还是要开发团队自己思索并设计,得到最适合自己的系统结构。当然合适的系统架构不意味着在项目的最初就要将所有细节想得十分透彻。一个好的系统架构主要有两方面的特征:稳定的框架与可扩展性。稳定的框架保证了开发过程中无需对代码进行很大程度的调整重构;可扩展性保证了开发人员可以很轻松地将后续的内容添加进系统,而不会影响系统整体的特性。 2.2 原型设计 原型设计,也就是UI设计。我们团队使用的工具是墨刀。墨刀有着丰富的素材库,并且可以设计控件行为,方便团队成员理解交互过程。 [图片] 原型设计往往会是团队中讨论最激烈的环节,因为每个人的审美是不同的,更何况团队中基本都是理工生(sigh…)。我们在原型设计时也进行了多次讨论与修改,才最终确定其样式。 3.开发 3.1 团队管理 自组织团队是敏捷开发的基础,团队被授权自己管理工作进程,并决定如何完成工作。团队成员在开发的过程中需要各司其职,扮演好自己的角色。但是根据著名的“20%定律”,每个团队中总会有20%的成员是free rider,所以这就需要团队的领导者对团队进行良好管理。 在开发的初期,一个团队需要制定自己团队的开发章程,包括每周的开会时间、开会地点、每个成员负责开发的模块、团建安排等,并在之后的开发过程中严格按照章程的规定管理团队。 其次,团队在每次例会时,需要每名成员汇报之前任务的开发进度,对开发过程中遇到的问题进行讨论思考,并确定下一阶段的开发任务。每次的例会都需要指定一名成员记录会议内容,方便团队日后查看。 团队管理中,最主要的就是任务安排的部分。任务安排主要包括两点:明确分工与时间规划。 明确分工是要让大家清楚自己具体是要做什么,其重点在于“细化”。举个例子,如果你和我说,“你去做一个主办方管理网站”,我肯定一头雾水无从下手;但是如果你和我说:“你去实现一个主办方登录的功能,主办方输入用户名和密码就可以跳转到活动列表页面”,那我就可以很快地完成这一个任务。所以明确分工是团队成员,尤其是组织者,需要重点注意的。 时间规划则是让大家有一个紧迫感。做时间规划最好的方法是,组织者先定一个大概的时间,然后所有团队成员进行协商,定出每个人都满意或至少不反对的时间安排。因为团队成员都会有惰性,就算最好的团队也不例外,所以一个明确的时间规划可以让每个人有计划有安排地完成任务。从这个意义上来讲,时间规划也是调动成员热情的不错的方案。 3.2 代码管理与持续集成 我们团队使用git进行代码版本的控制管理,在开发过程中维护了三个代码库,分别对应于系统后端、微信小程序以及弹幕主墙应用程序。我们也利用Github上的Issues、Projects、Wiki等功能辅助我们进行开发。由于我们团队尚未开源,所以这里也不方便向大家展示代码库的具体细节。 此外,我们团队使用Travis CI辅助我们进行代码的持续集成与自动部署,感兴趣的话大家可以自主学习一下它的使用方法。 3.3 文档管理 通过上文我们也发现了,在开发过程中我们会写很多的文档,所以合理的文档管理也是开发中的重点问题。我们团队使用的在线文档工具是石墨文档。石墨文档有三个优点: 有清晰简洁的界面与丰富的功能 支持多成员在线编辑 可以很方便地导出为word文档与pdf文档 我们团队还维护了一个产品文档目录,这样每次要修改或查阅文档时,都有一个很便捷的入口。 [图片] 4.测试 测试主要有三部分:单元测试、功能测试与性能测试。 单元测试。单元测试,就是对软件中最小可测试单元进行检查和验证。不同软件的单元测试是不同的,比如我们在开发后端时,使用的是Python中的Django框架,这一框架是自带单元测试模块的,所以我们只需在test.py中实现所有测试样例即可。单元测试保证了软件最基本的正确性,最佳的模式是开发者在开发的过程中就将单元测试样例写好。(现在微信小程序还没有单元测试的模块,希望之后小程序团队可以在这方面给出接口。) 功能测试。功能测试就是要测试软件系统的各个功能能否正常执行。功能测试的辅助软件有很多,但最简单也最方便的就是人工手动测试,也就是开发者模拟用户的使用场景测试一遍自己的软件系统。 性能测试。软件性能也是评判一个软件好坏的重要依据。就以我们的弹幕小程序为例,虽然现在的学生节晚会只有三百多人,但是如果要拓展到所有晚会时,就不得不考虑高并发的情况。所以我们团队使用Jmeter对于发送弹幕的功能进行了性能测试,并在测试之后通过图片压缩等方式提高了我们小程序的性能。 除此之外,测试环节还包括安全性测试、易用性测试、兼容性测试等。测试过程中大家需要尤其注意的地方是:一定要将测试场景与测试样例想全面。越是严密的测试,软件系统也就相应越理想。 5.分析与维护 在开发与测试结束之后,小程序也就被正式投入使用了。因为用户行为是多种多样的,所以这个时候不出意外会出现一些奇奇怪怪的bug。作为开发者一定要给出一个用户反馈的途径,并且根据用户反馈的问题,制定下一个迭代周期的任务。这样循环往复,直至软件达到预期。下图为我们小程序为用户提供的反馈接口: [图片] 6.总结 以上就是我在开发过程中的一些经验与体会,希望能够给大家一些帮助与启示。弹幕biubiu小程序的开发,对于我来说是一个特别宝贵的经历。在这个过程中我学到了很多新的知识,接触到了很多新的事物,也发现了其他同学很多的优点。同时也很感谢刘强与刘璘两位老师对我们团队的支持与指导,在这里也推荐一下两位老师在学堂在线上的软件工程课程,如果大家感兴趣的话可以去了解学习一下,相信会给你们很大的帮助。 附言 如果大家对我们的小程序感兴趣的话,也可以使用一下呀~ 使用说明 主办方管理网站 应用程序下载链接(也可在主办方管理网站中下载) 小程序二维码 [图片] 大家有什么问题或者建议的话,也欢迎随时与我交流~ 我的Github地址是:https://github.com/JL-Cheng 我的邮箱是:chengjl16@163.com
2019-05-23 - 小程序适合中小企业开发吗?如何进行盈利?
经过两年的发展,小程序已成为当下最强风口,但小程序到底好在哪,有什么用,很多中小企业的管理者却说不清楚。 一谈到小程序,大家就会认为是微信小程序,其实小程序有很多。随着阿里、百度、字节跳动等互联网巨头入局小程序,小程序应用正在迅猛增长,小程序整体产业生态也将持续扩展,产业链将得到进一步的完善。可以预见未来,小程序终将打破APP所形成的信息孤岛,让移动互联网真正地互联互通,变得更加开放和包容,因此,对几乎所有企业有着重要意义。 那么对中小企业来说,小程序具体能干嘛? 1、提升企业形象 相较于开发和运营APP,小程序的制作和运营更为容易,成本更低,而且能给用户带来更便捷的使用体验。因此,制作精良的小程序可以成为企业对外展示自我的名片。 2、降低营销成本 不论是网站、H5、信息流广告,它们都有一个特点——投入高。小程序对企业而言,意味着从烧钱"等客来店"到主动触网抓取流量。小程序拥有很多新颖的营销玩法,以微信小程序为例,“动态分享卡片”、"附近的小程序"等功能,能大幅度企业的营销成本,尤其对于初创企业来说,小程序无疑是中小企业最佳的营销方式之一。 3、拓展和维护用户 小程序作为新物种,经过两年的持续教育市场,用户习惯已经逐渐形成。可以预测的是,未来用户将会更加依赖小程序。以BAT为例,微信跳出社交的圈子,推出小程序,抓住用户的吃喝玩乐,渗入用户的线下日常生活,拉长用户在微信上的停留时间。而支付宝和百度,分别从生活服务和人工智能角度发力小程序,不仅可以增加用户停留时间,还能增加新用户。 4、提升转化率 小程序的便捷与高效,能有助于大幅提高程序的点击率和最终的转化率,对企业和平台来说是属于双赢。以去年双11购物节为例,包括京东在内的购物小程序,表现都非常亮眼。京东购物小程序,其在双十一期间的PV就达到 16371万,新引入UV总量达到1663万;唯品会双十一当天通过小程序渠道接的订单就超过了55万个;永辉到家"大本营"福州订单超6万单,同比去年增长1553%。 小程序下载:https://www.sucaihuo.com/source/0-0-266-0-0-0 小程序又该如何盈利呢?对广大中小企业来说,目前小程序赚钱的模式有以下几种: 1、社群电商 通过一系列社交玩法,让小程序在微信等社群中传播开去,从而引发购买欲望和购买行为。其实,内容和社交电商是将以往的H5商城或第三方购物平台替换成小程序。因为小程序的触达更快更准确,所以内容和社交的引流效果会好很多。 2、内容电商 除了微信小程序外,抖音/今日头条小程序也是做内容电商的绝佳机遇,通过内容激发读者的购买冲动,引导其进入小程序购买商品,从而实现"内容→购买"的转化。 3、O2O服务 利用小程序线上的强引流性,将用户引导到线下门店,促成转化。以社区超市为例,消费者从附近的社交分享、小程序、文内广告等途径进超市的小程序,领取优惠券后去超市购物。消费后,店家还能留存用户信息,建立会员体系,进一步了解用户的偏好、消费习惯等,最后有针对性地做个性化喜好推荐、会员优惠等。 当然了,小程序的红利空间很大,盈利模式绝非仅仅以上几种,其他的需要大家去探索。不过一定要记住一点:无论你打算以哪种方式进入,一定要快!
2019-05-22 - 开源闯关答题小程序
全民闯关答题小程序是使用云开发的在线答题小程序,无需搭建服务器,无需域名即可使用云端能力。 V2.0版已完成功能 答题闯关挑战答题发放红包(可设置几题发放红包,每题设置红包数额)答题等级设置(自定义等级名称和关卡)观看激励视频获取金币(限制每天观看次数)排行榜显示红包兑换物品设置更多软件推广集成banner 视频广告,插屏广告,激励视频广告等展示截图 [图片][图片][图片][图片] 现将V1.0初始版进行开源学习,欢迎大家学习,如果上线需要经过作者许可哦 ~ 开发不易、创作不易。 码云地址: https://gitee.com/yingwuniao/chuangguan 技术文档下次会发文章补上
2020-10-10