cfg('ui.icons', []); if (!is_array($icons)) { $icons = []; } // 名称 / LOGO 以 base.* 为准,旧 ui.* 仅作兼容回落; // 客服电话、关于我们、分享标题统一从 base.* 下发,避免后台配置了端上不生效。 $baseName = trim((string)$this->cfg('base.appName', '')); $siteName = $baseName !== '' ? $baseName : (string)$this->cfg('ui.siteName', '同城分类信息'); $baseLogo = (string)$this->cfg('base.logo', ''); $logo = $baseLogo !== '' ? $baseLogo : (string)$this->cfg('ui.logo', ''); $shareTitle = trim((string)$this->cfg('base.shareTitle', '')); $this->ok([ 'appName' => $siteName, 'siteName' => $siteName, 'logo' => $logo, 'servicePhone' => (string)$this->cfg('base.servicePhone', ''), 'aboutUs' => (string)$this->cfg('base.aboutUs', ''), 'shareTitle' => $shareTitle !== '' ? $shareTitle : $siteName, 'icons' => (object)$icons, // 订阅消息模板(客户端 requestSubscribeMessage 用;未配置时为空串) 'subscribe' => [ 'audit' => (string)$this->cfg('wx.tplAudit', ''), 'transfer' => (string)$this->cfg('wx.tplTransfer', ''), ], // 余额支付密码开关(开启后余额支付需验证 6 位支付密码,用户在余额中心设置) 'payPasswordEnabled' => (int)$this->cfg('pay.payPasswordEnabled', 0) === 1, // 微信小程序虚拟支付提审合规保护开关(1=开启合规拦截,0=正式放开,默认1安全过审) 'virtualPayAudit' => (function() { $sysVal = \think\Db::name('config')->where('name', 'virtual_pay_audit')->value('value'); if ($sysVal !== null && $sysVal !== '') { return (int)$sysVal === 1; } return (int)$this->cfg('pay.virtualPayAudit', 1) === 1; })(), ]); } /** * 获取协议与隐私政策内容(游客可用) * GET /api/v1/setting/agreement?type=service|privacy|disclaimer * 出参:{ title, content, updateTime } */ public function agreement() { $type = (string)$this->input('type', 'service'); if ($type === 'privacy') { $title = '隐私政策'; $defaultContent = "【隐私政策】\n\n同城分类信息便民平台重视用户的隐私与个人信息保护。我们承诺将按照法律法规要求,采取相应的安全保护措施保护您的个人信息。\n\n1. 信息收集与使用:我们仅收集为您提供服务所必需的信息,如登录手机号、发布信息时提供的联系方式与内容。\n2. 信息安全保障:我们采用业界标准的安全防护措施,保护用户个人信息不被未经授权的访问、泄露、篡改或损毁。\n3. 权限说明:仅在您主动上传图片、定位实体门店时,请求相册及地理位置权限。\n4. 未成年人保护:如您为未成年人,建议在父母或监护人指导下使用本服务。"; $content = (string)$this->cfg('site.privacyPolicy', $defaultContent); } elseif ($type === 'disclaimer') { $title = '平台免责声明'; $defaultContent = "【平台免责声明】\n\n1. 信息媒介属性:本平台仅为农产品及本地生活信息展示与联络媒介,不参与任何线下交易,不对信息真实性、合法性作出担保。\n2. 交易风险自担:请自行鉴别信息真伪,在未核实清楚前不要提前给对方转账,谨防诈骗。因私下交易产生的纠纷与损失,由交易双方依法依规自行处理。\n3. 联系方式保护:为保护用户隐私,平台对联系电话进行脱敏展示,拨打记录仅用于限制每日恶意拨打行为。\n4. 举报与处置:如发现虚假、违法违规信息,请及时通过页面「举报」入口反馈,平台将核实后采取下架、封禁等措施。"; $content = (string)$this->cfg('site.disclaimer', $defaultContent); } else { $title = '用户服务协议'; $defaultContent = "【用户服务协议】\n\n欢迎使用同城分类信息生活便民平台。在使用本平台服务前,请仔细阅读本协议。\n\n1. 服务条款确认与接纳:用户在注册或使用本平台服务即视为完全理解并同意本协议全部条款。\n2. 用户发布行为规范:用户承诺发布的信息真实、合法、有效,严禁发布违法、虚假、侵权或违背公序良俗的商业与便民信息。\n3. 平台免责声明:平台作为同城信息展示与撮合媒介,用户应自主辨识交易风险,因私下线下交易产生的纠纷由当事人依法依规处理。\n4. 违规处罚机制:对发布违法违规、虚假诈骗内容的用户,平台有权采取警告、下架信息、限制发布乃至封禁账号的处置措施。"; $content = (string)$this->cfg('site.serviceAgreement', $defaultContent); } $this->ok([ 'type' => $type, 'title' => $title, 'content' => $content, 'updateTime' => '2026-10-20', ]); } }