瀏覽代碼

新增达人消息生成

Ohio-HYF 2 年之前
父節點
當前提交
ba569cf798
共有 11 個文件被更改,包括 190 次插入2 次删除
  1. 74 0
      db/message.go
  2. 14 1
      db/task.go
  3. 21 0
      model/gorm_model/message_info.go
  4. 1 1
      route/init.go
  5. 11 0
      service/data.go
  6. 11 0
      service/link.go
  7. 12 0
      service/logistics.go
  8. 7 0
      service/project.go
  9. 16 0
      service/project_pay.go
  10. 11 0
      service/script.go
  11. 12 0
      service/sketch.go

+ 74 - 0
db/message.go

@@ -0,0 +1,74 @@
+package db
+
+import (
+	"context"
+	"fmt"
+	"time"
+	"youngee_b_api/model/gorm_model"
+
+	"github.com/sirupsen/logrus"
+)
+
+// 通过taskId查询talentId,插入新消息
+func CreateMessageByTaskId(ctx context.Context, messageId int, messageType int, taskId string) error {
+	db := GetReadDB(ctx)
+	taskInfo := gorm_model.YoungeeTaskInfo{}
+	err := db.Model(gorm_model.YoungeeTaskInfo{}).Where("task_id = ?", taskId).Find(&taskInfo).Error
+	if err != nil {
+		logrus.WithContext(ctx).Errorf("[CreateMessageByTask] error read mysql, err:%+v", err)
+		return err
+	}
+
+	db1 := GetReadDB(ctx)
+	var projectName string
+	err = db1.Model(gorm_model.ProjectInfo{}).Select("project_name").Where("project_id = ?", taskInfo.ProjectID).Find(&projectName).Error
+	if err != nil {
+		logrus.WithContext(ctx).Errorf("[CreateMessageByTask] error read mysql, err:%+v", err)
+		return err
+	}
+	fmt.Printf("project_name: %+v, project_id: %+v\n", projectName, taskInfo.ProjectID)
+	messageInfo := gorm_model.YounggeeMessageInfo{
+		MessageID:   messageId,
+		MessageType: messageType,
+		CreatedAt:   time.Now(),
+		TalentID:    taskInfo.TalentID,
+		ProjectName: projectName,
+		IsReaded:    0,
+		IsDeleted:   0,
+	}
+	db2 := GetReadDB(ctx)
+	err = db2.Model(gorm_model.YounggeeMessageInfo{}).Create(&messageInfo).Error
+	if err != nil {
+		logrus.WithContext(ctx).Errorf("[CreateMessageByTask] error create mysql, err:%+v", err)
+		return err
+	}
+	return nil
+}
+
+// 插入新消息
+func CreateMessage(ctx context.Context, messageId int, messageType int, talentId string, projectId string) error {
+	db := GetReadDB(ctx)
+	var projectName string
+	err := db.Model(gorm_model.ProjectInfo{}).Select("project_name").Where("project_id = ?", projectId).Find(&projectName).Error
+	if err != nil {
+		logrus.WithContext(ctx).Errorf("[CreateMessageByTask] error read mysql, err:%+v", err)
+		return err
+	}
+
+	messageInfo := gorm_model.YounggeeMessageInfo{
+		MessageID:   messageId,
+		MessageType: messageType,
+		CreatedAt:   time.Now(),
+		TalentID:    talentId,
+		ProjectName: projectName,
+		IsReaded:    0,
+		IsDeleted:   0,
+	}
+	db1 := GetReadDB(ctx)
+	err = db1.Model(gorm_model.YounggeeMessageInfo{}).Create(&messageInfo).Error
+	if err != nil {
+		logrus.WithContext(ctx).Errorf("[CreateMessageByTask] error create mysql, err:%+v", err)
+		return err
+	}
+	return nil
+}

+ 14 - 1
db/task.go

