|
@@ -2,6 +2,7 @@ package service
|
|
|
|
|
|
import (
|
|
|
"context"
|
|
|
+ "encoding/json"
|
|
|
"fmt"
|
|
|
"strconv"
|
|
|
"strings"
|
|
@@ -31,6 +32,10 @@ func (*project) Create(ctx context.Context, newProject http_model.CreateProjectR
|
|
|
if err != nil {
|
|
|
return nil, err
|
|
|
}
|
|
|
+ productPhotos, err := db.GetProductPhotoByProductID(ctx, newProject.ProductID)
|
|
|
+ productInfoToJson, _ := json.Marshal(product)
|
|
|
+ productPhotosToJson, _ := json.Marshal(productPhotos)
|
|
|
+ fmt.Println("productPhotosToJson:", productPhotosToJson)
|
|
|
AutoTaskID, err := db.GetLastAutoTaskID()
|
|
|
if err != nil {
|
|
|
return nil, err
|
|
@@ -60,44 +65,48 @@ func (*project) Create(ctx context.Context, newProject http_model.CreateProjectR
|
|
|
}
|
|
|
}
|
|
|
feeFroms := strings.Join(feeFrom, ",")
|
|
|
- fmt.Printf("创建项目new %+v", newProject)
|
|
|
+ //fmt.Printf("创建项目new %+v", newProject)
|
|
|
RecruitDdl, _ := time.ParseInLocation("2006-01-02 15:04:05", newProject.RecruitDdl, time.Local)
|
|
|
projectInfo := gorm_model.ProjectInfo{}
|
|
|
if newProject.ProjectType == int64(1) {
|
|
|
projectInfo = gorm_model.ProjectInfo{
|
|
|
- ProjectName: projectName,
|
|
|
- ProjectStatus: 1,
|
|
|
- ProjectType: newProject.ProjectType,
|
|
|
- TalentType: newProject.TalentType,
|
|
|
- ProjectPlatform: newProject.ProjectPlatform,
|
|
|
- ProjectForm: newProject.ProjectForm,
|
|
|
- RecruitDdl: &RecruitDdl,
|
|
|
- ProjectDetail: newProject.ProjectDetail,
|
|
|
- ContentType: newProject.ContentType,
|
|
|
- EnterpriseID: enterpriseID,
|
|
|
- ProductID: newProject.ProductID,
|
|
|
- FeeForm: feeFroms,
|
|
|
- AutoTaskID: conv.MustInt64(AutoTaskID),
|
|
|
- AutoDefaultID: conv.MustInt64(AutoDefaultID),
|
|
|
- EstimatedCost: ECost,
|
|
|
- IsRead: 0,
|
|
|
+ ProjectName: projectName,
|
|
|
+ ProjectStatus: 1,
|
|
|
+ ProjectType: newProject.ProjectType,
|
|
|
+ TalentType: newProject.TalentType,
|
|
|
+ ProjectPlatform: newProject.ProjectPlatform,
|
|
|
+ ProjectForm: newProject.ProjectForm,
|
|
|
+ RecruitDdl: &RecruitDdl,
|
|
|
+ ProjectDetail: newProject.ProjectDetail,
|
|
|
+ ContentType: newProject.ContentType,
|
|
|
+ EnterpriseID: enterpriseID,
|
|
|
+ ProductID: newProject.ProductID,
|
|
|
+ FeeForm: feeFroms,
|
|
|
+ AutoTaskID: conv.MustInt64(AutoTaskID),
|
|
|
+ AutoDefaultID: conv.MustInt64(AutoDefaultID),
|
|
|
+ EstimatedCost: ECost,
|
|
|
+ IsRead: 0,
|
|
|
+ ProductSnap: string(productInfoToJson),
|
|
|
+ ProductPhotoSnap: string(productPhotosToJson),
|
|
|
}
|
|
|
} else {
|
|
|
projectInfo = gorm_model.ProjectInfo{
|
|
|
- ProjectName: projectName,
|
|
|
- ProjectStatus: 1,
|
|
|
- ProjectType: newProject.ProjectType,
|
|
|
- TalentType: "[]",
|
|
|
- ProjectPlatform: newProject.ProjectPlatform,
|
|
|
- ProjectForm: newProject.ProjectForm,
|
|
|
- ProjectDetail: newProject.ProjectDetail,
|
|
|
- ContentType: newProject.ContentType,
|
|
|
- EnterpriseID: enterpriseID,
|
|
|
- ProductID: newProject.ProductID,
|
|
|
- FeeForm: feeFroms,
|
|
|
- AutoTaskID: conv.MustInt64(AutoTaskID),
|
|
|
- AutoDefaultID: conv.MustInt64(AutoDefaultID),
|
|
|
- EstimatedCost: ECost,
|
|
|
+ ProjectName: projectName,
|
|
|
+ ProjectStatus: 1,
|
|
|
+ ProjectType: newProject.ProjectType,
|
|
|
+ TalentType: "[]",
|
|
|
+ ProjectPlatform: newProject.ProjectPlatform,
|
|
|
+ ProjectForm: newProject.ProjectForm,
|
|
|
+ ProjectDetail: newProject.ProjectDetail,
|
|
|
+ ContentType: newProject.ContentType,
|
|
|
+ EnterpriseID: enterpriseID,
|
|
|
+ ProductID: newProject.ProductID,
|
|
|
+ FeeForm: feeFroms,
|
|
|
+ AutoTaskID: conv.MustInt64(AutoTaskID),
|
|
|
+ AutoDefaultID: conv.MustInt64(AutoDefaultID),
|
|
|
+ EstimatedCost: ECost,
|
|
|
+ ProductSnap: string(productInfoToJson),
|
|
|
+ ProductPhotoSnap: string(productPhotosToJson),
|
|
|
}
|
|
|
}
|
|
|
// db create ProjectInfo
|
|
@@ -156,11 +165,11 @@ func (*project) Create(ctx context.Context, newProject http_model.CreateProjectR
|
|
|
res := &http_model.CreateProjectData{
|
|
|
ProjectID: *projectID,
|
|
|
}
|
|
|
- fmt.Printf("%+v", res)
|
|
|
+ //fmt.Printf("%+v", res)
|
|
|
return res, nil
|
|
|
}
|
|
|
func (*project) Update(ctx context.Context, newProject http_model.UpdateProjectRequest, enterpriseID int64) (*http_model.UpdateProjectData, error) {
|
|
|
- fmt.Println("RecruitDdl:", newProject.RecruitDdl)
|
|
|
+ //fmt.Println("RecruitDdl:", newProject.RecruitDdl)
|
|
|
RecruitDdl, _ := time.ParseInLocation("2006-01-02 15:04:05", newProject.RecruitDdl, time.Local)
|
|
|
oldProject, err3 := db.GetProjectDetail(ctx, conv.MustInt64(newProject.ProjectID))
|
|
|
if err3 != nil {
|
|
@@ -336,7 +345,6 @@ func (*project) GetPorjectDetail(ctx context.Context, projectID int64) (*http_mo
|
|
|
return nil, err
|
|
|
}
|
|
|
enterprise, err := db.GetEnterpriseByEnterpriseID(ctx, project.EnterpriseID)
|
|
|
- // fmt.Println("%+v", enterprise.UserID)
|
|
|
if err != nil {
|
|
|
logrus.WithContext(ctx).Errorf("[project service] call GetEnterpriseByEnterpriseID error,err:%+v", err)
|
|
|
return nil, err
|
|
@@ -346,30 +354,30 @@ func (*project) GetPorjectDetail(ctx context.Context, projectID int64) (*http_mo
|
|
|
logrus.WithContext(ctx).Errorf("[project service] call GetUserByID error,err:%+v", err)
|
|
|
return nil, err
|
|
|
}
|
|
|
- // fmt.Println("%+v", user.Phone)
|
|
|
- //var RecruitStrategys []http_model.ShowRecruitStrategy
|
|
|
ProjectDetail := http_model.ShowProjectData{
|
|
|
- ProjectID: conv.MustString(project.ProjectID),
|
|
|
- ProjectName: conv.MustString(project.ProjectName),
|
|
|
- ProjectStatus: conv.MustString(project.ProjectStatus),
|
|
|
- ProjectType: conv.MustString(project.ProjectType),
|
|
|
- ProjectPlatform: conv.MustString(project.ProjectPlatform),
|
|
|
- ProjectForm: conv.MustString(project.ProjectForm),
|
|
|
- TalentType: conv.MustString(project.TalentType),
|
|
|
- RecruitDdl: util.GetTimePoionter(project.RecruitDdl),
|
|
|
- ContentType: conv.MustString(project.ContentType),
|
|
|
- ProjectDetail: conv.MustString(project.ProjectDetail),
|
|
|
- ProductID: conv.MustString(project.ProductID),
|
|
|
- EnterpriseID: conv.MustString(project.EnterpriseID),
|
|
|
- Balance: conv.MustString(enterprise.Balance),
|
|
|
- EstimatedCost: conv.MustString(project.EstimatedCost),
|
|
|
- FailReason: conv.MustString(project.FailReason),
|
|
|
- CreateAt: util.GetTimePoionter(project.CreatedAt),
|
|
|
- UpdateAt: util.GetTimePoionter(project.UpdatedAt),
|
|
|
- Phone: user.Phone,
|
|
|
- FinishAt: util.GetTimePoionter(project.FinishAt),
|
|
|
- PassAt: util.GetTimePoionter(project.PassAt),
|
|
|
- PayAt: util.GetTimePoionter(project.PayAt),
|
|
|
+ ProjectID: conv.MustString(project.ProjectID),
|
|
|
+ ProjectName: conv.MustString(project.ProjectName),
|
|
|
+ ProjectStatus: conv.MustString(project.ProjectStatus),
|
|
|
+ ProjectType: conv.MustString(project.ProjectType),
|
|
|
+ ProjectPlatform: conv.MustString(project.ProjectPlatform),
|
|
|
+ ProjectForm: conv.MustString(project.ProjectForm),
|
|
|
+ TalentType: conv.MustString(project.TalentType),
|
|
|
+ RecruitDdl: util.GetTimePoionter(project.RecruitDdl),
|
|
|
+ ContentType: conv.MustString(project.ContentType),
|
|
|
+ ProjectDetail: conv.MustString(project.ProjectDetail),
|
|
|
+ ProductID: conv.MustString(project.ProductID),
|
|
|
+ EnterpriseID: conv.MustString(project.EnterpriseID),
|
|
|
+ Balance: conv.MustString(enterprise.Balance),
|
|
|
+ EstimatedCost: conv.MustString(project.EstimatedCost),
|
|
|
+ FailReason: conv.MustString(project.FailReason),
|
|
|
+ CreateAt: util.GetTimePoionter(project.CreatedAt),
|
|
|
+ UpdateAt: util.GetTimePoionter(project.UpdatedAt),
|
|
|
+ Phone: user.Phone,
|
|
|
+ FinishAt: util.GetTimePoionter(project.FinishAt),
|
|
|
+ PassAt: util.GetTimePoionter(project.PassAt),
|
|
|
+ PayAt: util.GetTimePoionter(project.PayAt),
|
|
|
+ ProductInfo: conv.MustString(project.ProductSnap),
|
|
|
+ ProductPhotoInfo: conv.MustString(project.ProductPhotoSnap),
|
|
|
}
|
|
|
Strategys, err := db.GetRecruitStrategys(ctx, projectID)
|
|
|
fmt.Println("招募策略:", Strategys)
|