From 6d34d7d4f21989f5e9aa948a174fa4efd1e338e3 Mon Sep 17 00:00:00 2001 From: daiyb <570956418@qq.com> Date: Wed, 3 Sep 2025 11:48:40 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=8D=E5=88=B6=E9=9A=90=E7=A7=81=E6=96=87?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- cmd/app.go | 2 ++ data/policy.html | 15 +++++++++++++++ data/service.html | 15 +++++++++++++++ pkg/common/file.go | 11 +++++++++++ pkg/utils/untils.go | 39 +++++++++++++++++++++++++++++++++++++-- 5 files changed, 80 insertions(+), 2 deletions(-) create mode 100644 data/policy.html create mode 100644 data/service.html create mode 100644 pkg/common/file.go diff --git a/cmd/app.go b/cmd/app.go index 55bb6db..18d5b1b 100644 --- a/cmd/app.go +++ b/cmd/app.go @@ -21,6 +21,7 @@ import ( "fmt" "fonchain-fiee/cmd/config" "fonchain-fiee/pkg/cache" + "fonchain-fiee/pkg/common" "fonchain-fiee/pkg/logger" "fonchain-fiee/pkg/router" ) @@ -55,6 +56,7 @@ func bootstrap() (err error) { } cache.LoadRedis(redisConfig) + common.Init() // //gpt.InitSet(configEnv.Ai.Host, configEnv.Ai.TelNum, configEnv.Ai.Password) return nil diff --git a/data/policy.html b/data/policy.html new file mode 100644 index 0000000..f9b9c50 --- /dev/null +++ b/data/policy.html @@ -0,0 +1,15 @@ + + + + + + 隐私政策 + + + +

H5系统隐私政策

生效日期:2025年9月2日

1. 信息收集与使用

收集的个人信息类型

基础信息:手机号、微信昵称、头像、设备信息(IMEI、操作系统版本)。

支付信息:订单号、支付金额、交易时间(通过加密方式传输,不存储银行卡信息)。

自媒体平台授权信息,例如:

抖音:API接口权限(仅限内容同步)。

内容生成数据:用户输入的关键词、风格偏好、历史生成内容。

收集目的

账号验证与支付:手机号用于身份核验,支付信息用于完成交易。

内容发布:通过授权信息调用第三方平台API,执行用户指令。

2. 信息共享与转让

第三方平台接口:仅在用户授权范围内调用API,不共享用户平台账号密码。

支付合作方:与微信支付、支付宝等服务商共享订单信息以完成交易。

法律要求:如配合司法机关调查或响应政府要求,可能披露必要信息。

3. 用户权利

访问与控制:

可随时在“个人中心”查看历史生成内容、订单记录及授权状态。

删除与撤回:

可申请删除个人账户及生成内容(不包含已同步至第三方平台的内容)。

4. 数据安全

技术措施:采用HTTPS加密传输、数据库脱敏存储,定期进行安全漏洞检测。

第三方SDK:仅接入必要SDK(如微信登录、地图服务等),并签署数据保密协议。

5. 隐私政策更新

如涉及重大变更(如新增数据收集项),将通过短信/邮件通知并要求重新授权。

6. 联系我们

如有疑问,请通过以下方式联系:

客服邮箱:develop@fiee.com

+ + + \ No newline at end of file diff --git a/data/service.html b/data/service.html new file mode 100644 index 0000000..26f9e9f --- /dev/null +++ b/data/service.html @@ -0,0 +1,15 @@ + + + + + + 服务条款 + + + +

服务条款

生效日期:2025年9月2日

1. 接受条款

通过注册或使用本系统(以下简称“服务”),您确认已阅读、理解并同意以下条款。若您不同意本条款,请立即停止使用本服务。

2. 服务内容

本系统提供自媒体内容生成与发布服务,用户可购买套餐后生成图文、短视频等原创内容,并通过系统接口同步至指定自媒体平台(如微信公众号、抖音、小红书等)。

