快速安装教程

一、导入商城到HbuilderX

以下导入项目方式,任选一种即可

  1. 从HbuilderX编辑器新建项目
  2. 从插件市场导入
    云上商城在新窗口打开点击“导入插件并试用”或者“导入源码授权”,同意付费插件试用协议,选择绑定的服务空间,跳过在线安装,继续导入到HbuilderX

二、运行安装向导


耐心等待上传公共模块、普通云函数、action、默认数据(db_init.json)以及database下的schema,
如果遇到提示覆盖公共模块,则选择“替换

如果遇到提示覆盖数据库,则选择“跳过

三、修改uni-id配置

微信小程序登录

  • 如果发布微信小程序才需要修改此配置,找到文件/uniCloud/cloudfunctions/common/uni-config-center/uni-id/config.json,修改mp-weixin/oauth/weixin里面的appid和appsecret
    ⚠️mp-weixin表示微信小程序平台独有配置
    "mp-weixin": {
    		"oauth": {
    			"weixin": {
    				"appid": "修改为你的小程序appid",
    				"appsecret": "修改为你的小程序appsecret"
    			}
    		}
    	},
    
  • 微信小程序后台配置合法域名
    request合法域名
    https://apis.map.qq.com;https://cos.ap-shanghai.myqcloud.com;https://tcb-api.tencentcloudapi.com;https://at.alicdn.com;https://api.next.bspapp.com;  
    
    uploadFile合法域名,阿里云正式版填写“总览”里面的云存储上传域名;腾讯云需要在微信开发工具中,关闭“不校验域名”选项,再在页面上上传图片,提示系统xxx.ap-shanghai...com不在白名单内,这个域名就是你要添加的
    https://cos.ap-shanghai.myqcloud.com;https://file-unirlhsrdn-mp-75aexxx-xxx.oss-cn-zhangjiakou.aliyuncs.com;https://7463-tcb-xxx-xxx-xxx.cos.ap-shanghai.myqcloud.com  
    
    download合法域名,阿里云正式版还需要填写“总览”里面的云存储下载域名;腾讯云上传完成一张图后,查看图片的域名
    https://cos.ap-shanghai.myqcloud.com;https://mp-75aexxx-d2c1-4670-b6f6-377990c3f4d8.cdn.bspapp.com  
    
    关闭“不校验域名”选项后提示报跨域问题,就把报错的域名一并加上
  • 到微信后台申请小程序接口在新窗口打开,“wx.chooseLocation”,“wx.getFuzzyLocation”
  • 修改项目根目录下的manifest.json,找到“微信小程序配置”修改“微信小程序APPID”

APP手机号一键登录

如果发布app才需要修改此配置,配置之前需要在一键登录管理后台在新窗口打开申请权限,获得你的ApiKey和ApiSecret,充值10元钱,添加当前应用到已开通应用列表,安全配置里面,选择自己的服务空间,再找到文件/uniCloud/cloudfunctions/common/uni-config-center/uni-id/config.json修改service/univerify配置
⚠️必须遵循json格式

"service": {
		"univerify": {
			"appid": "your appid,例如:__UNI__D98D49B",
			"apiKey": "your apiKey",
			"apiSecret": "your apiSecret"
		}
	}

APP短信登录

如果发布app才需要修改此配置,在用户未选择一键登录的时候,登录界面默认使用手机号+验证码方式登录,配置之前,需要在短信管理后台在新窗口打开申请权限,获得smsKey和smsSecret,充值10元钱,再申请短信签名、短信模板,安全配置里面,选择自己的服务空间,
找到文件/uniCloud/cloudfunctions/common/uni-config-center/uni-id/config.json,修改service/sms配置
⚠️必须遵循json格式

"service": {
		"sms": {
			"name": "柔然科技",
			"codeExpiresIn": 180,
			"smsKey": "343d50a45f5fbe062f78a3",
			"smsSecret": "1f8d5cf992c8483e52038e"
		}
	}

短信登录模板

