houyaf 3 lat temu
rodzic
commit
730765f554

+ 4 - 4
cmd/cache/redis/redis.go

@@ -13,7 +13,7 @@ import (
 	apiViewModel "xps/pkg/api/viewmodel"
 	bizViewModel "xps/pkg/biz/viewmodel"
 	modelViewModel "xps/pkg/model/viewmodel"
-	"xps/pkg/system/viewmodel"
+	sysViewModel "xps/pkg/system/viewmodel"
 )
 
 var ErrRedisInit = errors.New("缓存初始化失败")
@@ -88,14 +88,14 @@ func GetCacheUint(key string) (uint64, error) {
 	return Instance().Get(context.Background(), key).Uint64()
 }
 
-func SetUserData(userId int64, userData *viewmodel.UserData) error {
+func SetUserData(userId int64, userData *sysViewModel.UserData) error {
 	keyStr := fmt.Sprintf("user_%d", userId)
 	return SetCache(keyStr, userData, 0)
 }
 
-func GetUserData(userId int64) (*viewmodel.UserData, error) {
+func GetUserData(userId int64) (*sysViewModel.UserData, error) {
 	keyStr := fmt.Sprintf("user_%d", userId)
-	userData := &viewmodel.UserData{}
+	userData := &sysViewModel.UserData{}
 	err := Instance().Get(context.Background(), keyStr).Scan(userData)
 	if err != nil {
 		return nil, err

+ 17 - 23
pkg/utils/minio.go → cmd/file_server/minio.go

@@ -1,4 +1,4 @@
-package utils
+package file_server
 
 import (
 	"context"
@@ -11,10 +11,12 @@ import (
 	"sync"
 )
 
-var defaultFileBucket = "file"
-var defaultIconBucket = "icon"
-var defaultLocation = "us-east-1"
-var minioServerPool *sync.Pool
+type MinioConfig struct {
+	EndPoint  string `json:"endPoint"`
+	AccessKey string `json:"accessKey"`
+	SecretKey string `json:"secretKey"`
+	UseSSL    bool   `json:"useSSL"`
+}
 
 var defaultConfig = &MinioConfig{
 	EndPoint:  "http://114.116.19.14:9000",
@@ -23,7 +25,13 @@ var defaultConfig = &MinioConfig{
 	UseSSL:    false,
 }
 
-// DestFile 文件
+var (
+	minioServerPool   *sync.Pool
+	defaultFileBucket = "file"
+	defaultIconBucket = "icon"
+	defaultLocation   = "us-east-1"
+)
+
 type DestFile struct {
 	FileName     string
 	FileUrl      string
@@ -40,19 +48,6 @@ func init() {
 	}
 }
 
-type MinioFileObject struct {
-	ObjectName  string
-	FilePath    string
-	ContentType string
-}
-
-type MinioConfig struct {
-	EndPoint  string `json:"endPoint"`
-	AccessKey string `json:"accessKey"`
-	SecretKey string `json:"secretKey"`
-	UseSSL    bool   `json:"useSSL"`
-}
-
 func (c *MinioConfig) validate() error {
 	if c.EndPoint == "" {
 		return errors.New("EndPoint host not specified")
@@ -130,11 +125,11 @@ func (m *MinioServe) uploadFile(objectName, filePath string) (*DestFile, error)
 	ctx := context.Background()
 	bBucketExist := m.checkBuckets(ctx)
 	if !bBucketExist {
-		return nil, errors.New("Bucket不存在")
+		return nil, errors.New("bucket不存在")
 	}
 
 	contentType := "application/octet-stream"
-	uinfo, err := m.Client.FPutObject(ctx, defaultFileBucket, objectName, filePath, minio.PutObjectOptions{
+	info, err := m.Client.FPutObject(ctx, defaultFileBucket, objectName, filePath, minio.PutObjectOptions{
 		ContentType: contentType,
 	})
 
@@ -143,12 +138,11 @@ func (m *MinioServe) uploadFile(objectName, filePath string) (*DestFile, error)
 	}
 
 	fileExt := path.Ext(objectName)
-
 	url := fmt.Sprintf("%s/%s/%s", defaultConfig.EndPoint, defaultFileBucket, objectName)
 	targetFile := &DestFile{
 		FileName:     objectName,
 		FileUrl:      url,
-		FileSize:     uinfo.Size,
+		FileSize:     info.Size,
 		FileExt:      fileExt,
 		FileMimeType: "",
 	}

+ 1 - 1
cmd/main/main.go

@@ -4,8 +4,8 @@ import (
 	"github.com/kataras/iris/v12"
 	"github.com/kataras/iris/v12/middleware/accesslog"
 	"xps/cmd/bootstrap"
+	"xps/cmd/middleware/identity"
 	"xps/cmd/router"
-	"xps/pkg/middleware/identity"
 )
 
 const maxSize = 20 * 1024 * 1024

+ 0 - 0
pkg/middleware/auth.go → cmd/middleware/auth.go


+ 0 - 0
pkg/middleware/gateway.go → cmd/middleware/gateway.go


+ 0 - 0
pkg/middleware/identity/identity.go → cmd/middleware/identity/identity.go


+ 0 - 0
pkg/middleware/jwt.go → cmd/middleware/jwt.go


+ 7 - 13
cmd/router/routes.go

@@ -5,6 +5,7 @@ import (
 	"github.com/kataras/iris/v12"
 	"github.com/kataras/iris/v12/mvc"
 	"xps/cmd/bootstrap"
+	"xps/cmd/middleware"
 	apiControllers "xps/pkg/api/controller"
 	apiServices "xps/pkg/api/service"
 	appControllers "xps/pkg/app/controller"
@@ -14,7 +15,6 @@ import (
 	wfControllers "xps/pkg/bpm/controller"
 	wfServices "xps/pkg/bpm/service"
 	"xps/pkg/gateway"
-	"xps/pkg/middleware"
 	modelControllers "xps/pkg/model/controller"
 	modelServices "xps/pkg/model/service"
 	repoControllers "xps/pkg/repo/controller"
@@ -52,6 +52,12 @@ func Configure(b *bootstrap.Bootstrapper) {
 		roleApp.Register(roleService)
 		roleApp.Handle(new(sysControllers.RoleController))
 
+		// Upload
+		uploadService := sysServices.NewUploadService()
+		uploadApp := mvc.New(sysParty.Party("/upload"))
+		uploadApp.Register(uploadService)
+		uploadApp.Handle(new(sysControllers.UploadController))
+
 	}
 
 	// Company Profile
@@ -338,18 +344,6 @@ func Configure(b *bootstrap.Bootstrapper) {
 		docFileApp.Handle(new(sysControllers.DocFileController))
 	}
 
-	// Upload
-	uploadParty := b.Party("/upload", crs).AllowMethods(iris.MethodOptions)
-	{
-		uploadParty.Use(middleware.AuthToken)
-
-		uploadService := sysServices.NewUploadService()
-		uploadApp := mvc.New(artParty.Party(""))
-		uploadApp.Register(uploadService)
-		uploadApp.Handle(new(sysControllers.UploadController))
-
-	}
-
 	// Workflow
 	wfParty := b.Party("/wf", crs).AllowMethods(iris.MethodOptions)
 	{

+ 1 - 1
pkg/system/service/login_service.go

@@ -4,7 +4,7 @@ import (
 	"time"
 	cache "xps/cmd/cache/redis"
 	"xps/cmd/datasource"
-	"xps/pkg/middleware"
+	"xps/cmd/middleware"
 	"xps/pkg/system/repository"
 	"xps/pkg/system/viewmodel"
 	"xps/pkg/utils"

+ 4 - 5
pkg/system/service/upload_service.go

@@ -3,9 +3,9 @@ package service
 import (
 	"time"
 	"xps/cmd/datasource"
+	minio "xps/cmd/file_server"
 	"xps/pkg/system/datamodel"
-	repositories "xps/pkg/system/repository"
-	minio "xps/pkg/utils"
+	"xps/pkg/system/repository"
 )
 
 type TargetFile struct {
@@ -19,17 +19,16 @@ type UploadService interface {
 }
 
 type uploadService struct {
-	repo *repositories.DocFileRepo
+	repo *repository.DocFileRepo
 }
 
 func NewUploadService() UploadService {
 	return &uploadService{
-		repo: repositories.NewDocFileRepo(datasource.InstanceMaster()),
+		repo: repository.NewDocFileRepo(datasource.InstanceMaster()),
 	}
 }
 
 func (s *uploadService) UploadFile(ocId, userId, dirId int64, file TargetFile) (*datamodel.DocFile, error) {
-
 	dFile, err1 := minio.UploadFileToMinio(file.FileName, file.FilePath)
 	if err1 != nil {
 		return nil, err1