77 lines
1.3 KiB
Go
77 lines
1.3 KiB
Go
package jingangser
|
|
|
|
import (
|
|
"91porn-server/models/v/jingangmod"
|
|
"go.mongodb.org/mongo-driver/bson"
|
|
"go.mongodb.org/mongo-driver/bson/primitive"
|
|
"time"
|
|
)
|
|
|
|
func UpdateJingang(r UpdateJingangReq) error {
|
|
cond := make(bson.M)
|
|
if r.Name != nil {
|
|
cond["name"] = *r.Name
|
|
}
|
|
if r.Img != nil {
|
|
cond["img"] = *r.Img
|
|
}
|
|
if r.Desc != nil {
|
|
cond["desc"] = *r.Desc
|
|
}
|
|
if r.LinkType != nil {
|
|
cond["link_type"] = *r.LinkType
|
|
}
|
|
if r.LinkUrl != nil {
|
|
cond["link_url"] = *r.LinkUrl
|
|
}
|
|
if r.Sort != nil {
|
|
cond["sort"] = *r.Sort
|
|
}
|
|
if r.Status != nil {
|
|
cond["status"] = *r.Status
|
|
}
|
|
if !r.Mid.IsZero() {
|
|
cond["mid"] = r.Mid
|
|
}
|
|
if len(cond) == 0 {
|
|
return nil
|
|
}
|
|
cond["updatedAt"] = time.Now()
|
|
return jingangmod.EditJingang(nil, r.ID, cond)
|
|
}
|
|
|
|
func AddJingang(r AddJingangReq) (*primitive.ObjectID, error) {
|
|
now := time.Now()
|
|
j := jingangmod.JingangModel{
|
|
Name: r.Name,
|
|
CreatedAt: now,
|
|
UpdatedAt: now,
|
|
}
|
|
if r.Img != nil {
|
|
j.Img = *r.Img
|
|
}
|
|
if r.Desc != nil {
|
|
j.Desc = *r.Desc
|
|
}
|
|
if r.LinkType != nil {
|
|
j.LinkType = *r.LinkType
|
|
}
|
|
if r.LinkUrl != nil {
|
|
j.LinkUrl = *r.LinkUrl
|
|
}
|
|
if r.Sort != nil {
|
|
j.Sort = *r.Sort
|
|
}
|
|
if r.Status != nil {
|
|
j.Status = *r.Status
|
|
}
|
|
if !r.Mid.IsZero() {
|
|
j.Mid = r.Mid
|
|
}
|
|
return jingangmod.AddJingang(nil, j)
|
|
}
|
|
|
|
func DeleteJingang(r DeleteJingangReq) error {
|
|
return jingangmod.DeleteJingang(nil, r.ID)
|
|
}
|