如果发布app才需要修改此配置
添加模板
签名内容「选择申请的签名」
模板类型「验证类」
模板名称「登录验证码」
模板内容「验证码:${code},${expMinute}分钟内有效,请勿泄露并尽快验证。」
使用场景「注册登录app」 再修改短信登录模板ID,找到文件/uniCloud/cloudfunctions/common/configs/config.json,修改service/sms
⚠️必须遵循json格式 json "service": { "sms": { "templateId": { "login": "10190" } } },

四、修改uni-pay配置

微信小程序支付

⚠️仅发布微信小程序需要配置此项
找到文件配置文件/uniCloud/cloudfunctions/common/configs/config.json,修改mp-weixin/payment/weixin下配置,payment直接子项表示再微信小程序平台支持的支付方式,目前配置支持微信支付/余额付款/货到付款,可以根据实际需求删除任意一项

"mp-weixin": {
		"payment": {
			"wxpay": {
				"uniPay": "initWeixin",
				"name": "微信",
				"payName": "微信支付",
				"appId": "修改为小程序appid",
				"mchId": "修改为微信商户号ID",
				"sub_appid": false,
				"sub_mch_id": false,
				"v3Key":"修改为ApiV3的key",
				"appCertPath":"apiclient_cert.pem,实际文件放到cert目录下",
				"appPrivateKeyPath":"apiclient_key.pem,实际文件放到cert目录下",
				"key": "修改为ApiV2的key",
				"pfx": "application.p12,实际文件放到cert目录下"
			},
			"balance": {
				"uniPay": "initBalance",
				"name": "余额",
				"payName": "余额支付"
			},
			"delivery": {
				"uniPay": "initDelivery",
				"name": "货到付款"
			}
		}
	}

APP支付

⚠️仅发布移动APP才需要配置此项
找到文件配置文件/uniCloud/cloudfunctions/common/configs/config.json,修改app/payment/weixin下配置,payment直接子项表示在APP支持的支付方式,目前配置支持微信支付/余额付款/货到付款,可以根据实际需求删除任意一项

"app": {
		"payment": {
			"alipay": {
				"uniPay": "initAlipay",
				"name": "支付宝",
				"payName": "支付宝支付",
				"appId": "201916540934089",
				"mchId": "15295677371",
				"privateKey": "MIIEvgIBADANBgkqhki",
				"alipayPublicKey": "MIIBIjANBgkqhkiG"
			},
			"wxpay": {
				"uniPay": "initWeixin",
				"name": "微信",
				"payName": "微信支付",
				"appId": "修改为小程序appid",
				"mchId": "修改为微信商户号ID",
				"sub_appid": false,
				"sub_mch_id": false,
				"v3Key":"修改为ApiV3的key",
				"appCertPath":"apiclient_cert.pem,实际文件放到cert目录下",
				"appPrivateKeyPath":"apiclient_key.pem,实际文件放到cert目录下",
				"key": "修改为ApiV2的key",
				"pfx": "application.p12,实际文件放到cert目录下"
			},
			"balance": {
				"uniPay": "initBalance",
				"name": "余额",
				"payName": "余额支付"
			},
			"delivery": {
				"uniPay": "initDelivery",
				"name": "货到付款"
			}
		}
	},

修改支付回调域名

找到文件配置文件/uniCloud/cloudfunctions/common/configs/config.json,找到“domain”节点,设置为云函数URL化的域名部分,包含https前缀,结尾不包含斜杠,系统默认拼接空间云函数的访问域名,阿里云空间例如:https://fc-mp-871234b4-17df-48d2-938d-59c80567855.next.bspapp.com,如果手动绑定了访问域名,则必须修改此参数

五、修改云打印机配置

目前只支持飞蛾云和易联云

  1. 飞蛾云打印机
    找到文件配置文件/uniCloud/cloudfunctions/common/configs/config.json,设置printer/feieyun配置,需要在飞蛾云官网在新窗口打开申请开发者,获得clientId(对应:USER)和clientSecret(对应:UKEY),购买机型必须是支持远程打印方式
    "printer": {
    		"feieyun": {
    			"clientId": "wcj343169893@163.com",
    			"clientSecret": "wHpTVEJAaPjMDmXT"
    		}
    	}
    
  2. 易联云打印机
    找到文件配置文件/uniCloud/cloudfunctions/common/configs/config.json,设置printer/yilianyun配置,需要在易联云官网在新窗口打开申请开发者,获得clientId和clientSecret,购买机型必须是支持远程打印方式
    "printer": {
    		"yilianyun": {
    			"clientId": "1053604898",
    			"clientSecret": "99817dd9d312345981ccedd2b214"
    		}
    	}
    

