| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586 | package sheepimport (	"context"	"net/http"	"tmr-watch/module"	operationPb "gitee.com/xuyiping_admin/go_proto/proto/go/backend/operation"	"gitee.com/xuyiping_admin/pkg/xerr")func UpdateOrCreateTmrGear(ctx context.Context, req *operationPb.UpdateOrCreateTmrGearRequest) error {	if len(req.Params) <= 0 {		return xerr.Customf("参数错误: params")	}	if len(req.TmrId) <= 0 {		return xerr.Customf("参数错误: tmr_id")	}	// revList := make(map[int32]struct{})	// for _, v := range req.Params {	// 	if _, ok := revList[v.Rev]; ok {	// 		return xerr.Customf("不能出现同样转速的数据")	// 	}	// 	revList[v.Rev] = struct{}{}	// }	if err := module.CreateOrUpdateTmrGear(ctx, req); err != nil {		return xerr.WithStack(err)	}	return nil}func UseGear(ctx context.Context, req *operationPb.UseGearRequest) (*operationPb.UseGearResponse, error) {	list, err := module.UseTmrGear(ctx, req)	if err != nil {		return nil, xerr.WithStack(err)	}	tmrGearList, err := module.TmrGearListByTmrId(int64(req.TmrId))	if err != nil {		return nil, xerr.WithStack(err)	}	gear := "0"	useGearDataList := make([]*operationPb.UseGearDataList, 0)	for _, v := range list {		if len(tmrGearList) > 0 {			// for i := 0; i < len(tmrGearList)-1; i++ {			// 	if v.GearRate > float64(tmrGearList[i].Rev) && v.GearRate <= float64(tmrGearList[i+1].Rev) {			// 		gear = tmrGearList[i+1].Gear			// 	}			// }			// if v.GearRate <= float64(tmrGearList[0].Rev) {			// 	gear = tmrGearList[0].Gear			// }			// if v.GearRate >= float64(tmrGearList[len(tmrGearList)-1].Rev) {			// 	gear = tmrGearList[len(tmrGearList)-1].Gear			// }			gear = v.Gear		}		newData := &operationPb.UseGearDataList{			Bcode:    v.BCode,			Fname:    v.FName,			Length:   v.Length,			Sort:     v.Sort,			Speed:    float32(v.Speed),			Useinbar: v.UseInBar,			Weight:   float32(v.Weight),			Gear:     gear,			Ccount:   v.CCount,			GearRate: float32(v.GearRate),			Pid:      v.Pid,			Fbarid:   v.FBarid,		}		useGearDataList = append(useGearDataList, newData)	}	return &operationPb.UseGearResponse{		Code: http.StatusOK,		Msg:  "ok",		Data: &operationPb.UseGearData{List: useGearDataList},	}, nil}
 |