|
@@ -207,16 +207,16 @@ type DeleteReq struct {
|
|
|
}
|
|
|
|
|
|
type AddReq struct {
|
|
|
- ResourceType int `gorm:"column:resource_type;"`
|
|
|
- ClassifyId int `gorm:"column:classify_id"`
|
|
|
- Title string `gorm:"column:title;"`
|
|
|
- State int `gorm:"column:state" description:"0:未发布;1:已发布"`
|
|
|
- Content string `gorm:"column:content"`
|
|
|
- SourceFrom string `gorm:"column:source_from"`
|
|
|
- TagId int `gorm:"column:tag_id;default:0;NOT NULL"`
|
|
|
- StartTime string `gorm:"column:start_time"`
|
|
|
- EndTime string `gorm:"column:end_time"`
|
|
|
- FileUrl string `gorm:"column:file_url"`
|
|
|
+ ResourceType int `gorm:"column:resource_type;"`
|
|
|
+ ClassifyId int `gorm:"column:classify_id"`
|
|
|
+ Title string `gorm:"column:title;"`
|
|
|
+ State int `gorm:"column:state" description:"0:未发布;1:已发布"`
|
|
|
+ Content string `gorm:"column:content"`
|
|
|
+ SourceFrom string `gorm:"column:source_from"`
|
|
|
+ TagId int `gorm:"column:tag_id;default:0;NOT NULL"`
|
|
|
+ StartTime string `gorm:"column:start_time"`
|
|
|
+ EndTime string `gorm:"column:end_time"`
|
|
|
+ FileUrl []string `gorm:"column:file_url"`
|
|
|
}
|
|
|
|
|
|
type AddResp struct {
|
|
@@ -233,6 +233,35 @@ func (m *KnowledgeResource) Add(item *KnowledgeResource) (err error) {
|
|
|
return
|
|
|
}
|
|
|
|
|
|
+func (m *KnowledgeResource) AddWithFile(file []string) (err error) {
|
|
|
+ tx := global.DmSQL["rddp"].Begin()
|
|
|
+ defer func() {
|
|
|
+ if err != nil {
|
|
|
+ tx.Rollback()
|
|
|
+ } else {
|
|
|
+ tx.Commit()
|
|
|
+ }
|
|
|
+ }()
|
|
|
+ err = tx.Create(m).Error
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if len(file) > 0 {
|
|
|
+ fileList := make([]*KnowledgeResourceFile, len(file))
|
|
|
+ for i, v := range file {
|
|
|
+ fileList[i] = &KnowledgeResourceFile{
|
|
|
+ KnowledgeResourceId: m.KnowledgeResourceId,
|
|
|
+ FileUrl: v,
|
|
|
+ }
|
|
|
+ }
|
|
|
+ err = tx.CreateInBatches(fileList, utils.MultiAddNum).Error
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
func (m *KnowledgeResource) AddBatch(item []*KnowledgeResource) (err error) {
|
|
|
err = global.DmSQL["rddp"].CreateInBatches(item, 50).Error
|
|
|
return
|
|
@@ -281,6 +310,41 @@ func (m *KnowledgeResource) Update(cols []string) (err error) {
|
|
|
return
|
|
|
}
|
|
|
|
|
|
+func (m *KnowledgeResource) UpdateWithFile(cols, file []string) (err error) {
|
|
|
+ tx := global.DmSQL["rddp"].Begin()
|
|
|
+ defer func() {
|
|
|
+ if err != nil {
|
|
|
+ tx.Rollback()
|
|
|
+ } else {
|
|
|
+ tx.Commit()
|
|
|
+ }
|
|
|
+ }()
|
|
|
+ err = tx.Select(cols).Updates(m).Error
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if len(file) > 0 {
|
|
|
+ sql := `DELETE FROM knowledge_resource_file WHERE knowledge_resource_id =?`
|
|
|
+ err = tx.Exec(sql, m.KnowledgeResourceId).Error
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ fileList := make([]*KnowledgeResourceFile, len(file))
|
|
|
+ for i, v := range file {
|
|
|
+ fileList[i] = &KnowledgeResourceFile{
|
|
|
+ KnowledgeResourceId: m.KnowledgeResourceId,
|
|
|
+ FileUrl: v,
|
|
|
+ }
|
|
|
+ }
|
|
|
+ err = tx.CreateInBatches(fileList, utils.MultiAddNum).Error
|
|
|
+ if err != nil {
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return
|
|
|
+}
|
|
|
+
|
|
|
// MarkEditReport 标记编辑英文研报的请求数据
|
|
|
type MarkEditReport struct {
|
|
|
KnowledgeResourceId int `description:"研报id"`
|