task_terminated_list.go 2.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. package pack
  2. import (
  3. "github.com/caixw/lib.go/conv"
  4. "github.com/tidwall/gjson"
  5. "youngee_m_api/model/http_model"
  6. )
  7. func MGormTaskTerminatedInfoListToHttpTaskTerminatedPreviewList(gormTaskTerminatedInfos []*http_model.TaskTerminatedInfo) []*http_model.TaskTerminatedPreview {
  8. var httpProjectPreviews []*http_model.TaskTerminatedPreview
  9. for _, gormTaskTerminatedInfo := range gormTaskTerminatedInfos {
  10. httpTaskTerminatedPreview := MGormTaskTerminatedInfoToHttpTaskTerminatedPreview(gormTaskTerminatedInfo)
  11. httpProjectPreviews = append(httpProjectPreviews, httpTaskTerminatedPreview)
  12. }
  13. return httpProjectPreviews
  14. }
  15. func MGormTaskTerminatedInfoToHttpTaskTerminatedPreview(TaskTerminatedInfo *http_model.TaskTerminatedInfo) *http_model.TaskTerminatedPreview {
  16. return &http_model.TaskTerminatedPreview{
  17. TaskID: conv.MustString(TaskTerminatedInfo.TaskID, ""),
  18. ProjectID: conv.MustString(TaskTerminatedInfo.ProjectID, ""),
  19. PlatformNickname: conv.MustString(TaskTerminatedInfo.PlatformNickname, ""),
  20. FansCount: conv.MustString(TaskTerminatedInfo.FansCount, ""),
  21. RecruitStrategyID: conv.MustString(TaskTerminatedInfo.RecruitStrategyID, ""),
  22. StrategyID: conv.MustString(TaskTerminatedInfo.StrategyID, ""),
  23. AllPayment: TaskTerminatedInfo.AllPayment,
  24. RealPayment: TaskTerminatedInfo.RealPayment,
  25. HandleAt: conv.MustString(TaskTerminatedInfo.HandleAt, ""),
  26. BreakType: conv.MustString(TaskTerminatedInfo.BreakType, ""),
  27. }
  28. }
  29. func TaskTerminatedToTaskInfo(TaskTerminateds []*http_model.TaskTerminated) []*http_model.TaskTerminatedInfo {
  30. var TaskTerminatedInfos []*http_model.TaskTerminatedInfo
  31. for _, TaskTerminated := range TaskTerminateds {
  32. TaskTerminated1 := GetTerminatedInfoStruct(TaskTerminated)
  33. TaskTerminatedInfos = append(TaskTerminatedInfos, TaskTerminated1)
  34. }
  35. return TaskTerminatedInfos
  36. }
  37. func GetTerminatedInfoStruct(TaskTerminated *http_model.TaskTerminated) *http_model.TaskTerminatedInfo {
  38. TalentPlatformInfoSnap := TaskTerminated.Talent.TalentPlatformInfoSnap
  39. return &http_model.TaskTerminatedInfo{
  40. TaskID: TaskTerminated.Talent.TaskId,
  41. ProjectID: TaskTerminated.Talent.ProjectId,
  42. PlatformNickname: conv.MustString(gjson.Get(TalentPlatformInfoSnap, "platform_nickname"), ""),
  43. FansCount: conv.MustString(gjson.Get(TalentPlatformInfoSnap, "fans_count"), ""),
  44. StrategyID: TaskTerminated.Talent.StrategyId,
  45. AllPayment: TaskTerminated.Talent.AllPayment,
  46. RealPayment: TaskTerminated.Talent.RealPayment,
  47. BreakType: TaskTerminated.Default.BreakType,
  48. HandleAt: conv.MustString(TaskTerminated.Default.HandleAt, "")[:19],
  49. }
  50. }