Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
chenhan wang
pastebin
Commits
6209decc
Commit
6209decc
authored
Jan 24, 2023
by
lytzjzxr
Browse files
解决了issue5所提出的问题
parent
596074c7
Changes
2
Show whitespace changes
Inline
Side-by-side
backend/model/init.go
View file @
6209decc
...
@@ -25,7 +25,7 @@ func Init() {
...
@@ -25,7 +25,7 @@ func Init() {
if
err
!=
nil
{
if
err
!=
nil
{
logrus
.
Fatal
(
err
)
logrus
.
Fatal
(
err
)
}
}
err
=
DB
.
AutoMigrate
(
&
Sid
{},
&
Ur
l
{})
err
=
DB
.
AutoMigrate
(
&
Re
l
{})
if
err
!=
nil
{
if
err
!=
nil
{
logrus
.
Fatal
(
err
)
logrus
.
Fatal
(
err
)
}
}
...
@@ -97,36 +97,23 @@ func Checkt(p Content) bool {
...
@@ -97,36 +97,23 @@ func Checkt(p Content) bool {
}
}
// 这个函数那边有可能需要
// 这个函数那边有可能需要
// 检查sid是否超
// 检查sid_url是否超时
func
Checkt1
(
sid
string
)
bool
{
//同时也可以查询sid,_url是否关联
var
s
Sid
func
Find
(
sid
string
,
_url
string
)
bool
{
DB
.
First
(
&
s
,
"S = ?"
,
sid
)
var
s
Rel
err
:=
DB
.
Where
(
&
Rel
{
Sid
:
sid
,
Url
:
_url
})
.
First
(
&
s
)
.
Error
if
err
!=
nil
{
return
false
}
t
:=
time
.
Now
()
t
:=
time
.
Now
()
if
t
.
After
(
s
.
Time
)
{
if
t
.
After
(
s
.
Time
)
{
DB
.
Delete
(
&
s
)
return
false
return
false
}
else
{
}
else
{
return
true
return
true
}
}
}
}
// 查找sessionid和url是否关联
func
Find
(
sid
string
,
_url
string
)
bool
{
var
s
Sid
err1
:=
DB
.
First
(
&
s
,
"S = ?"
,
sid
)
.
Error
//fmt.Println(url.Url1,url.ID,"\n")
if
err1
!=
nil
{
return
false
}
var
Urls
[]
Url
DB
.
Model
(
&
s
)
.
Association
(
"Url1"
)
.
Find
(
&
Urls
)
for
_
,
value
:=
range
Urls
{
if
value
.
Url1
==
_url
{
return
true
}
}
return
false
}
// 通过url查询文件类型
// 通过url查询文件类型
func
Find1
(
_url
string
,
key
string
)
string
{
func
Find1
(
_url
string
,
key
string
)
string
{
var
p
Content
var
p
Content
...
@@ -162,36 +149,31 @@ func Createuser(_User Users) {
...
@@ -162,36 +149,31 @@ func Createuser(_User Users) {
//新建链接
//新建链接
/* 返回值:
/* 返回值:
3 表示sid已经过期,需要重新分配
3 表示sid
_url
已经过期,需要重新分配
2 表示内容过期
2 表示内容过期
1 表示密码正确
1 表示密码正确
0 表示密码不正确
0 表示密码不正确
*/
*/
func
Createlink
(
sid
string
,
_passwd
string
,
_url
string
,
_Time1
time
.
Time
)
uint
{
func
Createlink
(
sid
string
,
_passwd
string
,
_url
string
,
_Time1
time
.
Time
)
uint
{
var
p
Content
var
p
Content
DB
.
First
(
&
p
,
"Url1 = ?"
,
_url
)
DB
.
First
(
&
p
,
"Url1 = ?"
,
_url
)
if
p
.
Passwd
==
_passwd
{
if
p
.
Passwd
==
_passwd
{
if
Checkt
(
p
)
{
if
Checkt
(
p
)
{
//fmt.Println(sid,_passwd,_url,_Time1)
//fmt.Println(sid,_passwd,_url,_Time1)
return
2
return
2
}
}
var
p1
Sid
var
p1
Rel
err
:=
DB
.
First
(
&
p1
,
"S = ?"
,
sid
)
.
Error
err
:=
DB
.
Where
(
&
Rel
{
Sid
:
sid
,
Url
:
_url
})
.
First
(
&
p1
)
.
Error
if
err
!=
nil
{
if
err
!=
nil
{
sid1
:=
Sid
{
rel1
:=
Rel
{
S
:
sid
,
Sid
:
sid
,
Url
:
_url
,
Time
:
_Time1
,
Time
:
_Time1
,
Url1
:
[]
Url
{
{
Url1
:
_url
},
},
}
}
DB
.
Create
(
&
sid
1
)
DB
.
Create
(
&
rel
1
)
}
else
{
}
else
{
t
:=
time
.
Now
()
p1
.
Time
=
_Time1
if
t
.
After
(
p1
.
Time
)
{
DB
.
Save
(
&
p1
)
return
3
}
DB
.
Model
(
&
p1
)
.
Association
(
"Url1"
)
.
Append
(
&
Url
{
Url1
:
_url
})
}
}
return
1
return
1
}
}
...
@@ -200,20 +182,15 @@ func Createlink(sid string, _passwd string, _url string, _Time1 time.Time) uint
...
@@ -200,20 +182,15 @@ func Createlink(sid string, _passwd string, _url string, _Time1 time.Time) uint
// 第一次上传
// 第一次上传
func
CreatelinkFirstTime
(
sid
string
,
_url
string
,
_Time1
time
.
Time
)
{
func
CreatelinkFirstTime
(
sid
string
,
_url
string
,
_Time1
time
.
Time
)
{
sid1
:=
Sid
{
sid1
:=
Rel
{
S
:
sid
,
Sid
:
sid
,
Url
:
_url
,
Time
:
_Time1
,
Time
:
_Time1
,
Url1
:
[]
Url
{
{
Url1
:
_url
},
},
}
}
DB
.
Create
(
&
sid1
)
DB
.
Create
(
&
sid1
)
}
}
/*
/*
func Test() {
func Test() {
var p Content
fmt.Println(Find("ab","12345"))
var Url2 string = "1234"
DB.First(&p, "url1 = ?", Url2)
fmt.Println(Checkt(p))
}*/
}*/
backend/model/model.go
View file @
6209decc
...
@@ -19,17 +19,11 @@ type Content struct {
...
@@ -19,17 +19,11 @@ type Content struct {
Filename
string
Filename
string
}
}
type
Sid
struct
{
type
Rel
struct
{
gorm
.
Model
gorm
.
Model
Sid
string
Url
string
Time
time
.
Time
Time
time
.
Time
S
string
Url1
[]
Url
`gorm:"many2many:sid_urls;"`
}
type
Url
struct
{
gorm
.
Model
Url1
string
}
}
type
Users
struct
{
type
Users
struct
{
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new 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