Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
ppt_server
Overview
Overview
Details
Activity
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
Li Feifei
ppt_server
Commits
b6184261
Commit
b6184261
authored
Mar 03, 2020
by
Li Feifei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
test
parent
14c3182e
Pipeline
#8555
passed with stages
in 37 seconds
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
58 additions
and
1 deletions
+58
-1
upload.go
upload/upload.go
+58
-1
No files found.
upload/upload.go
View file @
b6184261
...
...
@@ -79,12 +79,14 @@ func Down(v *models.XyuSmallTempFiles) {
url
,
_
:=
Qurl
.
QueryUnescape
(
v
.
Url
)
filename
:=
path
.
Base
(
url
)
filePath
:=
"/data/files/"
+
filename
objectName
:=
v
.
Url
[
strings
.
Index
(
v
.
Url
,
"com/"
)
+
4
:
]
// 文件以及存在就不需要下载
if
_
,
err
:=
os
.
Stat
(
filePath
);
err
!=
nil
{
// Get the data
resp
,
err
:=
http
.
Get
(
url
)
if
err
!=
nil
{
UpdateFileError
(
"1"
,
v
.
Uuid
,
v
.
RoomNum
,
objectName
)
fmt
.
Println
(
err
)
return
}
...
...
@@ -93,6 +95,7 @@ func Down(v *models.XyuSmallTempFiles) {
out
,
err
:=
os
.
Create
(
filePath
)
if
err
!=
nil
{
fmt
.
Println
(
err
)
UpdateFileError
(
"1"
,
v
.
Uuid
,
v
.
RoomNum
,
objectName
)
return
}
defer
out
.
Close
()
...
...
@@ -101,6 +104,7 @@ func Down(v *models.XyuSmallTempFiles) {
_
,
err
=
io
.
Copy
(
out
,
resp
.
Body
)
if
err
!=
nil
{
fmt
.
Println
(
err
)
UpdateFileError
(
"1"
,
v
.
Uuid
,
v
.
RoomNum
,
objectName
)
return
}
}
...
...
@@ -129,7 +133,7 @@ func Down(v *models.XyuSmallTempFiles) {
t
:=
time
.
Now
()
now
:=
fmt
.
Sprintf
(
"%02d-%02d-%02d %02d:%02d:%02d"
,
t
.
Year
(),
t
.
Month
(),
t
.
Day
(),
t
.
Hour
(),
t
.
Minute
(),
t
.
Second
())
objectName
:=
v
.
Url
[
strings
.
Index
(
v
.
Url
,
"com/"
)
+
4
:
]
slice_path
:=
strings
.
Split
(
objectName
,
"/"
)
fmt
.
Println
(
slice_path
[
2
])
room_file
[
"room_id"
]
=
room
.
Id
...
...
@@ -188,6 +192,7 @@ func Down(v *models.XyuSmallTempFiles) {
maps
,
err
:=
getFileInfo
(
furl
)
if
err
!=
nil
{
fmt
.
Println
(
err
)
UpdateFileError
(
"2"
,
v
.
Uuid
,
v
.
RoomNum
,
objectName
)
return
}
...
...
@@ -202,6 +207,7 @@ func Down(v *models.XyuSmallTempFiles) {
err
:=
uploadPacked
(
bucket
,
filename
,
contentHash
,
objectPath
,
wordFloat64
)
if
err
!=
nil
{
UpdateFileError
(
"6"
,
v
.
Uuid
,
v
.
RoomNum
,
objectName
)
fmt
.
Println
(
err
)
return
}
...
...
@@ -214,6 +220,8 @@ func Down(v *models.XyuSmallTempFiles) {
})
if
err
==
nil
{
ch
<-
true
}
else
{
UpdateFileError
(
"3"
,
v
.
Uuid
,
v
.
RoomNum
,
objectName
)
}
}()
<-
ch
...
...
@@ -223,6 +231,7 @@ func Down(v *models.XyuSmallTempFiles) {
reader
,
err
:=
zip
.
OpenReader
(
"/data/files/"
+
contentHash
+
".zip"
)
if
err
!=
nil
{
fmt
.
Println
(
err
)
UpdateFileError
(
"4"
,
v
.
Uuid
,
v
.
RoomNum
,
objectName
)
return
}
ch1
:=
make
(
chan
bool
)
...
...
@@ -241,6 +250,7 @@ func Down(v *models.XyuSmallTempFiles) {
return
}
}
UpdateFileError
(
"5"
,
v
.
Uuid
,
v
.
RoomNum
,
objectName
)
ch1
<-
false
return
}
else
{
...
...
@@ -259,6 +269,7 @@ func Down(v *models.XyuSmallTempFiles) {
defer
reader
.
Close
()
fmt
.
Println
(
uploadImageCount
,
wordFloat64
)
if
uploadImageCount
!=
wordFloat64
{
UpdateFileError
(
"5"
,
v
.
Uuid
,
v
.
RoomNum
,
objectName
)
fmt
.
Println
(
"上传失败"
)
return
}
...
...
@@ -357,6 +368,52 @@ func webToken() (*http.Client, string, error) {
}
}
func
UpdateFileError
(
code
,
uuid
,
room_num
,
path
string
)
error
{
vv
:=
Qurl
.
Values
{}
vv
.
Add
(
"code"
,
code
)
vv
.
Add
(
"uuid"
,
uuid
)
vv
.
Add
(
"room_num"
,
room_num
)
vv
.
Add
(
"path"
,
path
)
client
,
token
,
err
:=
webToken
()
if
err
!=
nil
{
fmt
.
Println
(
"token 获取失败"
,
err
)
return
err
}
vv
.
Add
(
"_token"
,
token
)
body
:=
vv
.
Encode
()
payload
:=
strings
.
NewReader
(
body
)
req
,
err
:=
http
.
NewRequest
(
"POST"
,
WEBURL
+
"/web/room_files_error"
,
payload
)
if
err
!=
nil
{
fmt
.
Println
(
"123"
)
return
err
}
req
.
Header
.
Add
(
"content-type"
,
"multipart/form-data"
)
req
.
Header
.
Add
(
"Content-Type"
,
"application/x-www-form-urlencoded"
)
res
,
err
:=
client
.
Do
(
req
)
if
err
!=
nil
{
fmt
.
Println
(
"5555"
)
return
err
}
defer
res
.
Body
.
Close
()
post_body
,
err
:=
ioutil
.
ReadAll
(
res
.
Body
)
if
err
!=
nil
{
fmt
.
Println
(
"456"
)
return
err
}
map2
:=
make
(
map
[
string
]
interface
{})
err
=
json
.
Unmarshal
(
post_body
,
&
map2
)
if
err
!=
nil
{
fmt
.
Println
(
"678"
)
return
err
}
if
int
(
map2
[
"code"
]
.
(
float64
))
!=
200
{
return
errors
.
New
(
"消息下发失败"
)
}
return
nil
}
func
createFileDataBase
(
room_file
map
[
string
]
interface
{})
error
{
vv
:=
Qurl
.
Values
{}
...
...
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