package controller import ( "github.com/gin-gonic/gin" "github.com/sirupsen/logrus" "youngee_b_api/app/service" "youngee_b_api/app/service/review_service" "youngee_b_api/app/vo" ) type TaskController struct{} type SelectionDetailParam struct { SelectionId string `json:"selection_id"` //EnterpriseId string `json:"enterprise_id"` //SubAccountId int `json:"sub_account_id"` } type ProjectDetailParam struct { ProjectId string `json:"project_id"` //EnterpriseId string `json:"enterprise_id"` //SubAccountId int `json:"sub_account_id"` } // 关联商品-已有商品展示 func (t TaskController) GetAllProduct(c *gin.Context) { search := vo.GetAllProductParam{} err := c.BindJSON(&search) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } var result vo.ResultVO result, err = service.ProductService{}.GetTaskProductsByUserId(search) if err != nil { returnError(c, 40000, "error") return } returnSuccess(c, 20000, result) return } // 关联商品-新建商品 func (t TaskController) CreateProduct(c *gin.Context) { data := &vo.ProductCreateParam{} err := c.BindJSON(data) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } productId, err := service.ProductService{}.CreateProduct(data) resultMap := make(map[string]int64) resultMap["productId"] = productId returnSuccess(c, 20000, resultMap) } // 关联商品-完成关联创建带货任务 func (t TaskController) CreateSelection(c *gin.Context) { data := &vo.SelectionInfoCreateParam{} err := c.BindJSON(data) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } selectionId, err := service.SelectionInfoService{}.CreateSelectionInfo(data) if err != nil { logrus.Errorf("[CreateSelection] call CreateSelection err:%+v\n", err) returnError(c, 40000, "error") return } resultMap := make(map[string]string) resultMap["selectionId"] = *selectionId returnSuccess(c, 20000, resultMap) } // 更新带货任务(样品奖励、补充信息) func (t TaskController) UpdateSelection(c *gin.Context) { data := &vo.SelectionInfoUpdateParam{} err := c.BindJSON(data) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } selectionId, err := service.SelectionInfoService{}.UpdateSelectionInfo(data) if err != nil { logrus.Errorf("[UpdateSelection] call UpdateSelection err:%+v\n", err) returnError(c, 40000, "error") return } resultMap := make(map[string]string) resultMap["selectionId"] = *selectionId returnSuccess(c, 20000, resultMap) } // 电商带货任务预览 func (t TaskController) GetSelectionDetail(c *gin.Context) { data := &SelectionDetailParam{} err := c.BindJSON(data) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } res, err := service.SelectionInfoService{}.GetSelectionDetail(data.SelectionId) if err != nil { logrus.Errorf("[GetSelectionDetail] call Show err:%+v\n", err) returnError(c, 40000, "error") return } returnSuccess(c, 20000, res) } // 电商带货提交审核 func (t TaskController) SelectionToReview(c *gin.Context) { data := &vo.SelectionInfoUpdateParam{} err := c.BindJSON(data) if err != nil || data.SelectionID == "" { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } selectionId, err := service.SelectionInfoService{}.SelectionToReview(data) if err != nil { logrus.Errorf("[SelectionToReview] call SelectionToReview err:%+v\n", err) returnError(c, 40000, "error") return } resultMap := make(map[string]string) resultMap["selectionId"] = *selectionId returnSuccess(c, 20000, resultMap) } // 电商带货任务列表 func (t TaskController) SelectionTaskList(c *gin.Context) { param := &vo.SelectionSearchParam{} err := c.BindJSON(param) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } res, err := service.SelectionInfoService{}.GetSelectionTaskList(param) if err != nil { logrus.Errorf("[SelectionTaskList] call Show err:%+v\n", err) returnError(c, 40000, "error") return } returnSuccess(c, 20000, res) } // 删除带货任务 func (t TaskController) SelectionDel(c *gin.Context) { param := &vo.SelectionSearchParam{} err := c.BindJSON(param) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } selectionId, err := service.SelectionInfoService{}.DeleteSelection(param.SelectionId) if err != nil { logrus.Errorf("[SelectionDel] call Show err:%+v\n", err) returnError(c, 40000, "error") return } resultMap := make(map[string]string) resultMap["selectionId"] = *selectionId returnSuccess(c, 20000, resultMap) } // 电商带货任务审核 func (t TaskController) CheckSelectionInfo(c *gin.Context) { //data := &vo.ContentCheckParam{} //err := c.BindJSON(data) //if err != nil { // logrus.Errorf("Request bind err:%+v\n", err) // returnError(c, 40000, "error") // return //} //res, err := service.ContentService{}.CheckContent(data) //if err != nil { // logrus.Errorf("[CheckSelectionInfo] call Show err:%+v\n", err) // returnError(c, 40000, "error") // return //} // //returnSuccess(c, 20000, *res) data := &vo.ContentCheckParam{} err := c.BindJSON(data) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } sdk := review_service.Config(data.AK, data.SK, data.ProjectId) res1, err1 := sdk.CheckContent(data.Text) res2, err2 := sdk.CheckImage(data.Image) res3, err3 := sdk.CheckDocument(data.Document, data.Format) res4, err4 := sdk.CheckVideo(data.Video) res5, err5 := sdk.CheckCredentials(data.Credentials) if err1 != nil { logrus.Errorf("[CheckSelectionInfo] call Show err:%+v\n", err) returnError(c, 40000, res1) return } if err2 != nil { logrus.Errorf("[CheckSelectionInfo] call Show err:%+v\n", err) returnError(c, 40000, res2) return } if err3 != nil { logrus.Errorf("[CheckSelectionInfo] call Show err:%+v\n", err) returnError(c, 40000, res3) return } if err4 != nil { logrus.Errorf("[CheckSelectionInfo] call Show err:%+v\n", err) returnError(c, 40000, res4) return } if err5 != nil { logrus.Errorf("[CheckSelectionInfo] call Show err:%+v\n", err) returnError(c, 40000, res5) return } returnSuccess(c, 20000, res3) } // 创建种草任务 func (t TaskController) CreateProject(c *gin.Context) { data := &vo.ProjectCreateParam{} err := c.BindJSON(data) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } projectId, err := service.ProjectService{}.CreateProject(data) if err != nil { logrus.Errorf("[CreateProject] call CreateProject err:%+v\n", err) returnError(c, 40000, "error") return } resultMap := make(map[string]string) resultMap["projectId"] = *projectId returnSuccess(c, 20000, resultMap) } // 更新种草任务 func (t TaskController) UpdateProject(c *gin.Context) { data := &vo.ProjectUpdateParam{} err := c.BindJSON(data) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } projectId, err := service.ProjectService{}.UpdateProject(data) if err != nil { logrus.Errorf("[UpdateProject] call UpdateProject err:%+v\n", err) returnError(c, 40000, "error") return } resultMap := make(map[string]string) resultMap["projectId"] = *projectId returnSuccess(c, 20000, resultMap) } // 更新定向种草任务 func (t TaskController) UpdateProjectTarget(c *gin.Context) { data := &vo.ProjectUpdateParam{} err := c.BindJSON(data) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } projectId, err := service.ProjectService{}.UpdateProjectTarget(data) if err != nil { logrus.Errorf("[UpdateProject] call UpdateProject err:%+v\n", err) returnError(c, 40000, "error") return } resultMap := make(map[string]string) resultMap["projectId"] = *projectId returnSuccess(c, 20000, resultMap) } // 种草任务预览 func (t TaskController) GetProjectDetail(c *gin.Context) { data := &ProjectDetailParam{} err := c.BindJSON(data) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } res, err := service.ProjectService{}.GetProjectDetail(data.ProjectId) if err != nil { logrus.Errorf("[GetProjectDetail] call Show err:%+v\n", err) returnError(c, 40000, "error") return } returnSuccess(c, 20000, res) } // 种草提交审核 func (t TaskController) ProjectToReview(c *gin.Context) { data := &vo.ProjectUpdateParam{} err := c.BindJSON(data) if err != nil || data.ProjectID == "" { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } projectId, err := service.ProjectService{}.ProjectToReview(data) if err != nil { logrus.Errorf("[ProjectToReview] call ProjectToReview err:%+v\n", err) returnError(c, 40000, "error") return } resultMap := make(map[string]string) resultMap["projectId"] = *projectId returnSuccess(c, 20000, resultMap) } // 公开种草任务列表 func (t TaskController) ProjectTaskList(c *gin.Context) { param := &vo.ProjectSearchParam{} err := c.BindJSON(param) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } res, err := service.ProjectService{}.GetProjectTaskList(param) if err != nil { logrus.Errorf("[ProjectTaskList] call Show err:%+v\n", err) returnError(c, 40000, "error") return } returnSuccess(c, 20000, res) } // 删除种草任务 func (t TaskController) ProjectDel(c *gin.Context) { param := &vo.ProjectSearchParam{} err := c.BindJSON(param) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } projectId, err := service.ProjectService{}.DeleteProject(param.ProjectId) if err != nil { logrus.Errorf("[ProjectDel] call Show err:%+v\n", err) returnError(c, 40000, "error") return } resultMap := make(map[string]string) resultMap["projectId"] = *projectId returnSuccess(c, 20000, resultMap) } // 草稿箱——电商带货 func (t TaskController) GetSelectionDraftList(c *gin.Context) { param := &vo.SelectionDraftParam{} err := c.BindJSON(param) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } res, err := service.SelectionInfoService{}.GetSelectionDraftList(param) if err != nil { logrus.Errorf("[SelectionTaskList] call Show err:%+v\n", err) returnError(c, 40000, "error") return } returnSuccess(c, 20000, res) } // 草稿箱——品牌种草 func (t TaskController) GetProjectDraftList(c *gin.Context) { param := &vo.ProjectDraftParam{} err := c.BindJSON(param) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } res, err := service.ProjectService{}.GetProjectDraftList(param) if err != nil { logrus.Errorf("[SelectionTaskList] call Show err:%+v\n", err) returnError(c, 40000, "error") return } returnSuccess(c, 20000, res) } // 违约管理——违约公开任务列表 func (t TaskController) GetPublicDefaultList(c *gin.Context) { param := &vo.DefaultSearchParam{} err := c.BindJSON(param) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } res, err := service.DefaultService{}.GetPublicDefaultList(param) if err != nil { logrus.Errorf("[GetPublicDefaultList] call Show err:%+v\n", err) returnError(c, 40000, "error") return } returnSuccess(c, 20000, res) } // 违约管理——违约定向任务列表 func (t TaskController) GetTargetDefaultList(c *gin.Context) { param := &vo.DefaultSearchParam{} err := c.BindJSON(param) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } res, err := service.DefaultService{}.GetTargetDefaultList(param) if err != nil { logrus.Errorf("[GetTargetDefaultList] call Show err:%+v\n", err) returnError(c, 40000, "error") return } returnSuccess(c, 20000, res) } // 违约管理——公开任务-违约达人列表 func (t TaskController) GetPublicDefaultTalentList(c *gin.Context) { param := &vo.DefaultSearchParam{} err := c.BindJSON(param) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } res, err := service.DefaultService{}.GetPublicDefaultTalentList(param) if err != nil { logrus.Errorf("[GetPublicDefaultTalentList] call Show err:%+v\n", err) returnError(c, 40000, "error") return } returnSuccess(c, 20000, res) } // 违约管理——定向任务-违约达人列表 func (t TaskController) GetTargetDefaultTalentList(c *gin.Context) { param := &vo.DefaultSearchParam{} err := c.BindJSON(param) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } res, err := service.DefaultService{}.GetTargetDefaultTalentList(param) if err != nil { logrus.Errorf("[GetTargetDefaultTalentList] call Show err:%+v\n", err) returnError(c, 40000, "error") return } returnSuccess(c, 20000, res) } // 违约管理——达人解约 func (t TaskController) CancelTalent(c *gin.Context) { param := &vo.TalentCancelParam{} err := c.BindJSON(param) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } err = service.DefaultService{}.CancelTalent(param) if err != nil { logrus.Errorf("[CancelTalent] call Show err:%+v\n", err) returnError(c, 40000, "error") return } resultMap := make(map[string]string) resultMap["taskId"] = param.TaskId returnSuccess(c, 20000, resultMap) } // 违约管理——达人批量解约 func (t TaskController) CancelTalentList(c *gin.Context) { param := &vo.TalentCancelParam{} err := c.BindJSON(param) if err != nil { logrus.Errorf("Request bind err:%+v\n", err) returnError(c, 40000, "参数错误") return } err = service.DefaultService{}.CancelTalentList(param) if err != nil { logrus.Errorf("[CancelTalentList] call Show err:%+v\n", err) returnError(c, 40000, "error") return } resultMap := make(map[string][]string) resultMap["taskIds"] = param.TaskIds returnSuccess(c, 20000, resultMap) }