六、修改快递查询

申请开通快递100在新窗口打开实时查询权限,获得授权key和customer,填写到/uniCloud/cloudfunctions/common/configs/config.json文件的express节点中 ,从企业信息页面在新窗口打开中,可以获得所有配置参数

"express": {
		"api": "kuai100",
		"key": "Npwhb1238996",
		"customer": "27076456710A847DD9D03B5FE27019C3",
		"secret": "8b264a40de876dfae0e1f34c11b646b",
		"userid": "33ef8693e23231b0b3e41eb7389a986d",
		"partnerId": "",
		"partnerKey": "",
		"tempid": "",
		"siid": "",
		"expires": 21600
	}

七、修改同城配置

目前只支持第三方配送接口「餐厅宝」,只能联系客服开通接口,如有需要请联系我们协助完成

"delivery": {
		"cantingbao": {
			"key": "84Qrm9NwFGHanyldcak9LJpX",
			"secret": "XYEUJBW234BSVGV81832",
			"product": false
		}
	}

八、修改app推送

店主如果需要接收新订单通知,必须打包app端,并获得管理员权限+店铺权限,开发配置修改如下,所需参数从unipush在新窗口打开中获得

"push": {
		"default": {
			"appId": "N5wQHWUK234POOTCnGtFU8",
			"appkey": "t318VmJI4584991gl61VY4",
			"appSecret": "wF9Sq78vk3ANRMoMtrbPm1",
			"mastersecret": "udzQ23231wLwWAQEeozJgYZ15",
			"packageName": "com.baidu.xxx"
		}
	}

九、导入后台项目

  1. 从插件市场下载云上商城后台管理系统在新窗口打开并导入HBuilderX
  2. 选择前端一致的云空间
  3. 选择需要上传的资源,开始部署系统
  4. 如果遇到提示覆盖uni-admin,则点击替换
  5. 如果遇到提示覆盖公共模块,则点击跳过
  6. 如果遇到提示覆盖数据库表,则直接点击覆盖选中的表并继续
  7. 本地运行后端系统
  8. 后台运行时,必须选择“连接云端云函数”,否则造成创建的admin无法中将来的正式版后台登录
  9. 在登录界面点击创建管理员,只有在本地调试的时候,才有创建会员的链接
  10. 在创建管理员界面,填写admin和密码,点击“创建”完成超级管理员账号,如果提示管理员已存在,则需要手动删除数据库中uni-id-users表中的admin账户
  11. 如果遇到“未找到集合[cloud_shops]对应的schema” 后端主要使用client-db直连数据库,需要schema来管理查询权限,所以需要上传操作表对应的schema文件,此文件中uniCloud/database目录下,cloud_shops是数据库表名,如果后端代码找不到cloud_shops.schema.json,则在前端系统中找一找,然后上传到云空间,也可以在database目录上,右键上传所有DB schema,这样能保证所有的依赖都能上传。

⚠️后端的云函数/schema/uni-clientDB-actions,要以前端为准,由于使用同一个云空间,需要共用这些文件,后端同名称文件不能替换前端的,否则出现配置错误问题,如果已经覆盖,则再次上传前端代码中的云函数/schema/uni-clientDB-actions

激活移动端管理员权限

后台系统管理--用户管理--选择需要开通管理权限的用户--点击修改--勾选角色列表和管理店铺--提交,即可赋予管理员权限,前端用户需要重新登录才能刷新权限(右上角三个点-->重新进入小程序)

常见问题及解决方案

  1. 文件查找失败:'vue-jsonp'
    报错原因:项目h5版本使用了jsonp跨域访问接口功能
    解决办法:
    • 办法一:项目根目录cmd执行npm install vue-jsonp,安装此扩展
    • 办法二:新建一个空文件夹,依次执行npm init -y npm install vue-jsonp,然后复制“node_modules”到项目根目录
    • 办法三:直接下载node_modules.zip压缩包,然后解压到项目根目录