1、触发时间修改
2、用户增加父级邀请人
This commit is contained in:
		| @ -1,9 +1,10 @@ | ||||
| package models | ||||
|  | ||||
| import ( | ||||
| 	"github.com/shopspring/decimal" | ||||
| 	"time" | ||||
|  | ||||
| 	"github.com/shopspring/decimal" | ||||
|  | ||||
| 	"go-admin/common/models" | ||||
| ) | ||||
|  | ||||
| @ -11,7 +12,8 @@ type LineUser struct { | ||||
| 	models.Model | ||||
|  | ||||
| 	GroupId        int             `json:"groupId" gorm:"type:int unsigned;comment:组别ID"` | ||||
| 	Pid            int             `json:"pid" gorm:"type:int unsigned;comment:推荐人ID"` | ||||
| 	Pid            int             `json:"pid" gorm:"type:int unsigned;comment:直接推荐人ID"` | ||||
| 	TopReferrerId  int             `json:"topReferrerId" gorm:"type:int unsigned;comment:父级推荐人ID"` | ||||
| 	Username       string          `json:"username" gorm:"type:varchar(32);comment:用户名"` | ||||
| 	Nickname       string          `json:"nickname" gorm:"type:varchar(50);comment:昵称"` | ||||
| 	Password       string          `json:"password" gorm:"type:varchar(32);comment:密码"` | ||||
|  | ||||
| @ -16,6 +16,7 @@ import ( | ||||
| 	"go-admin/pkg/emailhelper" | ||||
| 	"time" | ||||
|  | ||||
| 	"github.com/go-admin-team/go-admin-core/logger" | ||||
| 	log "github.com/go-admin-team/go-admin-core/logger" | ||||
| 	"go.uber.org/zap" | ||||
| 	"gorm.io/gorm" | ||||
| @ -81,17 +82,23 @@ func UserRegister(orm *gorm.DB, registerInfo sysmodel.FrontedUserRegisterReq) (i | ||||
| 	//if code := CheckPhoneOrEmailCaptcha(orm, cc); code != statuscode.OK { | ||||
| 	//	return "", "", statuscode.CaptchaInvalid | ||||
| 	//} | ||||
| 	parentRegister := models.LineUser{} | ||||
| 	if err := orm.Model(&parentRegister).Where("id =?", registerInfo.Pid).Find(&parentRegister).Error; err != nil { | ||||
| 		logger.Error("获取推荐人失败", err) | ||||
| 	} | ||||
|  | ||||
| 	user := models.LineUser{ | ||||
| 		Pid:        registerInfo.Pid, | ||||
| 		Password:   registerInfo.Password, | ||||
| 		Salt:       inttostring.GenerateRandomString(6), | ||||
| 		Email:      registerInfo.Email, | ||||
| 		InviteCode: inttostring.NewInvite().Encode(int(time.Now().Unix())), | ||||
| 		Loginip:    registerInfo.IP, | ||||
| 		Mobile:     registerInfo.Phone, | ||||
| 		Area:       registerInfo.PhoneAreaCode, | ||||
| 		Status:     "verify", | ||||
| 		LoginTime:  time.Now(), | ||||
| 		Pid:           registerInfo.Pid, | ||||
| 		TopReferrerId: parentRegister.Pid, | ||||
| 		Password:      registerInfo.Password, | ||||
| 		Salt:          inttostring.GenerateRandomString(6), | ||||
| 		Email:         registerInfo.Email, | ||||
| 		InviteCode:    inttostring.NewInvite().Encode(int(time.Now().Unix())), | ||||
| 		Loginip:       registerInfo.IP, | ||||
| 		Mobile:        registerInfo.Phone, | ||||
| 		Area:          registerInfo.PhoneAreaCode, | ||||
| 		Status:        "verify", | ||||
| 		LoginTime:     time.Now(), | ||||
| 		ModelTime: cModels.ModelTime{ | ||||
| 			CreatedAt: time.Now(), | ||||
| 			UpdatedAt: time.Now(), | ||||
|  | ||||
| @ -137,7 +137,11 @@ func futTriggerOrder(db *gorm.DB, v *dto.PreOrderRedisList, item string, futApi | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		if err := db.Model(&DbModels.LinePreOrder{}).Where("id =? AND status ='0'", preOrder.Id).Updates(map[string]interface{}{"status": "1", "trigger_time": time.Now()}).Error; err != nil { | ||||
| 		if err := db.Model(&DbModels.LinePreOrder{}).Where("id =? ", preOrder.Id).Updates(map[string]interface{}{"trigger_time": time.Now()}).Error; err != nil { | ||||
| 			log.Error("更新预下单状态失败 ordersn:", preOrder.OrderSn, " status:1") | ||||
| 		} | ||||
|  | ||||
| 		if err := db.Model(&DbModels.LinePreOrder{}).Where("id =? AND status ='0'", preOrder.Id).Updates(map[string]interface{}{"status": "1"}).Error; err != nil { | ||||
| 			log.Error("更新预下单状态失败 ordersn:", v.OrderSn, " status:1") | ||||
| 		} | ||||
|  | ||||
| @ -261,8 +265,12 @@ func FuturesReduceTrigger(db *gorm.DB, reduceOrder ReduceListItem, futApi FutRes | ||||
| 				log.Errorf("合约减仓更新状态失败 id:%s err:%v", reduceOrder.Id, err2) | ||||
| 			} | ||||
| 		} else { | ||||
| 			if err := db.Model(&DbModels.LinePreOrder{}).Where("id =? ", reduceOrder.Id).Updates(map[string]interface{}{"trigger_time": time.Now()}).Error; err != nil { | ||||
| 				log.Error("更新减仓单状态失败 ordersn:", reduceOrder.OrderSn, " status:1") | ||||
| 			} | ||||
|  | ||||
| 			if err := db.Model(&DbModels.LinePreOrder{}). | ||||
| 				Where("id = ? AND status =0", reduceOrder.Id).Updates(map[string]interface{}{"status": 1, "trigger_time": time.Now()}).Error; err != nil { | ||||
| 				Where("id = ? AND status =0", reduceOrder.Id).Updates(map[string]interface{}{"status": 1}).Error; err != nil { | ||||
| 				log.Errorf("合约减仓更新状态失败 id:%s err:%v", reduceOrder.Id, err) | ||||
| 			} | ||||
| 		} | ||||
| @ -389,7 +397,11 @@ func FutAddPositionTrigger(db *gorm.DB, v *AddPositionList, item string, futApi | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		if err := db.Model(&DbModels.LinePreOrder{}).Where("id =? AND status ='0'", preOrder.Id).Updates(map[string]interface{}{"status": "1", "trigger_time": time.Now()}).Error; err != nil { | ||||
| 		if err := db.Model(&DbModels.LinePreOrder{}).Where("id =? ", preOrder.Id).Updates(map[string]interface{}{"trigger_time": time.Now()}).Error; err != nil { | ||||
| 			log.Error("更新预下单状态失败 ordersn:", v.OrderSn, " status:1") | ||||
| 		} | ||||
|  | ||||
| 		if err := db.Model(&DbModels.LinePreOrder{}).Where("id =? AND status ='0'", preOrder.Id).Updates(map[string]interface{}{"status": "1"}).Error; err != nil { | ||||
| 			log.Error("更新预下单状态失败 ordersn:", v.OrderSn, " status:1") | ||||
| 		} | ||||
| 		return | ||||
|  | ||||
| @ -510,8 +510,12 @@ func processFutTakeProfitOrder(db *gorm.DB, futApi FutRestApi, order models.Line | ||||
| 			logger.Error("合约止盈下单失败,更新状态失败:", order.OrderSn, " err:", err) | ||||
| 		} | ||||
| 	} else { | ||||
| 		if err := db.Model(&DbModels.LinePreOrder{}).Where("id =? ", order.Id).Updates(map[string]interface{}{"trigger_time": time.Now()}).Error; err != nil { | ||||
| 			logger.Error("更新合约止盈单触发事件 ordersn:", order.OrderSn) | ||||
| 		} | ||||
|  | ||||
| 		if err := db.Model(&DbModels.LinePreOrder{}).Where("id = ? and status =0", order.Id). | ||||
| 			Updates(map[string]interface{}{"status": "1", "num": num.String(), "trigger_time": time.Now()}).Error; err != nil { | ||||
| 			Updates(map[string]interface{}{"status": "1", "num": num.String()}).Error; err != nil { | ||||
| 			logger.Error("合约止盈下单成功,更新状态失败:", order.OrderSn, " err:", err) | ||||
| 		} | ||||
| 	} | ||||
| @ -540,8 +544,12 @@ func processFutStopLossOrder(db *gorm.DB, order models.LinePreOrder, price, num | ||||
| 			logger.Error("合约止损下单失败,更新状态失败:", order.OrderSn, " err:", err2) | ||||
| 		} | ||||
| 	} else { | ||||
| 		if err := db.Model(&DbModels.LinePreOrder{}).Where("id =? ", order.Id).Updates(map[string]interface{}{"trigger_time": time.Now()}).Error; err != nil { | ||||
| 			logger.Error("更新合约止损单触发事件 ordersn:", order.OrderSn) | ||||
| 		} | ||||
|  | ||||
| 		if err := db.Model(&order).Where("status =0"). | ||||
| 			Updates(map[string]interface{}{"status": "1", "trigger_time": time.Now()}).Error; err != nil { | ||||
| 			Updates(map[string]interface{}{"status": "1"}).Error; err != nil { | ||||
| 			logger.Error("合约止损下单成功,更新状态失败:", order.OrderSn, " err:", err) | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
| @ -127,7 +127,7 @@ func SpotOrderLock(db *gorm.DB, v *dto.PreOrderRedisList, item string, spotApi S | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| 		if err := db.Model(&DbModels.LinePreOrder{}).Where("id =? AND status ='0'", preOrder.Id).Updates(map[string]interface{}{"status": "1", "trigger_time": time.Now()}).Error; err != nil { | ||||
| 		if err := db.Model(&DbModels.LinePreOrder{}).Where("id =? ", preOrder.Id).Updates(map[string]interface{}{"trigger_time": time.Now()}).Error; err != nil { | ||||
| 			log.Error("更新预下单状态失败 ordersn:", v.OrderSn, " status:1") | ||||
| 		} | ||||
| 		return | ||||
| @ -245,7 +245,7 @@ func SpotStopLossTrigger(db *gorm.DB, stopOrder dto.StopLossRedisList, spotApi S | ||||
| 		if err := spotApi.OrderPlaceLoop(db, params, 3); err != nil { | ||||
| 			log.Errorf("现货止损挂单失败 id:%s err:%v", stopOrder.Id, err) | ||||
| 		} else { | ||||
| 			if err := db.Model(&DbModels.LinePreOrder{}).Where("id = ? AND status =0", stopOrder.Id).Updates(map[string]interface{}{"status": 1, "trigger_time": time.Now()}).Error; err != nil { | ||||
| 			if err := db.Model(&DbModels.LinePreOrder{}).Where("id = ? ", stopOrder.Id).Updates(map[string]interface{}{"trigger_time": time.Now()}).Error; err != nil { | ||||
| 				log.Errorf("现货止损更新状态失败 id:%s err:%v", stopOrder.Id, err) | ||||
| 			} | ||||
| 		} | ||||
| @ -362,9 +362,13 @@ func SpotReduceTrigger(db *gorm.DB, reduceOrder ReduceListItem, spotApi SpotRest | ||||
| 				log.Errorf("修改现货减仓状态失败 id:%s err:%v", reduceOrder.Id, err2) | ||||
| 			} | ||||
| 		} else { | ||||
| 			if err := db.Model(&DbModels.LinePreOrder{}).Where("id =?", reduceOrder.Id).Updates(map[string]interface{}{"trigger_time": time.Now()}).Error; err != nil { | ||||
| 				log.Error("更新预下单触发事件失败 ordersn:", reduceOrder.OrderSn) | ||||
| 			} | ||||
|  | ||||
| 			if err := db.Model(&DbModels.LinePreOrder{}). | ||||
| 				Where("id =? AND status =0", reduceOrder.Id). | ||||
| 				Updates(map[string]interface{}{"status": 1, "trigger_time": time.Now()}).Error; err != nil { | ||||
| 				Updates(map[string]interface{}{"status": 1}).Error; err != nil { | ||||
| 				log.Errorf("修改现货减仓状态失败 id:%s err:%v", reduceOrder.Id, err) | ||||
| 			} | ||||
| 		} | ||||
|  | ||||
| @ -686,8 +686,11 @@ func processTakeProfitOrder(db *gorm.DB, spotApi SpotRestApi, order models.LineP | ||||
| 			logger.Error("现货止盈下单失败,更新状态失败:", order.OrderSn, " err:", err) | ||||
| 		} | ||||
| 	} else { | ||||
| 		if err := db.Model(&DbModels.LinePreOrder{}).Where("id =? ", order.Id).Updates(map[string]interface{}{"trigger_time": time.Now()}).Error; err != nil { | ||||
| 			logger.Error("更新现货止盈单触发事件 ordersn:", order.OrderSn) | ||||
| 		} | ||||
| 		if err := db.Model(&DbModels.LinePreOrder{}).Where("id = ? and status ='0'", order.Id). | ||||
| 			Updates(map[string]interface{}{"status": "1", "num": order.Num, "trigger_time": time.Now()}).Error; err != nil { | ||||
| 			Updates(map[string]interface{}{"status": "1", "num": order.Num}).Error; err != nil { | ||||
| 			logger.Error("现货止盈下单成功,更新状态失败:", order.OrderSn, " err:", err) | ||||
| 		} | ||||
| 	} | ||||
|  | ||||
		Reference in New Issue
	
	Block a user