@@ -65,7 +65,6 @@ func GetProjectIdByTaskId(ctx context.Context, taskID string) (*string, error) {
 
 func ChangeTaskStatus(ctx context.Context, taskIds []string, taskStatus string) ([]int64, error) {
 	db := GetReadDB(ctx)
-
 	taskSta, err := strconv.Atoi(taskStatus)
 	if err != nil {
 		logrus.WithContext(ctx).Errorf("[ChangeTaskStatus]1 error query mysql total, err:%+v", err)
@@ -121,6 +120,7 @@ func UpdateTaskSelectAtByProjectId(ctx context.Context, projectID string, taskSt
 	}
 	return nil
 }
+
 func UpdateTaskStageByProjectId(ctx context.Context, projectID string, taskStatus int64, taskStage int64) error {
 	db := GetReadDB(ctx)
 	err := db.Model(gorm_model.YoungeeTaskInfo{}).Where("project_id=? and task_status = ?", projectID, taskStatus).Update("task_stage", taskStage).Error
@@ -287,3 +287,16 @@ func SetTalentIncome(ctx context.Context, TaskIDs []string) error {
 	}
 	return nil
 }
+
+// 获取任务ids
+func GetTaskIds(ctx context.Context, projectId string) ([]string, error) {
+	db := GetReadDB(ctx)
+	var taskIds []string
+	err := db.Model(gorm_model.YoungeeTaskInfo{}).Select("task_id").Where("project_id = ? and task_status = 2", projectId).Find(&taskIds).Error
+	if err != nil {
+		logrus.WithContext(ctx).Errorf("[CreateMessageByTask] error read mysql, err:%+v", err)
+		return nil, err
+	}
+
+	return taskIds, nil
+}

+ 21 - 0
model/gorm_model/message_info.go

@@ -0,0 +1,21 @@
+// Code generated by sql2gorm. DO NOT EDIT.
+package gorm_model
+
+import (
+	"time"
+)
+
+type YounggeeMessageInfo struct {
+	ID          int       `gorm:"column:id;primary_key;AUTO_INCREMENT"` // id,递增
+	MessageID   int       `gorm:"column:message_id;NOT NULL"`           // 消息内容id,对应info_message
+	MessageType int       `gorm:"column:message_type;NOT NULL"`         // 消息类型,1-4分别表示成功、通知、错误、警告
+	TalentID    string    `gorm:"column:talent_id;NOT NULL"`            // 达人id
+	ProjectName string    `gorm:"column:project_name;NOT NULL"`         // 项目名称
+	CreatedAt   time.Time `gorm:"column:created_at;NOT NULL"`           // 消息创建时间
+	IsReaded    int       `gorm:"column:is_readed;default:0;NOT NULL"`  // 是否已读,1表示未读,2表示已读
+	IsDeleted   int       `gorm:"column:is_deleted;default:0;NOT NULL"` // 是否删除,1表示未删,2表示已删
+}
+
+func (m *YounggeeMessageInfo) TableName() string {
+	return "younggee_message_info"
+}

+ 1 - 1
route/init.go

@@ -66,7 +66,7 @@ func InitRoute(r *gin.Engine) {
 		m.POST("/project/acceptscript", handler.WrapAcceptScriptHandler)                     // 同意脚本
 		m.POST("/project/tasksketchlist", handler.WrapTaskSketchListHandler)                 // 查询初稿列表
 		m.POST("/project/findsketchphoto", handler.WrapFindSketchPhotoHandler)               // 查询脚本配图和视频demo
-		m.POST("/project/sketchopinion", handler.WrapSketchOpinionHandler)                   // 脚本审核意见提交
+		m.POST("/project/sketchopinion", handler.WrapSketchOpinionHandler)                   // 初稿审核意见提交
 		m.POST("/project/acceptsketch", handler.WrapAcceptSketchHandler)                     // 同意脚本
 		m.POST("/project/tasklinklist", handler.WrapTaskLinkListHandler)                     // 查询链接列表
 		m.POST("/project/linkopinion", handler.WrapLinkOpinionHandler)                       // 链接审核意见提交

+ 11 - 0
service/data.go

@@ -34,6 +34,12 @@ func (*data) DataOpinion(ctx context.Context, request http_model.DataOpinionRequ
 		return nil, err
 	}
 
+	err = db.CreateMessageByTaskId(ctx, 19, 3, Data.TaskID)
+	if err != nil {
+		logrus.WithContext(ctx).Errorf("[Data service] call CreateMessageByTaskId error,err:%+v", err)
+		return nil, err
+	}
+
 	res := &http_model.DataOpinionData{
 		TaskID: Data.TaskID,
 	}
@@ -63,6 +69,11 @@ func (*data) AcceptData(ctx context.Context, request http_model.AcceptDataReques
 			logrus.WithContext(ctx).Errorf("[Data service] call CreateTaskLog error,err:%+v", err)
 			return nil, err
 		}
+		err = db.CreateMessageByTaskId(ctx, 5, 1, taskId)
+		if err != nil {
+			logrus.WithContext(ctx).Errorf("[Script service] call CreateTaskLog error,err:%+v", err)
+			return nil, err
+		}
 	}
 
 	// 2. 更新YoungeeTaskInfo表,将任务结案

+ 11 - 0
service/link.go

@@ -34,6 +34,12 @@ func (*link) LinkOpinion(ctx context.Context, request http_model.LinkOpinionRequ
 		return nil, err
 	}
 
+	err = db.CreateMessageByTaskId(ctx, 18, 3, Link.TaskID)
+	if err != nil {
+		logrus.WithContext(ctx).Errorf("[Link service] call CreateMessageByTaskId error,err:%+v", err)
+		return nil, err
+	}
+
 	res := &http_model.LinkOpinionData{
 		TaskID: Link.TaskID,
 	}
@@ -60,6 +66,11 @@ func (*link) AcceptLink(ctx context.Context, request http_model.AcceptLinkReques
 			logrus.WithContext(ctx).Errorf("[Link service] call CreateTaskLog error,err:%+v", err)
 			return nil, err
 		}
+		err = db.CreateMessageByTaskId(ctx, 4, 1, taskId)
+		if err != nil {
+			logrus.WithContext(ctx).Errorf("[Script service] call CreateTaskLog error,err:%+v", err)
+			return nil, err
+		}
 	}
 
 	res := &http_model.AcceptLinkData{

+ 12 - 0
service/logistics.go

@@ -100,6 +100,12 @@ func (*logistics) Create(ctx context.Context, newLogistics http_model.CreateLogi
 		return nil, err
 	}
 
+	err = db.CreateMessageByTaskId(ctx, 8, 2, Logistics.TaskID)
+	if err != nil {
+		logrus.WithContext(ctx).Errorf("[logistics service] call CreateMessageByTaskId error,err:%+v", err)
+		return nil, err
+	}
+
 	res := &http_model.CreateLogisticsData{
 		LogisticsID: *logisticsID,
 	}
@@ -201,6 +207,12 @@ func (*logistics) SignForReceipt(ctx *gin.Context, data http_model.SignForReceip
 			logrus.WithContext(ctx).Errorf("[logistics service] call CreateTaskLog error,err:%+v", err)
 			return err
 		}
+
+		err = db.CreateMessageByTaskId(ctx, 9, 2, taskId)
+		if err != nil {
+			logrus.WithContext(ctx).Errorf("[logistics service] call CreateMessageByTaskId error,err:%+v", err)
+			return err
+		}
 	}
 
 	return nil

+ 7 - 0
service/project.go

@@ -475,6 +475,13 @@ func (*project) ChangeSpecialTaskStatus(ctx *gin.Context, data http_model.Projec
 		logrus.WithContext(ctx).Errorf("[project service] call ChangeSpecialTaskStatus error,err:%+v", err)
 		return err
 	}
+	for _, taskId := range data.TaskIds {
+		err = db.CreateMessageByTaskId(ctx, 7, 2, taskId)
+		if err != nil {
+			logrus.WithContext(ctx).Errorf("[project service] call CreateMessageByTaskId error,err:%+v", err)
+			return err
+		}
+	}
 	return nil
 }
 

