微信开放平台申请应用可以先不上架,但是要先进行开发者资质认证,认证的主体跟填写的域名要一致;但是微信APP商户号开通时如需要填写应用市场下载链接,则可以先让APP上架应用市场,如果因为没有支付被拒,可以以此为凭据再去申请,小米的应用市场相对容易一些;
1、普通商户就正常建商户号、在微信开放平台建应用即可
2、服务商模式下,服务商必须有自己的appid:可以是APP、服务号、小程序,都可以,如果APP(特约商户的)和服务商主体不一致,那服务商要给特约商户开通支付功能,在服务商后台产品中心那申请APP支付功能,特约商户同意即可,并在场景管理那加上APP支付场景,开发配置那里填写次特约商户在微信开放平台的appid,此时APP不需要在微信开放平台获取微信支付能力(不影响支付),特约商户在微信开放平台正常注册认证建应用,这一步少不了;服务商别忘了在自己的appid那把自己的appid维护进去(服务号的或者APP的或者小程序的),服务号为例,申请完服务号同意即可
3、服务商模式下如果是服务商自己的APP,那就得按照正常的普通商户的支付逻辑(服务商没有给自己优惠的功能,只能给特约商户优惠费率,目前调研是这样,具体没实操)

1、Linux环境配置
Ubuntu新建qiyuesuo用户如果不允许设置密码,可以让客户建,visudo编辑模式Ctrl+O之后取消敲回车
服务器时间:部署契约锁应用程序的时候也有设置服务器时区的命令,这俩都可以
安装3条命令的时间会有点长
2、如果没有数据库,建议先装数据库:数据库的压缩文件(或者wget命令下载)随便放个目录就行,解压的时候会自动移动到正确的目录(我故意新建mysql目录放到/usr/local/mysql反而重新整的)
3、如果版本低需要装Java,先装jdk。如果没有jdk直接按照步骤走;如果有也可以并存,不需要设置JAVA_HOME 环境变量,在安装的Java目录里:setenv.sh 文件在bin路径下,添加:

在setenv.sh 文件中添加这两个:
export JAVA_HOME="$QHOME/jdk-17" #替换成你的jdk的安装路径 ,可以从根目录写:"/opt/qiyuesuo_java/java1.8"
export PATH=$JAVA_HOME/bin:$PATH #这一行不动

4、契约锁应用装完之后先启动 oss 服务去后台激活(9181),激活之后再启动所有
5、网络有可能不允许外网访问客户的服务器(无法9181激活),telnet试一下,远程或者让客户想办法
6、增加审计记录、开机自启(4.3.8以下的需手动配置下)

$('#baidu').attr('href','http://api.map.baidu.com/marker?location=' + lat + ',' + lon + '&title=' + name + '&content=' + address + '&output=html')

    $('#baidu').attr('href','baidumap://map/direction?destination=' + lat + ',' + lon + '|' + name + '&mode=driving')
    $('#gaode').attr('href','https://uri.amap.com/marker?position=' + lon + ',' + lat + '&name=' + name + '&src=mypage&callnative=1')
    // const isIOS = /iphone|ipad|ipod/.test(navigator.userAgent.toLowerCase());
    // if (isIOS) {
    //     $('#gaode').attr('href','iosamap://navi?sourceApplication=myapp&lat=' + lat + '&lon=' + lon + '&poiname=' + encodeURIComponent(name) + '&dev=0&style=2')
    // } else {
    //     $('#gaode').attr('href','androidamap://navi?sourceApplication=myapp&lat=' + lat + '&lon=' + lon + '&poiname=' + encodeURIComponent(name) + '&dev=0&style=2')
    // }

1、正常使用:json_encode($post_data)
2、加参使用:json_encode($post_data,JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES | JSON_PRETTY_PRINT)

JSON_UNESCAPED_UNICODE:中文不转 \u
JSON_UNESCAPED_SLASHES:路径不加反斜杠
JSON_PRETTY_PRINT:格式化显示,自动分行缩进