|
@@ -4,6 +4,7 @@ import (
|
|
|
"context"
|
|
|
"encoding/json"
|
|
|
"fmt"
|
|
|
+ "math/rand"
|
|
|
"strconv"
|
|
|
"strings"
|
|
|
"time"
|
|
@@ -25,7 +26,7 @@ var Project *project
|
|
|
type project struct {
|
|
|
}
|
|
|
|
|
|
-func (*project) Create(ctx context.Context, newProject http_model.CreateProjectRequest, enterpriseID int64) (*http_model.CreateProjectData, error) {
|
|
|
+func (*project) Create(ctx context.Context, newProject http_model.CreateProjectRequest, enterpriseID string) (*http_model.CreateProjectData, error) {
|
|
|
// build gorm_model.ProjectInfo
|
|
|
// 查询关联商品信息
|
|
|
product, err := db.GetProductByID(ctx, newProject.ProductID)
|
|
@@ -35,7 +36,7 @@ func (*project) Create(ctx context.Context, newProject http_model.CreateProjectR
|
|
|
productPhotos, err := db.GetProductPhotoByProductID(ctx, newProject.ProductID)
|
|
|
productInfoToJson, _ := json.Marshal(product)
|
|
|
productPhotosToJson, _ := json.Marshal(productPhotos)
|
|
|
- fmt.Println("productPhotosToJson:", productPhotosToJson)
|
|
|
+ //fmt.Println("productPhotosToJson:", productPhotosToJson)
|
|
|
AutoTaskID, err := db.GetLastAutoTaskID()
|
|
|
if err != nil {
|
|
|
return nil, err
|
|
@@ -67,9 +68,19 @@ func (*project) Create(ctx context.Context, newProject http_model.CreateProjectR
|
|
|
feeFroms := strings.Join(feeFrom, ",")
|
|
|
//fmt.Printf("创建项目new %+v", newProject)
|
|
|
RecruitDdl, _ := time.ParseInLocation("2006-01-02 15:04:05", newProject.RecruitDdl, time.Local)
|
|
|
+ fmt.Println("Create RecruitDdl:", newProject.RecruitDdl, RecruitDdl)
|
|
|
projectInfo := gorm_model.ProjectInfo{}
|
|
|
+ rand.Seed(time.Now().UnixNano())
|
|
|
+ td := conv.MustString(time.Now().Day())
|
|
|
+ for {
|
|
|
+ if len(td) == 3 {
|
|
|
+ break
|
|
|
+ }
|
|
|
+ td = "0" + td
|
|
|
+ }
|
|
|
if newProject.ProjectType == int64(1) {
|
|
|
projectInfo = gorm_model.ProjectInfo{
|
|
|
+ ProjectID: conv.MustString(time.Now().Year())[2:] + td + conv.MustString(rand.Intn(100000-10000)+10000),
|
|
|
ProjectName: projectName,
|
|
|
ProjectStatus: 1,
|
|
|
ProjectType: newProject.ProjectType,
|
|
@@ -91,12 +102,14 @@ func (*project) Create(ctx context.Context, newProject http_model.CreateProjectR
|
|
|
}
|
|
|
} else {
|
|
|
projectInfo = gorm_model.ProjectInfo{
|
|
|
- ProjectName: projectName,
|
|
|
- ProjectStatus: 1,
|
|
|
- ProjectType: newProject.ProjectType,
|
|
|
- TalentType: "[]",
|
|
|
- ProjectPlatform: newProject.ProjectPlatform,
|
|
|
- ProjectForm: newProject.ProjectForm,
|
|
|
+ ProjectID: conv.MustString(time.Now().Year())[2:] + td + conv.MustString(rand.Intn(100000-10000)+10000),
|
|
|
+ ProjectName: projectName,
|
|
|
+ ProjectStatus: 1,
|
|
|
+ ProjectType: newProject.ProjectType,
|
|
|
+ TalentType: "[]",
|
|
|
+ ProjectPlatform: newProject.ProjectPlatform,
|
|
|
+ ProjectForm: newProject.ProjectForm,
|
|
|
+ //RecruitDdl: &RecruitDdl,
|
|
|
ProjectDetail: newProject.ProjectDetail,
|
|
|
ContentType: newProject.ContentType,
|
|
|
EnterpriseID: enterpriseID,
|
|
@@ -168,10 +181,10 @@ func (*project) Create(ctx context.Context, newProject http_model.CreateProjectR
|
|
|
//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)
|
|
|
+func (*project) Update(ctx context.Context, newProject http_model.UpdateProjectRequest, enterpriseID string) (*http_model.UpdateProjectData, error) {
|
|
|
RecruitDdl, _ := time.ParseInLocation("2006-01-02 15:04:05", newProject.RecruitDdl, time.Local)
|
|
|
- oldProject, err3 := db.GetProjectDetail(ctx, conv.MustInt64(newProject.ProjectID))
|
|
|
+ fmt.Println("Update RecruitDdl:", newProject.RecruitDdl, RecruitDdl)
|
|
|
+ oldProject, err3 := db.GetProjectDetail(ctx, newProject.ProjectID)
|
|
|
if err3 != nil {
|
|
|
return nil, err3
|
|
|
}
|
|
@@ -196,7 +209,7 @@ func (*project) Update(ctx context.Context, newProject http_model.UpdateProjectR
|
|
|
}
|
|
|
feeFroms := strings.Join(feeFrom, ",")
|
|
|
project := gorm_model.ProjectInfo{
|
|
|
- ProjectID: conv.MustInt64(newProject.ProjectID),
|
|
|
+ ProjectID: newProject.ProjectID,
|
|
|
RecruitDdl: &RecruitDdl,
|
|
|
TalentType: newProject.TalentType,
|
|
|
ContentType: conv.MustInt64(newProject.ContentType),
|
|
@@ -216,7 +229,7 @@ func (*project) Update(ctx context.Context, newProject http_model.UpdateProjectR
|
|
|
if err != nil {
|
|
|
return nil, err
|
|
|
}
|
|
|
- fmt.Printf("照片:\t %+v", newProject.ProjectPhotos)
|
|
|
+ //fmt.Printf("照片:\t %+v", newProject.ProjectPhotos)
|
|
|
if len(newProject.ProjectPhotos) != 0 {
|
|
|
// 新增图片
|
|
|
projectPhotos := []gorm_model.ProjectPhoto{}
|
|
@@ -238,8 +251,8 @@ func (*project) Update(ctx context.Context, newProject http_model.UpdateProjectR
|
|
|
if err != nil {
|
|
|
return nil, err
|
|
|
}
|
|
|
- //fmt.Printf("策略:\t %+v", newProject.RecruitStrategys)
|
|
|
- if newProject.RecruitStrategys != nil {
|
|
|
+ fmt.Printf("策略:\t %+v", newProject.RecruitStrategys)
|
|
|
+ if newProject.RecruitStrategys != nil && newProject.ProjectType == int64(1) {
|
|
|
// 新增策略
|
|
|
RecruitStrategys := []gorm_model.RecruitStrategy{}
|
|
|
for _, Strategy := range newProject.RecruitStrategys {
|
|
@@ -264,7 +277,7 @@ func (*project) Update(ctx context.Context, newProject http_model.UpdateProjectR
|
|
|
TOffer: Strategy.TOffer,
|
|
|
ProjectID: project.ProjectID,
|
|
|
}
|
|
|
- fmt.Printf("Offer:\t %+v", Strategy.Offer)
|
|
|
+ //fmt.Printf("Offer:\t %+v", Strategy.Offer)
|
|
|
RecruitStrategys = append(RecruitStrategys, RecruitStrategy)
|
|
|
}
|
|
|
err = db.CreateRecruitStrategy(ctx, RecruitStrategys)
|
|
@@ -278,7 +291,7 @@ func (*project) Update(ctx context.Context, newProject http_model.UpdateProjectR
|
|
|
return res, nil
|
|
|
}
|
|
|
|
|
|
-func (*project) Delete(ctx context.Context, projectID int64) (*http_model.DeleteProjectData, error) {
|
|
|
+func (*project) Delete(ctx context.Context, projectID string) (*http_model.DeleteProjectData, error) {
|
|
|
// 删除该项目之前的所有图片
|
|
|
err := db.DeleteProjectPhotoByProjecttID(ctx, projectID)
|
|
|
if err != nil {
|
|
@@ -300,7 +313,7 @@ func (*project) Delete(ctx context.Context, projectID int64) (*http_model.Delete
|
|
|
return res, nil
|
|
|
}
|
|
|
|
|
|
-func (*project) GetFullProjectList(ctx context.Context, enterpriseID int64, pageSize, pageNum int32, condition *common_model.ProjectCondition) (*http_model.FullProjectListData, error) {
|
|
|
+func (*project) GetFullProjectList(ctx context.Context, enterpriseID string, pageSize, pageNum int32, condition *common_model.ProjectCondition) (*http_model.FullProjectListData, error) {
|
|
|
|
|
|
fullProjects, total, err := db.GetFullProjectList(ctx, enterpriseID, pageSize, pageNum, condition)
|
|
|
if err != nil {
|
|
@@ -313,7 +326,7 @@ func (*project) GetFullProjectList(ctx context.Context, enterpriseID int64, page
|
|
|
return fullProjectListData, nil
|
|
|
}
|
|
|
|
|
|
-func (*project) GetProjectDraftList(ctx context.Context, enterpriseID int64, pageSize, pageNum int32, condition *common_model.ProjectCondition) (*http_model.ProjectDraftListData, error) {
|
|
|
+func (*project) GetProjectDraftList(ctx context.Context, enterpriseID string, pageSize, pageNum int32, condition *common_model.ProjectCondition) (*http_model.ProjectDraftListData, error) {
|
|
|
|
|
|
ProjectDrafts, total, err := db.GetProjectDraftList(ctx, enterpriseID, pageSize, pageNum, condition)
|
|
|
if err != nil {
|
|
@@ -338,7 +351,7 @@ func (*project) GetProjectTaskList(ctx context.Context, projectID string, pageSi
|
|
|
return projectTaskListData, nil
|
|
|
}
|
|
|
|
|
|
-func (*project) GetPorjectDetail(ctx context.Context, projectID int64) (*http_model.ShowProjectData, error) {
|
|
|
+func (*project) GetPorjectDetail(ctx context.Context, projectID string) (*http_model.ShowProjectData, error) {
|
|
|
project, err := db.GetProjectDetail(ctx, projectID)
|
|
|
if err != nil {
|
|
|
logrus.WithContext(ctx).Errorf("[project service] call GetPorjectDetail error,err:%+v", err)
|
|
@@ -380,7 +393,7 @@ func (*project) GetPorjectDetail(ctx context.Context, projectID int64) (*http_mo
|
|
|
ProductPhotoInfo: conv.MustString(project.ProductPhotoSnap),
|
|
|
}
|
|
|
Strategys, err := db.GetRecruitStrategys(ctx, projectID)
|
|
|
- fmt.Println("招募策略:", Strategys)
|
|
|
+ //fmt.Println("招募策略:", Strategys)
|
|
|
if err != nil {
|
|
|
logrus.WithContext(ctx).Error()
|
|
|
return nil, err
|