+ 16 - 0
service/project_pay.go

@@ -2,6 +2,7 @@ package service
 
 import (
 	"context"
+	"fmt"
 	"youngee_b_api/db"
 	"youngee_b_api/model/http_model"
 
@@ -69,5 +70,20 @@ func (*projectPay) Pay(ctx context.Context, projectPay http_model.ProjectPayRequ
 		}
 	}
 
+	// 插入消息-任务申请成功
+	taskIds, err := db.GetTaskIds(ctx, projectPay.ProjectID) // 获取任务id列表
+	if err != nil {
+		logrus.WithContext(ctx).Errorf("[projectPay service] call GetTaskIds error,err:%+v", err)
+		return nil, err
+	}
+	fmt.Printf("taskIds: %+v", taskIds)
+	for _, taskId := range taskIds {
+		err = db.CreateMessageByTaskId(ctx, 1, 1, taskId) // 插入消息
+		if err != nil {
+			logrus.WithContext(ctx).Errorf("[projectPay service] call CreateMessageByTaskId error,err:%+v", err)
+			return nil, err
+		}
+	}
+
 	return recordId, nil
 }

+ 11 - 0
service/script.go

@@ -34,6 +34,12 @@ func (*script) ScriptOpinion(ctx context.Context, request http_model.ScriptOpini
 		return nil, err
 	}
 
