Commit 702b09aa authored by Bess严根旺's avatar Bess严根旺

修改获取文件

parent fc2e9128
......@@ -13,6 +13,7 @@ import (
"time"
)
// 执行文件转换
func DoAliData() {
fmt.Println("开始刷新请求...")
ctx := context.Background()
......@@ -82,7 +83,7 @@ func DoConversionToAli(c context.Context, projectId int32) bool {
return false
}
IsPrivate := true
if ConversionInfo.IsPrivate == 0 {
if ConversionInfo.IsPrivate == 1 {
IsPrivate = false
}
......@@ -104,6 +105,7 @@ func DoConversionToAli(c context.Context, projectId int32) bool {
//执行转换
result, errs := service2.NewConversion().Conversion(request)
fmt.Println(result)
if errs != nil {
log.Info("转换出错" + errs.Error())
return false
......
package console
import (
"bufio"
"context"
"doc-service/domain/entity/serversitemicros/docserverproject"
service "doc-service/domain/repository"
"doc-service/infra/db"
"fmt"
"github.com/nacos-group/nacos-sdk-go/v2/common/logger"
"gitlab.galaxy-immi.com/Backend-group/go-com/third/log"
"os"
"strings"
"time"
)
// 获取转换进度
func GetConvert() {
fmt.Println("开始获取进度...")
ctx := context.Background()
// 启动一个协程来执行定时任务
tickerNum := time.NewTicker(15 * time.Second)
defer tickerNum.Stop()
go func() {
for {
select {
case <-tickerNum.C:
i := getConvertDoData(ctx)
if i == 0 {
fmt.Println("没有需要获取的文件数据: " + time.Now().Format("2006-01-02 15:04:05"))
}
}
}
}()
// 监听命令行输入
readerGet := bufio.NewReader(os.Stdin)
for {
text, _ := readerGet.ReadString('\n')
text = strings.TrimSpace(text)
if text == "exit" {
fmt.Println("Exiting process...")
os.Exit(0)
}
}
}
func getConvertDoData(ctx context.Context) int8 {
list, err := db.GetServerSiteMicrosDB().DocServerProject.Query().Where(
docserverproject.StatusEQ(1),
).All(ctx)
if err != nil {
return 0
}
if len(list) <= 0 {
return 0
}
for _, items := range list {
res := GetProjectInfo(ctx, items.ID)
if res > 0 {
_, errUpdateSt := db.GetServerSiteMicrosDB().DocServerProject.UpdateOneID(items.ID).SetStatus(2).Save(ctx)
if errUpdateSt != nil {
log.Info("修改获取的文件进度状态失败" + errUpdateSt.Error())
continue
}
}
}
return 0
}
func GetProjectInfo(c context.Context, projectId int32) int8 {
projectInfo, infoErr := db.GetServerSiteMicrosDB().DocServerProject.Get(c, projectId)
if infoErr != nil {
return 0
}
request := &service.GetTaskRequest{}
request.ProjectId = projectId
request.RequestDefinition = true
request.ProjectName = projectInfo.ProjectName
request.TaskId = projectInfo.TaskID
//task_type和原始有区别,需要使用返回的task_id的首个元素
splitted := strings.Split(projectInfo.TaskID, "-")
request.TaskType = splitted[0]
result, errs := service.NewConversion().GetTaskProject(*request)
if errs != nil || *result.StatusCode != 200 || *result.Body.Status != "Succeeded" {
logger.Info(result)
logger.Error("错误信息" + errs.Error())
return 0
}
createGetProject(c, projectId, *result.Body.Status)
return 1
}
func createGetProject(c context.Context, projectId int32, aliRes string) {
var statusData int8
if aliRes != "Succeeded" {
statusData = 1
} else {
statusData = 2
}
_, _ = db.GetServerSiteMicrosDB().DocServerGetProject.Create().
SetCreatedAt(time.Now()).
SetUpdatedAt(time.Now()).
SetStatus(statusData).
SetCurrNum(1).
SetAliResult(aliRes).
SetServerProjectID(projectId).
Save(c)
}
......@@ -2,11 +2,10 @@ package service
import (
"context"
"doc-service/domain/entity/serversitemicros/docserverproject"
service "doc-service/domain/repository"
"doc-service/infra/db"
"github.com/nacos-group/nacos-sdk-go/v2/common/logger"
pb "gitlab.galaxy-immi.com/Backend-group/proto/pb/docservice"
"strings"
"time"
)
......@@ -15,10 +14,9 @@ type DocServiceService struct {
}
// 发起文件转换
func (doc *DocServiceService) DoConversion(c context.Context, req *pb.DoConversionRequest) (resp *pb.DoConversionResponse, err error) {
func (doc *DocServiceService) DoConversion(c context.Context, req *pb.DoConversionRequest) (resp *pb.DoConversionResponse, err error) {
resp = &pb.DoConversionResponse{}
request := &service.DoConversionRequest{
ProjectName: req.ProjectName,
SourceType: req.SourceType,
......@@ -88,60 +86,51 @@ func (doc *DocServiceService) DoConversion(c context.Context, req *pb.DoConversi
}
// 获取转换结果
func (doc *DocServiceService) GetProjectInfo(c context.Context, req *pb.GetProjectRequest) (resp *pb.GetProjectResponse, err error) {
resp = &pb.GetProjectResponse{}
ConversionInfo := &pb.DoConversionInfo{}
request := &service.GetTaskRequest{
ProjectId: req.ProjectId,
ProjectName: req.ProjectName,
TaskType: req.TaskType,
TaskId: req.TaskId,
RequestDefinition: req.RequestDefinition,
ProjectId: req.ProjectId,
ProjectName: req.ProjectName,
//TaskType: req.TaskType,
//TaskId: req.TaskId,
//RequestDefinition: req.RequestDefinition,
}
request.RequestDefinition = true
if req.ProjectId > 0 {
ConversionInfo, infoErr := db.GetServerSiteMicrosDB().DocServerProject.Get(c, req.ProjectId)
if infoErr != nil {
resp.Msg = err.Error()
resp.Code = 100010
resp.Data = nil
return resp, err
}
request.ProjectName = ConversionInfo.ProjectName
request.TaskId = ConversionInfo.TaskID
request.TaskType = ConversionInfo.TargetType
} else {
projectData, infoErr := db.GetServerSiteMicrosDB().DocServerProject.Query().Where(
docserverproject.ProjectNameEQ(request.ProjectName),
docserverproject.TargetTypeEQ(request.TaskType),
docserverproject.TaskIDEQ(request.TaskId),
).First(c)
projectInfo, infoErr := db.GetServerSiteMicrosDB().DocServerProject.Get(c, req.ProjectId)
if infoErr != nil {
resp.Msg = err.Error()
resp.Code = 100010
resp.Data = nil
return resp, err
}
ConversionInfo.Id = projectData.ID
ConversionInfo.ProjectName = projectData.ProjectName
ConversionInfo.SourceType = projectData.SourceType
ConversionInfo.TargetType = projectData.TargetType
ConversionInfo.SourceUrl = *projectData.SourceURL
ConversionInfo.TargetUrl = *projectData.TargetURL
ConversionInfo.TaskId = projectData.TaskID
}
request.ProjectName = projectInfo.ProjectName
request.TaskId = projectInfo.TaskID
//task_type和原始有区别,需要使用返回的task_id的首个元素
splitted := strings.Split(projectInfo.TaskID, "-")
request.TaskType = splitted[0]
ConversionInfo.ProjectName = projectInfo.ProjectName
ConversionInfo.Id = projectInfo.ID
ConversionInfo.TargetUrl = *projectInfo.TargetURL
ConversionInfo.SourceType = projectInfo.SourceType
ConversionInfo.TaskId = projectInfo.TaskID
ConversionInfo.TargetType = projectInfo.TargetType
}
result, errs := service.NewConversion().GetTaskProject(*request)
logger.Info("返回数据", result)
if errs != nil {
if errs != nil || *result.StatusCode != 200 || *result.Body.Status != "Succeeded" {
resp.Msg = err.Error()
resp.Code = 100010
resp.Data = nil
return resp, err
}
resp.Msg = "success"
resp.Code = 200
resp.Msg = *result.Body.Status
resp.Code = *result.StatusCode
resp.Data = ConversionInfo
return resp, nil
}
......@@ -15,7 +15,7 @@ require (
github.com/nacos-group/nacos-sdk-go/v2 v2.2.4
github.com/robfig/cron v1.2.0
gitlab.galaxy-immi.com/Backend-group/go-com v1.4.2-test-rc12
gitlab.galaxy-immi.com/Backend-group/proto v1.10.11-0.20240914031913-37c18f143a6d
gitlab.galaxy-immi.com/Backend-group/proto v1.10.11-0.20240918032310-d804e767dd2c
go.uber.org/zap v1.21.0
google.golang.org/genproto/googleapis/api v0.0.0-20240701130421-f6361c86f094
google.golang.org/grpc v1.64.0
......
......@@ -104,6 +104,7 @@ github.com/aliyun/credentials-go v1.3.1/go.mod h1:8jKYhQuDawt8x2+fusqa1Y6mPxemTs
github.com/antihax/optional v1.0.0/go.mod h1:uupD/76wgC+ih3iEmQUL+0Ugr19nfwCT1kdvxnR2qWY=
github.com/apache/thrift v0.12.0/go.mod h1:cp2SuWMxlEZw2r+iP2GNCdIi4C1qmUzdZFSVb+bacwQ=
github.com/apache/thrift v0.13.0/go.mod h1:cp2SuWMxlEZw2r+iP2GNCdIi4C1qmUzdZFSVb+bacwQ=
github.com/apparentlymart/go-dump v0.0.0-20180507223929-23540a00eaa3/go.mod h1:oL81AME2rN47vu18xqj1S1jPIPuN7afo62yKTNn3XMM=
github.com/apparentlymart/go-textseg/v13 v13.0.0 h1:Y+KvPE1NYz0xl601PVImeQfFyEy6iT90AvPUL1NNfNw=
github.com/apparentlymart/go-textseg/v13 v13.0.0/go.mod h1:ZK2fH7c4NqDTLtiYLvIkEghdlcqw7yxLeM89kiTRPUo=
github.com/armon/circbuf v0.0.0-20150827004946-bbbad097214e/go.mod h1:3U/XgcO3hCbHZ8TKRvWD2dDTCfh9M9ya+I9JpbB7O8o=
......@@ -201,6 +202,7 @@ github.com/go-sql-driver/mysql v1.8.1 h1:LedoTUt/eveggdHS9qUFC1EFSa8bU2+1pZjSRpv
github.com/go-sql-driver/mysql v1.8.1/go.mod h1:wEBSXgmK//2ZFJyE+qWnIsVGmvmEKlqwuVSjsCm7DZg=
github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY=
github.com/go-test/deep v1.0.3 h1:ZrJSEWsXzPOxaZnFteGEfooLba+ju3FYIbOrS+rQd68=
github.com/go-test/deep v1.0.3/go.mod h1:wGDj63lr65AM2AQyKZd/NYHGb0R+1RLqB8NKt3aSFNA=
github.com/gogo/googleapis v1.1.0/go.mod h1:gf4bu3Q80BeJ6H1S1vYPm8/ELATdvryBaNFGgqEef3s=
github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=
github.com/gogo/protobuf v1.2.0/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=
......@@ -354,6 +356,7 @@ github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI=
github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=
github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE=
github.com/kylelemons/godebug v0.0.0-20170820004349-d65d576e9348 h1:MtvEpTB6LX3vkb4ax0b5D2DHbNAUsen0Gx5wZoq3lV4=
github.com/kylelemons/godebug v0.0.0-20170820004349-d65d576e9348/go.mod h1:B69LEHPfb2qLo0BaaOLcbitczOKLWTsrBG9LczfCD4k=
github.com/lightstep/lightstep-tracer-common/golang/gogo v0.0.0-20190605223551-bc2310a04743/go.mod h1:qklhhLq1aX+mtWk9cPHPzaBjWImj5ULL6C7HFJtXQMM=
github.com/lightstep/lightstep-tracer-go v0.18.1/go.mod h1:jlF1pusYV4pidLvZ+XD0UBX0ZE6WURAspgAczcDHrL4=
github.com/lyft/protoc-gen-validate v0.0.13/go.mod h1:XbGvPuh87YZc5TdIa2/I4pLk0QoUACkjt2znoq26NVQ=
......@@ -473,6 +476,7 @@ github.com/ryanuber/columnize v0.0.0-20160712163229-9b3edd62028f/go.mod h1:sm1tb
github.com/samuel/go-zookeeper v0.0.0-20190923202752-2cc03de413da/go.mod h1:gi+0XIa01GRL2eRQVjQkKGqKF3SF9vZR/HnPullcV2E=
github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc=
github.com/sergi/go-diff v1.0.0 h1:Kpca3qRNrduNnOQeazBd0ysaKrUJiIuISHxogkT9RPQ=
github.com/sergi/go-diff v1.0.0/go.mod h1:0CfEIISq7TuYL3j771MWULgwwjU+GofnZX9QAmXWZgo=
github.com/shirou/gopsutil/v3 v3.21.6 h1:vU7jrp1Ic/2sHB7w6UNs7MIkn7ebVtTb5D9j45o9VYE=
github.com/shirou/gopsutil/v3 v3.21.6/go.mod h1:JfVbDpIBLVzT8oKbvMg9P3wEIMDDpVn+LwHTKj0ST88=
github.com/shopspring/decimal v1.3.1 h1:2Usl1nmF/WZucqkFZhnfFYxxxu8LG21F6nPQBE5gKV8=
......@@ -543,10 +547,13 @@ github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1
github.com/yuin/goldmark v1.4.13/go.mod h1:6yULJ656Px+3vBD8DxQVa3kxgyrAnzto9xy5taEt/CY=
github.com/zclconf/go-cty v1.8.0 h1:s4AvqaeQzJIu3ndv4gVIhplVD0krU+bgrcLSVUnaWuA=
github.com/zclconf/go-cty v1.8.0/go.mod h1:vVKLxnk3puL4qRAv72AO+W99LUD4da90g3uUAzyuvAk=
github.com/zclconf/go-cty-debug v0.0.0-20191215020915-b22d67c1ba0b/go.mod h1:ZRKQfBXbGkpdV6QMzT3rU1kSTAnfu1dO8dPKjYprgj8=
gitlab.galaxy-immi.com/Backend-group/go-com v1.4.2-test-rc12 h1:bzReHSzFXDEDY63QL0VDMfcfAL8MYm7I4h6iB6qIAeY=
gitlab.galaxy-immi.com/Backend-group/go-com v1.4.2-test-rc12/go.mod h1:Wyfqynjmd55ApRDPxuFOlOwcYhS+L0LZU4oExla7+Lw=
gitlab.galaxy-immi.com/Backend-group/proto v1.10.11-0.20240914031913-37c18f143a6d h1:ceqoQcF4aT0Uo3vR3yB4IVqbrWiJwY4/Tawfc/6hrOs=
gitlab.galaxy-immi.com/Backend-group/proto v1.10.11-0.20240914031913-37c18f143a6d/go.mod h1:vXZLtbzFvAjc86DXqO8LdYjBkMGc5fVh5XGe2bi4FqE=
gitlab.galaxy-immi.com/Backend-group/proto v1.10.11-0.20240918032310-d804e767dd2c h1:oxGqTzwREd3VqEWW2sdZrRytUXAon4McO1n7xtBsk+o=
gitlab.galaxy-immi.com/Backend-group/proto v1.10.11-0.20240918032310-d804e767dd2c/go.mod h1:vXZLtbzFvAjc86DXqO8LdYjBkMGc5fVh5XGe2bi4FqE=
go.etcd.io/bbolt v1.3.3/go.mod h1:IbVyRI1SCnLcuJnV2u8VeU0CEYM7e686BmAb1XKL+uU=
go.etcd.io/etcd v0.0.0-20191023171146-3cf2f69b5738/go.mod h1:dnLIgRNXwCJa5e+c6mIZCrds/GIG4ncV9HhK5PX7jPg=
go.opencensus.io v0.20.1/go.mod h1:6WKK9ahsWS3RSO+PY9ZHZUfv2irvY6gN279GOPZjmmk=
......
......@@ -173,7 +173,11 @@ func run() error {
}
func main() {
//执行转换
go console.DoAliData()
//获取转换进度
go console.GetConvert()
if err := run(); err != nil && !errors.Is(err, http.ErrServerClosed) {
panic(err)
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment