diff --git a/README.md b/README.md index fa7b91f..043354f 100755 --- a/README.md +++ b/README.md @@ -1,10 +1,21 @@ # simple-admin-file -Simple Admin 的文件上传管理服务 \ -Simple Admin file manager service. +## Simple Admin 的文件上传管理服务 -# 支持 +### 支持 本地文件存储,文件管理 -云文件管理,支持 阿里云 OSS, 腾讯云 COS, 七牛云, 天翼云。 +云文件管理,支持 阿里云 OSS, 腾讯云 COS, 天翼云, AWS。 + +> 注意: 支持大部分兼容 s3 协议的上传服务 + +--- + +## Simple Admin's file upload management service + +### Supports +local file storage, file management +cloud file management, supports Alibaba Cloud OSS, Tencent Cloud COS, Qiniu Cloud, Tianyi Cloud, AWS. + +> Note: Most upload services compatible with the s3 protocol are supported ## 文档 | Document diff --git a/etc/fms.yaml b/etc/fms.yaml index 0dd9feb..085d3a0 100644 --- a/etc/fms.yaml +++ b/etc/fms.yaml @@ -24,6 +24,9 @@ RedisConf: Host: 10.5.0.3:6379 Db: 0 +I18nConf: + Dir: + # DatabaseConf sets the database of file manager service. DatabaseConf: Type: mysql diff --git a/fms.go b/fms.go index 1f84bc4..e482f3c 100644 --- a/fms.go +++ b/fms.go @@ -5,7 +5,7 @@ // Schemes: http, https // Host: localhost:9102 // BasePath: / -// Version: 1.4.5 +// Version: 1.4.6 // Contact: yuansu.china.work@gmail.com // securityDefinitions: // Token: diff --git a/fms.json b/fms.json index d0b00ee..d568f0c 100644 --- a/fms.json +++ b/fms.json @@ -16,7 +16,7 @@ "contact": { "email": "yuansu.china.work@gmail.com" }, - "version": "1.4.5" + "version": "1.4.6" }, "host": "localhost:9102", "basePath": "/", diff --git a/go.mod b/go.mod index c1c4a68..c12524a 100644 --- a/go.mod +++ b/go.mod @@ -4,13 +4,13 @@ go 1.22.3 require ( entgo.io/ent v0.13.1 - github.com/aws/aws-sdk-go v1.53.19 - github.com/casbin/casbin/v2 v2.94.0 + github.com/aws/aws-sdk-go v1.54.1 + github.com/casbin/casbin/v2 v2.96.0 github.com/duke-git/lancet/v2 v2.3.1 github.com/gofrs/uuid/v5 v5.2.0 github.com/redis/go-redis/v9 v9.5.3 - github.com/suyuan32/simple-admin-common v1.4.5 - github.com/suyuan32/simple-admin-core v1.4.5 + github.com/suyuan32/simple-admin-common v1.4.6 + github.com/suyuan32/simple-admin-core v1.4.6 github.com/zeromicro/go-zero v1.6.5 google.golang.org/grpc v1.64.0 ) @@ -113,8 +113,8 @@ require ( golang.org/x/time v0.5.0 // indirect golang.org/x/tools v0.22.0 // indirect google.golang.org/genproto/googleapis/api v0.0.0-20240604185151-ef581f913117 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20240604185151-ef581f913117 // indirect - google.golang.org/protobuf v1.34.1 // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20240610135401-a8a62080eff3 // indirect + google.golang.org/protobuf v1.34.2 // indirect gopkg.in/inf.v0 v0.9.1 // indirect gopkg.in/yaml.v2 v2.4.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect diff --git a/go.sum b/go.sum index 20eb8a5..da38a59 100644 --- a/go.sum +++ b/go.sum @@ -42,8 +42,8 @@ github.com/apparentlymart/go-textseg/v15 v15.0.0/go.mod h1:K8XmNZdhEBkdlyDdvbmms github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e/go.mod h1:3U/XgcO3hCbHZ8TKRvWD2dDTCfh9M9ya+I9JpbB7O8o= github.com/armon/go-metrics v0.0.0-20180917152333-f0300d1749da/go.mod h1:Q73ZrmVTwzkszR9V5SSuryQ31EELlFMUz1kKyl939pY= github.com/armon/go-radix v0.0.0-20180808171621-7fddfc383310/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= -github.com/aws/aws-sdk-go v1.53.19 h1:WEuWc918RXlIaPCyU11F7hH9H1ItK+8m2c/uoQNRUok= -github.com/aws/aws-sdk-go v1.53.19/go.mod h1:LF8svs817+Nz+DmiMQKTO3ubZ/6IaTpq3TjupRn3Eqk= +github.com/aws/aws-sdk-go v1.54.1 h1:+ULL7oLC+v3T00fOMIohUarPI3SR3oyDd6FBEvgdhvs= +github.com/aws/aws-sdk-go v1.54.1/go.mod h1:LF8svs817+Nz+DmiMQKTO3ubZ/6IaTpq3TjupRn3Eqk= github.com/beorn7/perks v0.0.0-20180321164747-3a771d992973/go.mod h1:Dwedo/Wpr24TaqPxmxbtue+5NUziq4I4S80YR8gNf3Q= github.com/beorn7/perks v1.0.0/go.mod h1:KWe93zE9D1o94FZ5RNwFwVgaQK1VOXiVxmqh+CedLV8= github.com/beorn7/perks v1.0.1 h1:VlbKKnNfV8bJzeqoa4cOKqO6bYr3WgKZxO8Z16+hsOM= @@ -55,8 +55,8 @@ github.com/bsm/ginkgo/v2 v2.12.0/go.mod h1:SwYbGRRDovPVboqFv0tPTcG1sN61LM1Z4ARdb github.com/bsm/gomega v1.27.10 h1:yeMWxP2pV2fG3FgAODIY8EiRE3dy0aeFYt4l7wh6yKA= github.com/bsm/gomega v1.27.10/go.mod h1:JyEr/xRbxbtgWNi8tIEVPUYZ5Dzef52k01W3YH0H+O0= github.com/casbin/casbin/v2 v2.29.2/go.mod h1:vByNa/Fchek0KZUgG5wEsl7iFsiviAYKRtgrQfcJqHg= -github.com/casbin/casbin/v2 v2.94.0 h1:bhCl2pqn4Zylgze2T0mWwLqBiC5H0+tx/Pi6X3KlDxY= -github.com/casbin/casbin/v2 v2.94.0/go.mod h1:jX8uoN4veP85O/n2674r2qtfSXI6myvxW85f6TH50fw= +github.com/casbin/casbin/v2 v2.96.0 h1:uHEOYAk3vmh1xREUeCnuD/crJuokH5d/wd2PSCN3BSk= +github.com/casbin/casbin/v2 v2.96.0/go.mod h1:jX8uoN4veP85O/n2674r2qtfSXI6myvxW85f6TH50fw= github.com/casbin/ent-adapter v0.3.0 h1:4lkhB/BwXAhj84iSrZG/gQ4avkO4uPwz4kdDP1VEnww= github.com/casbin/ent-adapter v0.3.0/go.mod h1:U6saAFuVDEOWLCtrgx35d95M12FC0uh5GtJL82QunRM= github.com/casbin/govaluate v1.1.0/go.mod h1:G/UnbIjZk/0uMNaLwZZmFQrR72tYRZWQkO70si/iR7A= @@ -469,10 +469,10 @@ github.com/stretchr/testify v1.8.4/go.mod h1:sz/lmYIOXD/1dqDmKjjqLyZ2RngseejIcXl github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg= github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY= github.com/subosito/gotenv v1.2.0/go.mod h1:N0PQaV/YGNqwC0u51sEeR/aUtSLEXKX9iv69rRypqCw= -github.com/suyuan32/simple-admin-common v1.4.5 h1:E3+38voibAQn7OdTDZIc+6FSZfUzQzHkqusKL45/bYw= -github.com/suyuan32/simple-admin-common v1.4.5/go.mod h1:4IOgRGHAcfVZHKK/8t4vx+CyTDS0lyut8alKxYp8WLQ= -github.com/suyuan32/simple-admin-core v1.4.5 h1:lyi85NkGK4Fvx1tE9rwcFPm8M3ITzkzuGtpkiZC+vyQ= -github.com/suyuan32/simple-admin-core v1.4.5/go.mod h1:KRYMq0g0sZqOudnE+06vD/QND9IIRU3JXqCuki3sR+4= +github.com/suyuan32/simple-admin-common v1.4.6 h1:xJqWkHKHyjNKCUwYSh1lEinVpUSYCLgbsN88DBDT00E= +github.com/suyuan32/simple-admin-common v1.4.6/go.mod h1:w3xDV61z39v5zvmDNrN5Cv+E20Qq9JEhTbCsihREjhw= +github.com/suyuan32/simple-admin-core v1.4.6 h1:Eg0CySl9uB6fWW5XSKSnNgVEF6DT1VOVanOg/uNot+M= +github.com/suyuan32/simple-admin-core v1.4.6/go.mod h1:QntXsHY1Yw7aj2iVNWALJoVo8LzCwnGBfDbEPi2RisI= github.com/suyuan32/simple-admin-tools v1.6.13 h1:B7rWMHLrdrus1aDD8T1WKeNtoeCJrIDNDLFbfJAx8mU= github.com/suyuan32/simple-admin-tools v1.6.13/go.mod h1:2GQvDFtFZmevmZYwoGkh7GsSFt2sNA1uFUssBuI+oDY= github.com/tmc/grpc-websocket-proxy v0.0.0-20190109142713-0ad062ec5ee5/go.mod h1:ncp9v5uamzpCO7NfCPTXjqaC+bZgJeR0sMTm6dMHP7U= @@ -744,8 +744,8 @@ google.golang.org/genproto v0.0.0-20191108220845-16a3f7862a1a/go.mod h1:n3cpQtvx google.golang.org/genproto v0.0.0-20200526211855-cb27e3aa2013/go.mod h1:NbSheEEYHJ7i3ixzK3sjbqSGDJWnxyFXZblF3eUsNvo= google.golang.org/genproto/googleapis/api v0.0.0-20240604185151-ef581f913117 h1:+rdxYoE3E5htTEWIe15GlN6IfvbURM//Jt0mmkmm6ZU= google.golang.org/genproto/googleapis/api v0.0.0-20240604185151-ef581f913117/go.mod h1:OimBR/bc1wPO9iV4NC2bpyjy3VnAwZh5EBPQdtaE5oo= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240604185151-ef581f913117 h1:1GBuWVLM/KMVUv1t1En5Gs+gFZCNd360GGb4sSxtrhU= -google.golang.org/genproto/googleapis/rpc v0.0.0-20240604185151-ef581f913117/go.mod h1:EfXuqaE1J41VCDicxHzUDm+8rk+7ZdXzHV0IhO/I6s0= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240610135401-a8a62080eff3 h1:9Xyg6I9IWQZhRVfCWjKK+l6kI0jHcPesVlMnT//aHNo= +google.golang.org/genproto/googleapis/rpc v0.0.0-20240610135401-a8a62080eff3/go.mod h1:EfXuqaE1J41VCDicxHzUDm+8rk+7ZdXzHV0IhO/I6s0= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= @@ -764,8 +764,8 @@ google.golang.org/protobuf v1.22.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2 google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= -google.golang.org/protobuf v1.34.1 h1:9ddQBjfCyZPOHPUiPxpYESBLc+T8P3E+Vo4IbKZgFWg= -google.golang.org/protobuf v1.34.1/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= +google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg= +google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw= gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= diff --git a/internal/config/config.go b/internal/config/config.go index a0ff1be..8a3cc08 100644 --- a/internal/config/config.go +++ b/internal/config/config.go @@ -2,6 +2,7 @@ package config import ( "github.com/suyuan32/simple-admin-common/config" + "github.com/suyuan32/simple-admin-common/i18n" "github.com/suyuan32/simple-admin-common/plugins/casbin" "github.com/zeromicro/go-zero/rest" "github.com/zeromicro/go-zero/zrpc" @@ -17,6 +18,7 @@ type Config struct { CasbinConf casbin.CasbinConf CoreRpc zrpc.RpcClientConf CROSConf config.CROSConf + I18nConf i18n.Conf } type UploadConf struct { diff --git a/internal/svc/service_context.go b/internal/svc/service_context.go index 5e5b0da..6c47442 100644 --- a/internal/svc/service_context.go +++ b/internal/svc/service_context.go @@ -37,7 +37,7 @@ func NewServiceContext(c config.Config) *ServiceContext { cbn := c.CasbinConf.MustNewCasbinWithOriginalRedisWatcher(c.CasbinDatabaseConf.Type, c.CasbinDatabaseConf.GetDSN(), c.RedisConf) - trans := i18n.NewTranslator(i18n2.LocaleFS) + trans := i18n.NewTranslator(c.I18nConf, i18n2.LocaleFS) return &ServiceContext{ Config: c,