+	err = db.CreateMessageByTaskId(ctx, 16, 3, Script.TaskID)
+	if err != nil {
+		logrus.WithContext(ctx).Errorf("[Script service] call CreateMessageByTaskId error,err:%+v", err)
+		return nil, err
+	}
+
 	res := &http_model.ScriptOpinionData{
 		TaskID: Script.TaskID,
 	}
@@ -60,6 +66,11 @@ func (*script) AcceptScript(ctx context.Context, request http_model.AcceptScript
 			logrus.WithContext(ctx).Errorf("[Script service] call CreateTaskLog error,err:%+v", err)
 			return nil, err
 		}
+		err = db.CreateMessageByTaskId(ctx, 2, 1, taskId)
+		if err != nil {
+			logrus.WithContext(ctx).Errorf("[Script service] call CreateTaskLog error,err:%+v", err)
+			return nil, err
+		}
 	}
 
 	res := &http_model.AcceptScriptData{

+ 12 - 0
service/sketch.go

@@ -36,6 +36,13 @@ func (*sketch) SketchOption(ctx context.Context, request http_model.SketchOpinio
 		logrus.WithContext(ctx).Errorf("[Sketch service] call CreateTaskLog error,err:%+v", err)
 		return nil, err
 	}
+
+	err = db.CreateMessageByTaskId(ctx, 17, 3, Sketch.TaskID)
+	if err != nil {
+		logrus.WithContext(ctx).Errorf("[Sketch service] call CreateMessageByTaskId error,err:%+v", err)
+		return nil, err
+	}
+
 	res := &http_model.SketchOpinionData{
 		TaskID: Sketch.TaskID,
 	}
@@ -62,6 +69,11 @@ func (*sketch) AcceptSketch(ctx context.Context, request http_model.AcceptSketch
 			logrus.WithContext(ctx).Errorf("[Sketch service] call CreateTaskLog error,err:%+v", err)
 			return nil, err
 		}
+		err = db.CreateMessageByTaskId(ctx, 3, 1, taskId)
+		if err != nil {
+			logrus.WithContext(ctx).Errorf("[Script service] call CreateTaskLog error,err:%+v", err)
+			return nil, err
+		}
 	}
 
 	res := &http_model.AcceptSketchData{