Parcourir la source

添加违约数

yuliang1112 il y a 2 ans
Parent
commit
5fd8b2418a
4 fichiers modifiés avec 22 ajouts et 6 suppressions
  1. 2 2
      db/number_info.go
  2. 1 0
      model/http_model/get_finish_data.go
  3. 4 3
      pack/get_finish_data.go
  4. 15 1
      service/finish.go

+ 2 - 2
db/number_info.go

@@ -129,12 +129,12 @@ func GetDataNumberInfo(ctx context.Context, projectId string, strategyIds []int6
 			return nil, err
 		}
 		db = GetReadDB(ctx).Model(gorm_model.YoungeeTaskInfo{}).Where("project_id = ? and strategy_id = ? and task_status = 2", projectId, strategyId)
-		err = db.Where("task_stage > 14").Count(&DataNumberInfoData.DataPassedNumber).Error
+		err = db.Where("task_stage = 15").Count(&DataNumberInfoData.DataPassedNumber).Error
 		if err != nil {
 			logrus.WithContext(ctx).Errorf("[GetProjectTaskList] error query mysql total, err:%+v", err)
 			return nil, err
 		}
-		db = GetReadDB(ctx).Model(gorm_model.YoungeeTaskInfo{}).Where("project_id = ? and strategy_id = ? and task_status = 2", projectId, strategyId)
+		db = GetReadDB(ctx).Model(gorm_model.YoungeeTaskInfo{}).Where("project_id = ? and strategy_id = ? and task_status = 2 and task_stage < 15", projectId, strategyId)
 		err = db.Count(&DataNumberInfoData.DataNumber).Error
 		if err != nil {
 			logrus.WithContext(ctx).Errorf("[GetProjectTaskList] error query mysql total, err:%+v", err)

+ 1 - 0
model/http_model/get_finish_data.go

@@ -25,6 +25,7 @@ type GetFinishDataInfo struct {
 	CollectNumber   string `json:"collect_number"`   // 总收藏量
 	CommentNumber   string `json:"comment_number"`   // 总评论数
 	FinishNumber    string `json:"finish_number"`    // 结案数量
+	DefaultNumber   string  `json:"default_number"`   // 违约数量
 	TotalOffer      float64 `json:"total_offer"`      // 支付合计
 }
 

+ 4 - 3
pack/get_finish_data.go

@@ -7,16 +7,16 @@ import (
 	"github.com/issue9/conv"
 )
 
-func MGormRecruitStrategyListToHttpGetFinishDataInfoList(gormRecruitStrategys []*gorm_model.RecruitStrategy) []*http_model.GetFinishDataInfo {
+func MGormRecruitStrategyListToHttpGetFinishDataInfoList(gormRecruitStrategys []*gorm_model.RecruitStrategy,defaultMap map[int64]int64) []*http_model.GetFinishDataInfo {
 	var httpGetFinishDataInfos []*http_model.GetFinishDataInfo
 	for _, gormRecruitStrategy := range gormRecruitStrategys {
-		httpGetFinishDataInfo := MGormRecruitStrategyToHttpGetFinishDataInfo(gormRecruitStrategy)
+		httpGetFinishDataInfo := MGormRecruitStrategyToHttpGetFinishDataInfo(gormRecruitStrategy,defaultMap)
 		httpGetFinishDataInfos = append(httpGetFinishDataInfos, httpGetFinishDataInfo)
 	}
 	return httpGetFinishDataInfos
 }
 
-func MGormRecruitStrategyToHttpGetFinishDataInfo(RecruitStrategy *gorm_model.RecruitStrategy) *http_model.GetFinishDataInfo {
+func MGormRecruitStrategyToHttpGetFinishDataInfo(RecruitStrategy *gorm_model.RecruitStrategy,defaultMap map[int64]int64) *http_model.GetFinishDataInfo {
 	return &http_model.GetFinishDataInfo{
 		FeeForm:         conv.MustString(RecruitStrategy.FeeForm),
 		StrategyID:      conv.MustString(RecruitStrategy.StrategyID),
@@ -38,6 +38,7 @@ func MGormRecruitStrategyToHttpGetFinishDataInfo(RecruitStrategy *gorm_model.Rec
 		CollectNumber:   conv.MustString(RecruitStrategy.CollectNumber),
 		CommentNumber:   conv.MustString(RecruitStrategy.CommentNumber),
 		FinishNumber:    conv.MustString(RecruitStrategy.FinishNumber),
+		DefaultNumber:   conv.MustString(defaultMap[RecruitStrategy.StrategyID], ""),
 		TotalOffer:      RecruitStrategy.TotalOffer,
 	}
 }

+ 15 - 1
service/finish.go

@@ -3,6 +3,7 @@ package service
 import (
 	"context"
 	"youngee_b_api/db"
+	"youngee_b_api/model/gorm_model"
 	"youngee_b_api/model/http_model"
 	"youngee_b_api/pack"
 
@@ -22,7 +23,20 @@ func (*finish) GetFinishData(ctx context.Context, request http_model.GetFinishDa
 		return nil, err
 	}
 
+	defaultMap := map[int64]int64{}
+	for _, recruitStrategy := range finishRecruitStrategyList {
+		var TerminateNumber int64
+		tx := db.GetReadDB(ctx).Debug().Model(gorm_model.YoungeeTaskInfo{}).
+			Where("project_id = ? and strategy_id = ? and task_status = 2", recruitStrategy.ProjectID, int(recruitStrategy.StrategyID))
+		err = tx.Where("complete_status = 4").Count(&TerminateNumber).Error
+		if err != nil {
+			logrus.WithContext(ctx).Errorf("[Finish service] error query mysql total, err:%+v", err)
+			return nil, err
+		}
+		defaultMap[recruitStrategy.StrategyID] = TerminateNumber
+	}
+
 	res := new(http_model.GetFinishData)
-	res.FinishRecruitStrategy = pack.MGormRecruitStrategyListToHttpGetFinishDataInfoList(finishRecruitStrategyList)
+	res.FinishRecruitStrategy = pack.MGormRecruitStrategyListToHttpGetFinishDataInfoList(finishRecruitStrategyList,defaultMap)
 	return res, nil
 }