s_project_dao.go 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. package dao
  2. import (
  3. "youngee_b_api/app/entity"
  4. )
  5. type SProjectDao struct{}
  6. // 插入数据
  7. func (d SProjectDao) Insert(record *entity.SProjectInfo) error {
  8. result := Db.Debug().Model(&entity.SProjectInfo{}).Create(&record)
  9. return result.Error
  10. }
  11. // 根据种草id、邀约状态返回数据列表
  12. func (d SProjectDao) GetSProjectByStatus(projectId string, status int64, page int, pageSize int) ([]*entity.SProjectInfo, int64, error) {
  13. var sProjectInfos []*entity.SProjectInfo
  14. var total int64
  15. offset := (page - 1) * pageSize
  16. query := Db.Debug().Model(&entity.SProjectInfo{}).Where("project_id = ? AND s_project_status = ?", projectId, status)
  17. query.Count(&total)
  18. query = query.Select("supplier_id, b_operator, b_operator_type")
  19. err := query.Order("create_time desc").Offset(offset).Limit(pageSize).Find(&sProjectInfos).Error
  20. if err != nil {
  21. return nil, 0, err
  22. }
  23. return sProjectInfos, total, nil
  24. }
  25. // 获取某个 project_id 任务涉及到的服务商
  26. func (d SProjectDao) GetSProjectByProjectId(projectId string) ([]*entity.SProjectInfo, error) {
  27. var sProjectInfos []*entity.SProjectInfo
  28. err := Db.Debug().Model(&entity.SProjectInfo{}).Where("project_id = ?", projectId).Select("s_project_id, project_id, supplier_id, service_charge_settle, supplier_type").Find(&sProjectInfos).Error
  29. return sProjectInfos, err
  30. }
  31. // 更新任务
  32. func (d SProjectDao) UpdateSProject(sProject entity.SProjectInfo) error {
  33. err := Db.Model(&entity.SProjectInfo{}).Where("s_project_id = ?", sProject.SProjectID).Updates(sProject).Error
  34. if err != nil {
  35. return err
  36. }
  37. return nil
  38. }
  39. //// 检查给定的服务商是否在该商家库中
  40. //func (d SupplierDao) EnterpriseDatabaseCheck(enterpriseId string, supplierId int64) (bool, error) {
  41. // var count int64
  42. // err := Db.Debug().Model(&entity.EnterpriseSupplierCooperate{}).Where("enterprise_id = ? AND supplier_id = ? AND cooperate_status != 2", enterpriseId, supplierId).Count(&count).Error
  43. // if err != nil {
  44. // return false, err
  45. // }
  46. // return count > 0, nil
  47. //}
  48. //
  49. //// 获取指定商家的服务商库
  50. //func (d SupplierDao) GetSupplierByEnterprise(enterpriseId string, page int, pageSize int) ([]*entity.EnterpriseSupplierCooperate, int64, error) {
  51. // var enterpriseSupplierCooperates []*entity.EnterpriseSupplierCooperate
  52. // var total int64
  53. // offset := (page - 1) * pageSize
  54. // query := Db.Debug().Model(&entity.EnterpriseSupplierCooperate{}).Where("enterprise_id = ? AND cooperate_status = 2", enterpriseId)
  55. // query.Count(&total)
  56. // query = query.Select("supplier_id, cooperate_num, upload_talent_num, cooperate_talent_num, b_operator, b_operator_type, agree_time")
  57. // err := query.Order("agree_time desc").Offset(offset).Limit(pageSize).Find(&enterpriseSupplierCooperates).Error
  58. // if err != nil {
  59. // return nil, 0, err
  60. // }
  61. //
  62. // return enterpriseSupplierCooperates, total, nil
  63. //}
  64. //
  65. //// 获取邀请待确认的服务商
  66. //func (d SupplierDao) GetSupplierConfirmingList(enterpriseId string, page int, pageSize int) ([]*entity.EnterpriseSupplierCooperate, int64, error) {
  67. // var enterpriseSupplierCooperates []*entity.EnterpriseSupplierCooperate
  68. // var total int64
  69. // offset := (page - 1) * pageSize
  70. // query := Db.Debug().Model(&entity.EnterpriseSupplierCooperate{}).Where("enterprise_id = ? AND cooperate_status = 1", enterpriseId)
  71. // query.Count(&total)
  72. // query = query.Select("supplier_id, b_operator, b_operator_type, cooperate_status, create_time")
  73. // err := query.Order("create_time desc").Offset(offset).Limit(pageSize).Find(&enterpriseSupplierCooperates).Error
  74. // if err != nil {
  75. // return nil, 0, err
  76. // }
  77. //
  78. // return enterpriseSupplierCooperates, total, nil
  79. //}