服务包含AI辅助创作、内容优化建议、一键发布功能,具体内容以实际功能模块为准。

3. 用户权利与义务

账号与支付

注册需提供手机号或微信授权,购买套餐需通过系统支持的支付方式(如微信支付、支付宝)。

您需确保支付账户信息真实有效,因虚假信息导致的损失由您自行承担。

内容生成与发布

生成内容为原创作品,最终发布权归用户所有。

用户需对生成内容进行人工审核,确认无误后方可发布。因内容违规导致的平台处罚或法律纠纷,责任由用户承担。

系统不对用户未审核内容的合规性负责,但有权对明显违法内容(如涉黄、涉政)进行过滤拦截。

第三方平台接口

用户需授权系统调用其自媒体平台API(如tiktok开发者接口),授权范围限于内容发布及数据同步。

授权信息仅用于执行用户指令,系统不存储用户平台账号密码等敏感信息。

4. 套餐与退款

套餐有效期自购买成功日起计算,逾期未使用的套餐不支持退款。

如因系统故障或服务瑕疵导致无法正常使用,可联系客服协商退款。

5. 知识产权

由系统生成的内容(如文案、图片)默认无版权归属限制,但用户需遵守以下规则:

不得将内容用于商业用途(如转售、批量分发);

不得篡改系统生成内容的署名或标识;

若内容包含第三方素材(如音乐、图片),用户需自行确保使用合法性。

6. 责任限制

系统不对以下情形承担责任:

用户未审核内容导致的平台封禁、投诉或法律风险;

第三方平台接口变更或服务中断;

因不可抗力(如网络故障)导致的发布延迟。

7. 其他

本条款解释权归服务提供方所有,更新后将在系统内公示,用户继续使用即视为同意。

+ + + \ No newline at end of file diff --git a/pkg/common/file.go b/pkg/common/file.go new file mode 100644 index 0000000..0a5cdb6 --- /dev/null +++ b/pkg/common/file.go @@ -0,0 +1,11 @@ +package common + +import "fonchain-fiee/pkg/utils" + +func Init() { + _ = utils.CreateDirPath("./runtime") + utils.CopyFile("./data/policy.html", "./runtime") + utils.CopyFile("./data/service.html", "./runtime") + utils.CopyFile("../data/policy.html", "./runtime") + utils.CopyFile("../data/service.html", "./runtime") +} diff --git a/pkg/utils/untils.go b/pkg/utils/untils.go index 643c11d..e3a6660 100644 --- a/pkg/utils/untils.go +++ b/pkg/utils/untils.go @@ -7,14 +7,16 @@ import ( "errors" "fmt" "fonchain-fiee/pkg/e" - "github.com/gin-gonic/gin" - "github.com/tealeg/xlsx" "io" "io/ioutil" "net/http" "net/url" "os" + "path/filepath" "time" + + "github.com/gin-gonic/gin" + "github.com/tealeg/xlsx" ) const ( @@ -128,3 +130,36 @@ func ResponseXls(c *gin.Context, content io.ReadSeeker, fileTag string) { //c.Writer.Header().Add("Content-Type", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet") http.ServeContent(c.Writer, c.Request, fileName, time.Now(), content) } + +func CreateDirPath(path string) (err error) { + if _, err = os.Stat(path); os.IsNotExist(err) { + if err = os.MkdirAll(path, os.ModePerm); err != nil { + return + } + } + return +} + +func CopyFile(src, dstDir string) (string, error) { + in, err := os.Open(src) + if err != nil { + return "", err + } + defer in.Close() + if err := os.MkdirAll(dstDir, 0755); err != nil { + return "", err + } + dst := filepath.Join(dstDir, filepath.Base(src)) + out, err := os.Create(dst) + if err != nil { + return "", err + } + defer out.Close() + if _, err = io.Copy(out, in); err != nil { + return "", err + } + if err = out.Sync(); err != nil { + return "", err + } + return dst, nil +}