Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
D
doc-service
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
eifel邓鹏飞
doc-service
Commits
5f5c87f2
Commit
5f5c87f2
authored
Aug 23, 2024
by
Bess严根旺
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
入库
parent
5ede499c
Changes
8
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
169 additions
and
22 deletions
+169
-22
conversionService.go
Service/conversionService.go
+12
-10
daily_file_writer.go
common/log/daily_file_writer.go
+1
-2
app.ini
conf/app.ini
+5
-4
apiController.go
controllers/apiController.go
+25
-6
doc-server.log.20240823
log/doc-server.log.20240823
+5
-0
doc_server_project.go
modes/db/doc_server_project.go
+18
-0
save_or_update.go
modes/db/project/save_or_update.go
+59
-0
mysql_db.go
modes/mysql_db.go
+44
-0
No files found.
Service/conversionService.go
View file @
5f5c87f2
...
...
@@ -156,7 +156,8 @@ func (o *Conversion) DoConversion(arg ConversionRequest) (string, error) {
if
!
ok
{
return
""
,
err
}
return
body
[
"TaskId"
]
.
(
string
),
err
log
.
Info
(
"返回的task_id :%s"
,
body
[
"TaskId"
]
.
(
string
))
return
body
[
"TaskId"
]
.
(
string
),
nil
}
func
(
o
*
Conversion
)
CreateImClient
()
(
_result
*
imm20200930
.
Client
,
_err
error
)
{
...
...
@@ -231,6 +232,7 @@ func (o *Conversion) CreateProject() (_err error) {
return
nil
}
// 获取项目
func
(
o
*
Conversion
)
GetTaskProject
(
args
GetTaskRequest
)
(
string
,
error
)
{
client
,
_err
:=
o
.
CreateImClient
()
if
_err
!=
nil
{
...
...
@@ -257,24 +259,24 @@ func (o *Conversion) GetTaskProject(args GetTaskRequest) (string, error) {
}()
if
tryErr
!=
nil
{
var
err
or
=
&
tea
.
SDKError
{}
var
err
=
&
tea
.
SDKError
{}
if
_t
,
ok
:=
tryErr
.
(
*
tea
.
SDKError
);
ok
{
err
or
=
_t
err
=
_t
}
else
{
err
or
.
Message
=
tea
.
String
(
tryErr
.
Error
())
err
.
Message
=
tea
.
String
(
tryErr
.
Error
())
}
// 此处仅做打印展示,请谨慎对待异常处理,在工程项目中切勿直接忽略异常。
// 错误 message
log
.
Error
(
"错误码%s"
,
tea
.
StringValue
(
err
or
.
Message
))
log
.
Error
(
"错误码%s"
,
tea
.
StringValue
(
err
.
Message
))
// 诊断地址
var
data
interface
{}
d
:=
json
.
NewDecoder
(
strings
.
NewReader
(
tea
.
StringValue
(
err
or
.
Data
)))
d
:=
json
.
NewDecoder
(
strings
.
NewReader
(
tea
.
StringValue
(
err
.
Data
)))
_err
:=
d
.
Decode
(
&
data
)
/*
if m, ok := data.(map[string]interface{}); ok {
if
m
,
ok
:=
data
.
(
map
[
string
]
interface
{});
ok
{
recommend
,
_
:=
m
[
"Recommend"
]
fmt.Println(
recommend)
}
*/
_
,
_err
=
util
.
AssertAsString
(
err
or
.
Message
)
log
.
Info
(
"回访详细%v"
,
recommend
)
}
_
,
_err
=
util
.
AssertAsString
(
err
.
Message
)
if
_err
!=
nil
{
return
""
,
_err
}
...
...
common/log/daily_file_writer.go
View file @
5f5c87f2
...
...
@@ -75,8 +75,7 @@ func (w *dailyFileWriter) getOutputFile() (io.Writer, error) {
0644
,
// rw-r--r--
)
if
nil
!=
err
||
nil
==
outputFile
{
if
nil
!=
err
||
nil
==
outputFile
{
return
nil
,
errors
.
Errorf
(
"打开文件 %s 失败, err = %v"
,
newDailyFile
,
err
)
}
...
...
conf/app.ini
View file @
5f5c87f2
...
...
@@ -3,11 +3,12 @@ app_name = doc-service
log_level
=
DEBUG
[mysql]
ip
=
127.0.0.1
ip
=
"wan-test1-mysql-m1.galaxy-immi.com"
port
=
3306
user
=
root
password
=
123456wan
database
=
hyperf
user
=
"admin"
password
=
`0HkUEneEon#gQJAa`
database
=
ServerSiteMicros
[redis]
ip
=
192.168.23.12
...
...
controllers/apiController.go
View file @
5f5c87f2
...
...
@@ -2,6 +2,10 @@ package controllers
import
(
service
"doc-service/Service"
"doc-service/common/log"
models
"doc-service/modes"
"doc-service/modes/db"
"doc-service/modes/db/project"
"github.com/gin-contrib/sessions"
"github.com/gin-gonic/gin"
"net/http"
...
...
@@ -37,10 +41,7 @@ func (con ApiController) Plist(c *gin.Context) {
c
.
String
(
200
,
"我是一个api接口-Plist"
)
}
/*
*
发起文件转换
*/
// 发起文件转换
func
(
con
ApiController
)
Conversion
(
c
*
gin
.
Context
)
{
ret
:=
make
(
map
[
string
]
interface
{},
0
)
ret
[
"errcode"
]
=
0
...
...
@@ -69,10 +70,28 @@ func (con ApiController) Conversion(c *gin.Context) {
ret
[
"errmsg"
]
=
errs
.
Error
()
ret
[
"errcode"
]
=
100011
}
ret
[
"task_id"
]
=
result
//入库
insertProject
:=
&
db
.
DocServerProject
{}
insertProject
.
ProjectName
=
req
.
ProjectName
insertProject
.
SourceType
=
req
.
SourceType
insertProject
.
TargetType
=
req
.
TargetType
insertProject
.
SourceUrl
=
req
.
SourceURI
insertProject
.
TargetUrl
=
req
.
TargetURI
insertProject
.
Status
=
0
insertProject
.
AppId
=
1
insertProject
.
CreatedAt
=
models
.
GetDate
()
insertProject
.
TaskId
=
result
createErr
,
projectId
:=
project
.
SaveOrUpdate
(
insertProject
)
log
.
Info
(
"%+v"
,
projectId
)
if
createErr
!=
nil
{
log
.
Error
(
"错误信息:%+v"
,
createErr
)
}
ret
[
"id"
]
=
projectId
ret
[
"url"
]
=
result
res
(
c
,
http
.
StatusOK
,
"成功"
,
ret
)
return
}
// 获取转换结果
...
...
log/doc-server.log.20240823
0 → 100644
View file @
5f5c87f2
[ ERROR ] 09:27:04.342401 conversionService.go:216: 创建项目出现异常ResourceAlreadyExists
[ INFO ] 09:27:04.344619 conversionService.go:146: 转换请求参数: map[ProjectName:DOC_TO_PDF SourceType:docx SourceURI:oss://test-bucket-v1-pub/5000000/2983767665818242051120240605155236.docx TargetType:pdf TargetURI:oss://test-bucket-v1-pub/5000000/test1756.pdf]
[ INFO ] 09:27:04.466260 conversionService.go:149: DoConversion result返回:map[body:map[EventId:37B-1uJGkkhpFx38IVbl3SAAOpbSFlO RequestId:47FB3386-906C-5C16-927D-EB62D662A352 TaskId:OfficeConversion-dab5cb01-6497-4575-ba72-1bffdcec94e2] headers:map[access-control-allow-origin:* access-control-expose-headers:* connection:keep-alive content-length:161 content-type:application/json;charset=utf-8 date:Fri, 23 Aug 2024 01:27:03 GMT etag:10uRBcOCFVVvkIHdbNSqmJA1 keep-alive:timeout=25 x-acs-request-id:47FB3386-906C-5C16-927D-EB62D662A352 x-acs-trace-id:72f85f5697c7b2d8f9af662f0d7bd4ed] statusCode:200]
[ INFO ] 09:27:04.468429 conversionService.go:159: 返回的task_id :OfficeConversion-dab5cb01-6497-4575-ba72-1bffdcec94e2
[ INFO ] 09:27:04.488380 apiController.go:87: 3
modes/db/doc_server_project.go
0 → 100644
View file @
5f5c87f2
package
db
type
DocServerProject
struct
{
Id
int
`db:"id"`
ProjectName
string
`db:"project_name"`
SourceType
string
`db:"source_type"`
TargetType
string
`db:"target_type"`
SourceUrl
string
`db:"source_url"`
TargetUrl
string
`db:"target_url"`
TaskId
string
`db:"task_id"`
AppId
int
`db:"app_id"`
Status
int
`db:"status"`
CreatedAt
string
`db:"created_at"`
}
func
(
a
DocServerProject
)
TableName
()
string
{
return
"doc_server_project"
}
modes/db/project/save_or_update.go
0 → 100644
View file @
5f5c87f2
package
project
import
(
"doc-service/common/log"
models
"doc-service/modes"
"doc-service/modes/db"
"errors"
)
const
sqlSaveOrUpdate
=
`
insert into doc_server_project (
project_name, source_type, target_type, source_url, target_url, task_id,app_id,status,created_at
) value (
?, ?, ?, ?, ?, ?,?,?,?
)
on duplicate key update task_id = values(task_id), created_at = values(created_at)
`
// 保存或者更新数据
func
SaveOrUpdate
(
project
*
db
.
DocServerProject
)
(
error
,
int
)
{
if
nil
==
project
{
return
errors
.
New
(
"project 不能为空"
),
0
}
stmt
,
err
:=
models
.
MysqlDB
.
Prepare
(
sqlSaveOrUpdate
)
if
nil
!=
err
{
log
.
Error
(
"%+v"
,
err
)
return
err
,
0
}
result
,
err1
:=
stmt
.
Exec
(
//project.Id,
project
.
ProjectName
,
project
.
SourceType
,
project
.
TargetType
,
project
.
SourceUrl
,
project
.
TargetUrl
,
project
.
TaskId
,
project
.
AppId
,
project
.
Status
,
project
.
CreatedAt
,
)
if
nil
!=
err1
{
log
.
Error
(
"%+v"
,
err1
)
return
err1
,
0
}
rowId
,
err2
:=
result
.
LastInsertId
()
if
nil
!=
err2
{
log
.
Error
(
"%+v"
,
err2
)
return
err2
,
0
}
project
.
Id
=
int
(
rowId
)
return
nil
,
project
.
Id
}
modes/mysql_db.go
0 → 100644
View file @
5f5c87f2
package
models
import
(
"database/sql"
commonLog
"doc-service/common/log"
"fmt"
"gopkg.in/ini.v1"
"os"
"time"
)
import
_
"github.com/go-sql-driver/mysql"
var
MysqlDB
*
sql
.
DB
func
init
()
{
var
mysqlErr
error
config
,
iniErr
:=
ini
.
Load
(
"./conf/app.ini"
)
if
iniErr
!=
nil
{
commonLog
.
Error
(
"读取配置文件出错%s"
,
iniErr
)
os
.
Exit
(
1
)
}
ip
:=
config
.
Section
(
"mysql"
)
.
Key
(
"ip"
)
.
String
()
port
:=
config
.
Section
(
"mysql"
)
.
Key
(
"port"
)
.
String
()
user
:=
config
.
Section
(
"mysql"
)
.
Key
(
"user"
)
.
String
()
password
:=
config
.
Section
(
"mysql"
)
.
Key
(
"password"
)
.
String
()
database
:=
config
.
Section
(
"mysql"
)
.
Key
(
"database"
)
.
String
()
dsn
:=
fmt
.
Sprintf
(
"%s:%s@tcp(%s:%s)/%s?charset=utf8mb4&parseTime=True&loc=Local"
,
user
,
password
,
ip
,
port
,
database
)
MysqlDB
,
mysqlErr
=
sql
.
Open
(
"mysql"
,
dsn
)
if
nil
!=
mysqlErr
{
panic
(
mysqlErr
)
}
MysqlDB
.
SetMaxOpenConns
(
128
)
MysqlDB
.
SetMaxIdleConns
(
16
)
MysqlDB
.
SetConnMaxLifetime
(
2
*
time
.
Minute
)
if
mysqlErr
=
MysqlDB
.
Ping
();
nil
!=
mysqlErr
{
panic
(
mysqlErr
)
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment