|
@@ -176,27 +176,37 @@ func UpdateSProjectStrategyStatus(ctx context.Context, req *http_model.SpecialAd
|
|
|
return nil
|
|
|
}
|
|
|
|
|
|
-// GetFullSProjectBillList 查询公开种草任务账单列表
|
|
|
-func GetFullSProjectBillList(ctx context.Context, supplierId int, ProjectPlatform int, projectStatus int, pageSize, pageNum int32) ([]*gorm_model.SProjectInfo, int64, error) {
|
|
|
- db := GetReadDB(ctx)
|
|
|
+// GetFullSProjectBillList 服务商种草任务账单
|
|
|
+func GetFullSProjectBillList(ctx context.Context, supplierId int, projectType int, ProjectPlatform int, projectStatus int, pageSize, pageNum int32) ([]*gorm_model.SProjectInfo, int64, error) {
|
|
|
+ db := GetReadDB(ctx).Model(gorm_model.SProjectInfo{}).Where("supplier_id = ? and project_type = ?", supplierId, projectType)
|
|
|
|
|
|
- // 1. 根据服务商id过滤
|
|
|
- db = db.Debug().Model(gorm_model.SProjectInfo{}).Where("supplier_id = ? and project_status = ? and project_platform = ?", supplierId, projectStatus, ProjectPlatform)
|
|
|
+ // 仅当 ProjectPlatform 非零时才过滤
|
|
|
+ if ProjectPlatform != 0 {
|
|
|
+ db = db.Where("project_platform = ?", ProjectPlatform)
|
|
|
+ }
|
|
|
+
|
|
|
+ // 仅当 projectStatus 非零时才过滤
|
|
|
+ if projectStatus != 0 {
|
|
|
+ db = db.Where("project_status = ?", projectStatus)
|
|
|
+ }
|
|
|
|
|
|
- // 2. 确定查询总数和返回当前页数据
|
|
|
+ // 查询总数
|
|
|
var total int64
|
|
|
- var SProjects []*gorm_model.SProjectInfo
|
|
|
if err := db.Count(&total).Error; err != nil {
|
|
|
logrus.WithContext(ctx).Errorf("[GetFullProjectList] error query mysql total, err:%+v", err)
|
|
|
return nil, 0, err
|
|
|
}
|
|
|
+
|
|
|
+ // 查询当前页数据
|
|
|
+ var SProjects []*gorm_model.SProjectInfo
|
|
|
limit := pageSize
|
|
|
- offset := pageSize * pageNum // assert pageNum start with 0
|
|
|
+ offset := pageSize * pageNum // 假设 pageNum 从 0 开始
|
|
|
err := db.Order("s_project_id desc").Limit(int(limit)).Offset(int(offset)).Find(&SProjects).Error
|
|
|
if err != nil {
|
|
|
- logrus.WithContext(ctx).Errorf("[GetFullProjectList] error query mysql total, err:%+v", err)
|
|
|
+ logrus.WithContext(ctx).Errorf("[GetFullProjectList] error query mysql, err:%+v", err)
|
|
|
return nil, 0, err
|
|
|
}
|
|
|
+
|
|
|
return SProjects, total, nil
|
|
|
}
|
|
|
|
|
@@ -215,31 +225,33 @@ func FindSProjectByProjectIdAndSupplierId(ctx context.Context, projectId string,
|
|
|
return total, nil
|
|
|
}
|
|
|
|
|
|
-func GetSProjectTaskList(ctx context.Context, sProjectId int, talentId string, pageSize, pageNum int32) ([]*gorm_model.YoungeeTaskInfo, int64, error) {
|
|
|
+func GetSProjectTaskList(ctx context.Context, sProjectId int, condition string, pageSize, pageNum int32) ([]*gorm_model.YoungeeTaskInfo, int64, error) {
|
|
|
db := GetReadDB(ctx)
|
|
|
- whereCondition := gorm_model.YoungeeTaskInfo{
|
|
|
- SProjectId: sProjectId,
|
|
|
- TalentID: talentId,
|
|
|
+
|
|
|
+ // 基础查询条件 - 必须有s_project_id
|
|
|
+ db = db.Debug().Model(gorm_model.YoungeeTaskInfo{}).Where("s_project_id = ?", sProjectId)
|
|
|
+
|
|
|
+ // 如果condition不为空
|
|
|
+ if condition != "" {
|
|
|
+ // db = db.Where("talent_id = ? OR talent_name LIKE ?", condition, "%"+condition+"%")
|
|
|
+ db = db.Where("talent_id = ?", condition)
|
|
|
}
|
|
|
- // 查询task表信息
|
|
|
- db = db.Debug().Model(gorm_model.YoungeeTaskInfo{}).Where(whereCondition)
|
|
|
|
|
|
var taskInfos []*gorm_model.YoungeeTaskInfo
|
|
|
- db = db.Model(gorm_model.YoungeeTaskInfo{})
|
|
|
+
|
|
|
// 查询总数
|
|
|
var totalTask int64
|
|
|
if err := db.Count(&totalTask).Error; err != nil {
|
|
|
logrus.WithContext(ctx).Errorf("[GetProjectTaskList] error query mysql total, err:%+v", err)
|
|
|
return nil, 0, err
|
|
|
}
|
|
|
- db.Order("task_id").Find(&taskInfos)
|
|
|
|
|
|
// 查询该页数据
|
|
|
limit := pageSize
|
|
|
- offset := pageSize * pageNum // assert pageNum start with 0
|
|
|
- err := db.Order("task_id").Limit(int(limit)).Offset(int(offset)).Error
|
|
|
+ offset := pageSize * (pageNum - 1) // 假设pageNum从1开始
|
|
|
+ err := db.Order("task_id").Limit(int(limit)).Offset(int(offset)).Find(&taskInfos).Error
|
|
|
if err != nil {
|
|
|
- logrus.WithContext(ctx).Errorf("[GetProjectTaskList] error query mysql total, err:%+v", err)
|
|
|
+ logrus.WithContext(ctx).Errorf("[GetProjectTaskList] error query mysql data, err:%+v", err)
|
|
|
return nil, 0, err
|
|
|
}
|
|
|
|