admin apis

This commit is contained in:
2026-10-07 09:50:59 +08:00
parent 2829d8aec4
commit 7cf9f15089
12 changed files with 275 additions and 104 deletions
+1
View File
@@ -12,6 +12,7 @@ deploy/rnacos/data
deploy/*.yml
runner-build
runner.conf
Dockerfile.dev
*/tmp
Binary file not shown.
-7
View File
@@ -211,13 +211,6 @@ service Equipment {
};
};
rpc SetExpiry(SetExpiryRequest) returns(Response){
option (google.api.http) = {
post: "/admin/v3/set/expiry"
body: "*"
};
};
rpc UserBind(UserBindRequest) returns(Response){
option (google.api.http) = {
get: "/admin/v3/user/bind"
+162 -47
View File
@@ -1394,6 +1394,110 @@ func (x *BindExpiryRequest) GetReason() string {
return ""
}
type SetExpiryRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
Expiry string `protobuf:"bytes,2,opt,name=expiry,proto3" json:"expiry,omitempty"`
Reason string `protobuf:"bytes,3,opt,name=reason,proto3" json:"reason,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *SetExpiryRequest) Reset() {
*x = SetExpiryRequest{}
mi := &file_equipment_equipment_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *SetExpiryRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SetExpiryRequest) ProtoMessage() {}
func (x *SetExpiryRequest) ProtoReflect() protoreflect.Message {
mi := &file_equipment_equipment_proto_msgTypes[19]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SetExpiryRequest.ProtoReflect.Descriptor instead.
func (*SetExpiryRequest) Descriptor() ([]byte, []int) {
return file_equipment_equipment_proto_rawDescGZIP(), []int{19}
}
func (x *SetExpiryRequest) GetId() int64 {
if x != nil {
return x.Id
}
return 0
}
func (x *SetExpiryRequest) GetExpiry() string {
if x != nil {
return x.Expiry
}
return ""
}
func (x *SetExpiryRequest) GetReason() string {
if x != nil {
return x.Reason
}
return ""
}
type UserBindRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Id int64 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
unknownFields protoimpl.UnknownFields
sizeCache protoimpl.SizeCache
}
func (x *UserBindRequest) Reset() {
*x = UserBindRequest{}
mi := &file_equipment_equipment_proto_msgTypes[20]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
func (x *UserBindRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*UserBindRequest) ProtoMessage() {}
func (x *UserBindRequest) ProtoReflect() protoreflect.Message {
mi := &file_equipment_equipment_proto_msgTypes[20]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use UserBindRequest.ProtoReflect.Descriptor instead.
func (*UserBindRequest) Descriptor() ([]byte, []int) {
return file_equipment_equipment_proto_rawDescGZIP(), []int{20}
}
func (x *UserBindRequest) GetId() int64 {
if x != nil {
return x.Id
}
return 0
}
type ApiVersionRequest struct {
state protoimpl.MessageState `protogen:"open.v1"`
Type int32 `protobuf:"varint,1,opt,name=type,proto3" json:"type,omitempty"`
@@ -1404,7 +1508,7 @@ type ApiVersionRequest struct {
func (x *ApiVersionRequest) Reset() {
*x = ApiVersionRequest{}
mi := &file_equipment_equipment_proto_msgTypes[19]
mi := &file_equipment_equipment_proto_msgTypes[21]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
@@ -1416,7 +1520,7 @@ func (x *ApiVersionRequest) String() string {
func (*ApiVersionRequest) ProtoMessage() {}
func (x *ApiVersionRequest) ProtoReflect() protoreflect.Message {
mi := &file_equipment_equipment_proto_msgTypes[19]
mi := &file_equipment_equipment_proto_msgTypes[21]
if x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
@@ -1429,7 +1533,7 @@ func (x *ApiVersionRequest) ProtoReflect() protoreflect.Message {
// Deprecated: Use ApiVersionRequest.ProtoReflect.Descriptor instead.
func (*ApiVersionRequest) Descriptor() ([]byte, []int) {
return file_equipment_equipment_proto_rawDescGZIP(), []int{19}
return file_equipment_equipment_proto_rawDescGZIP(), []int{21}
}
func (x *ApiVersionRequest) GetType() int32 {
@@ -1565,10 +1669,16 @@ const file_equipment_equipment_proto_rawDesc = "" +
"\x11BindExpiryRequest\x12\x0e\n" +
"\x02id\x18\x01 \x01(\x03R\x02id\x12\x16\n" +
"\x06expiry\x18\x02 \x01(\tR\x06expiry\x12\x16\n" +
"\x06reason\x18\x03 \x01(\tR\x06reason\"A\n" +
"\x06reason\x18\x03 \x01(\tR\x06reason\"R\n" +
"\x10SetExpiryRequest\x12\x0e\n" +
"\x02id\x18\x01 \x01(\x03R\x02id\x12\x16\n" +
"\x06expiry\x18\x02 \x01(\tR\x06expiry\x12\x16\n" +
"\x06reason\x18\x03 \x01(\tR\x06reason\"!\n" +
"\x0fUserBindRequest\x12\x0e\n" +
"\x02id\x18\x01 \x01(\x03R\x02id\"A\n" +
"\x11ApiVersionRequest\x12\x12\n" +
"\x04type\x18\x01 \x01(\x05R\x04type\x12\x18\n" +
"\aversion\x18\x02 \x01(\tR\aversion2\x88\x11\n" +
"\aversion\x18\x02 \x01(\tR\aversion2\xe5\x11\n" +
"\tEquipment\x12Y\n" +
"\x05Items\x12\x17.equipment.ItemsRequest\x1a\x13.equipment.Response\"\"\x82\xd3\xe4\x93\x02\x1c:\x01*\x12\x17/admin/v3/version/items\x12T\n" +
"\x04Info\x12\x14.equipment.IdRequest\x1a\x13.equipment.Response\"!\x82\xd3\xe4\x93\x02\x1b:\x01*\x12\x16/admin/v3/version/info\x12\\\n" +
@@ -1579,7 +1689,8 @@ const file_equipment_equipment_proto_rawDesc = "" +
"\n" +
"BeansItems\x12\x1c.equipment.BeansItemsRequest\x1a\x13.equipment.Response\" \x82\xd3\xe4\x93\x02\x1a:\x01*\"\x15/admin/v3/beans/items\x12c\n" +
"\n" +
"BindExpiry\x12\x1c.equipment.BindExpiryRequest\x1a\x13.equipment.Response\"\"\x82\xd3\xe4\x93\x02\x1c:\x01*\"\x17/admin/v3/device/expiry\x12\\\n" +
"BindExpiry\x12\x1c.equipment.BindExpiryRequest\x1a\x13.equipment.Response\"\"\x82\xd3\xe4\x93\x02\x1c:\x01*\"\x17/admin/v3/device/expiry\x12[\n" +
"\bUserBind\x12\x1a.equipment.UserBindRequest\x1a\x13.equipment.Response\"\x1e\x82\xd3\xe4\x93\x02\x18:\x01*\x12\x13/admin/v3/user/bind\x12\\\n" +
"\n" +
"ApiMaskAdd\x12\x1c.equipment.ApiMaskAddRequest\x1a\x13.equipment.Response\"\x1b\x82\xd3\xe4\x93\x02\x15:\x01*\"\x10/api/v3/mask/add\x12]\n" +
"\fApiBindItems\x12\x17.equipment.EmptyRequest\x1a\x13.equipment.Response\"\x1f\x82\xd3\xe4\x93\x02\x19:\x01*\"\x14/api/v3/device/items\x12_\n" +
@@ -1611,7 +1722,7 @@ func file_equipment_equipment_proto_rawDescGZIP() []byte {
return file_equipment_equipment_proto_rawDescData
}
var file_equipment_equipment_proto_msgTypes = make([]protoimpl.MessageInfo, 20)
var file_equipment_equipment_proto_msgTypes = make([]protoimpl.MessageInfo, 22)
var file_equipment_equipment_proto_goTypes = []any{
(*Response)(nil), // 0: equipment.Response
(*CreateRequest)(nil), // 1: equipment.CreateRequest
@@ -1632,7 +1743,9 @@ var file_equipment_equipment_proto_goTypes = []any{
(*ApiMaskUseRequest)(nil), // 16: equipment.ApiMaskUseRequest
(*ApiMaskUsedItemsRequest)(nil), // 17: equipment.ApiMaskUsedItemsRequest
(*BindExpiryRequest)(nil), // 18: equipment.BindExpiryRequest
(*ApiVersionRequest)(nil), // 19: equipment.ApiVersionRequest
(*SetExpiryRequest)(nil), // 19: equipment.SetExpiryRequest
(*UserBindRequest)(nil), // 20: equipment.UserBindRequest
(*ApiVersionRequest)(nil), // 21: equipment.ApiVersionRequest
}
var file_equipment_equipment_proto_depIdxs = []int32{
3, // 0: equipment.Equipment.Items:input_type -> equipment.ItemsRequest
@@ -1643,44 +1756,46 @@ var file_equipment_equipment_proto_depIdxs = []int32{
6, // 5: equipment.Equipment.MaskItems:input_type -> equipment.MaskItemsRequest
7, // 6: equipment.Equipment.BeansItems:input_type -> equipment.BeansItemsRequest
18, // 7: equipment.Equipment.BindExpiry:input_type -> equipment.BindExpiryRequest
15, // 8: equipment.Equipment.ApiMaskAdd:input_type -> equipment.ApiMaskAddRequest
10, // 9: equipment.Equipment.ApiBindItems:input_type -> equipment.EmptyRequest
9, // 10: equipment.Equipment.ApiUnBind:input_type -> equipment.ApiUnBindRequest
8, // 11: equipment.Equipment.ApiBindAdd:input_type -> equipment.ApiBindAddRequest
11, // 12: equipment.Equipment.ApiBindExpiry:input_type -> equipment.ApiBindExpiryRequest
12, // 13: equipment.Equipment.ApiBindExpiryGet:input_type -> equipment.ApiBindExpiryGetRequest
14, // 14: equipment.Equipment.ApiBeansAdd:input_type -> equipment.ApiBeansAddRequest
10, // 15: equipment.Equipment.ApiBeansLast:input_type -> equipment.EmptyRequest
13, // 16: equipment.Equipment.ApiBeansItems:input_type -> equipment.ApiBeansItemsRequest
16, // 17: equipment.Equipment.ApiMaskUse:input_type -> equipment.ApiMaskUseRequest
17, // 18: equipment.Equipment.ApiMaskUsedItems:input_type -> equipment.ApiMaskUsedItemsRequest
16, // 19: equipment.Equipment.ApiMaskStoreUse:input_type -> equipment.ApiMaskUseRequest
17, // 20: equipment.Equipment.ApiMaskStoreUseItems:input_type -> equipment.ApiMaskUsedItemsRequest
19, // 21: equipment.Equipment.ApiVersion:input_type -> equipment.ApiVersionRequest
0, // 22: equipment.Equipment.Items:output_type -> equipment.Response
0, // 23: equipment.Equipment.Info:output_type -> equipment.Response
0, // 24: equipment.Equipment.Create:output_type -> equipment.Response
0, // 25: equipment.Equipment.Edit:output_type -> equipment.Response
0, // 26: equipment.Equipment.Status:output_type -> equipment.Response
0, // 27: equipment.Equipment.MaskItems:output_type -> equipment.Response
0, // 28: equipment.Equipment.BeansItems:output_type -> equipment.Response
0, // 29: equipment.Equipment.BindExpiry:output_type -> equipment.Response
0, // 30: equipment.Equipment.ApiMaskAdd:output_type -> equipment.Response
0, // 31: equipment.Equipment.ApiBindItems:output_type -> equipment.Response
0, // 32: equipment.Equipment.ApiUnBind:output_type -> equipment.Response
0, // 33: equipment.Equipment.ApiBindAdd:output_type -> equipment.Response
0, // 34: equipment.Equipment.ApiBindExpiry:output_type -> equipment.Response
0, // 35: equipment.Equipment.ApiBindExpiryGet:output_type -> equipment.Response
0, // 36: equipment.Equipment.ApiBeansAdd:output_type -> equipment.Response
0, // 37: equipment.Equipment.ApiBeansLast:output_type -> equipment.Response
0, // 38: equipment.Equipment.ApiBeansItems:output_type -> equipment.Response
0, // 39: equipment.Equipment.ApiMaskUse:output_type -> equipment.Response
0, // 40: equipment.Equipment.ApiMaskUsedItems:output_type -> equipment.Response
0, // 41: equipment.Equipment.ApiMaskStoreUse:output_type -> equipment.Response
0, // 42: equipment.Equipment.ApiMaskStoreUseItems:output_type -> equipment.Response
0, // 43: equipment.Equipment.ApiVersion:output_type -> equipment.Response
22, // [22:44] is the sub-list for method output_type
0, // [0:22] is the sub-list for method input_type
20, // 8: equipment.Equipment.UserBind:input_type -> equipment.UserBindRequest
15, // 9: equipment.Equipment.ApiMaskAdd:input_type -> equipment.ApiMaskAddRequest
10, // 10: equipment.Equipment.ApiBindItems:input_type -> equipment.EmptyRequest
9, // 11: equipment.Equipment.ApiUnBind:input_type -> equipment.ApiUnBindRequest
8, // 12: equipment.Equipment.ApiBindAdd:input_type -> equipment.ApiBindAddRequest
11, // 13: equipment.Equipment.ApiBindExpiry:input_type -> equipment.ApiBindExpiryRequest
12, // 14: equipment.Equipment.ApiBindExpiryGet:input_type -> equipment.ApiBindExpiryGetRequest
14, // 15: equipment.Equipment.ApiBeansAdd:input_type -> equipment.ApiBeansAddRequest
10, // 16: equipment.Equipment.ApiBeansLast:input_type -> equipment.EmptyRequest
13, // 17: equipment.Equipment.ApiBeansItems:input_type -> equipment.ApiBeansItemsRequest
16, // 18: equipment.Equipment.ApiMaskUse:input_type -> equipment.ApiMaskUseRequest
17, // 19: equipment.Equipment.ApiMaskUsedItems:input_type -> equipment.ApiMaskUsedItemsRequest
16, // 20: equipment.Equipment.ApiMaskStoreUse:input_type -> equipment.ApiMaskUseRequest
17, // 21: equipment.Equipment.ApiMaskStoreUseItems:input_type -> equipment.ApiMaskUsedItemsRequest
21, // 22: equipment.Equipment.ApiVersion:input_type -> equipment.ApiVersionRequest
0, // 23: equipment.Equipment.Items:output_type -> equipment.Response
0, // 24: equipment.Equipment.Info:output_type -> equipment.Response
0, // 25: equipment.Equipment.Create:output_type -> equipment.Response
0, // 26: equipment.Equipment.Edit:output_type -> equipment.Response
0, // 27: equipment.Equipment.Status:output_type -> equipment.Response
0, // 28: equipment.Equipment.MaskItems:output_type -> equipment.Response
0, // 29: equipment.Equipment.BeansItems:output_type -> equipment.Response
0, // 30: equipment.Equipment.BindExpiry:output_type -> equipment.Response
0, // 31: equipment.Equipment.UserBind:output_type -> equipment.Response
0, // 32: equipment.Equipment.ApiMaskAdd:output_type -> equipment.Response
0, // 33: equipment.Equipment.ApiBindItems:output_type -> equipment.Response
0, // 34: equipment.Equipment.ApiUnBind:output_type -> equipment.Response
0, // 35: equipment.Equipment.ApiBindAdd:output_type -> equipment.Response
0, // 36: equipment.Equipment.ApiBindExpiry:output_type -> equipment.Response
0, // 37: equipment.Equipment.ApiBindExpiryGet:output_type -> equipment.Response
0, // 38: equipment.Equipment.ApiBeansAdd:output_type -> equipment.Response
0, // 39: equipment.Equipment.ApiBeansLast:output_type -> equipment.Response
0, // 40: equipment.Equipment.ApiBeansItems:output_type -> equipment.Response
0, // 41: equipment.Equipment.ApiMaskUse:output_type -> equipment.Response
0, // 42: equipment.Equipment.ApiMaskUsedItems:output_type -> equipment.Response
0, // 43: equipment.Equipment.ApiMaskStoreUse:output_type -> equipment.Response
0, // 44: equipment.Equipment.ApiMaskStoreUseItems:output_type -> equipment.Response
0, // 45: equipment.Equipment.ApiVersion:output_type -> equipment.Response
23, // [23:46] is the sub-list for method output_type
0, // [0:23] is the sub-list for method input_type
0, // [0:0] is the sub-list for extension type_name
0, // [0:0] is the sub-list for extension extendee
0, // [0:0] is the sub-list for field type_name
@@ -1697,7 +1812,7 @@ func file_equipment_equipment_proto_init() {
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: unsafe.Slice(unsafe.StringData(file_equipment_equipment_proto_rawDesc), len(file_equipment_equipment_proto_rawDesc)),
NumEnums: 0,
NumMessages: 20,
NumMessages: 22,
NumExtensions: 0,
NumServices: 1,
},
+38
View File
@@ -27,6 +27,7 @@ const (
Equipment_MaskItems_FullMethodName = "/equipment.Equipment/MaskItems"
Equipment_BeansItems_FullMethodName = "/equipment.Equipment/BeansItems"
Equipment_BindExpiry_FullMethodName = "/equipment.Equipment/BindExpiry"
Equipment_UserBind_FullMethodName = "/equipment.Equipment/UserBind"
Equipment_ApiMaskAdd_FullMethodName = "/equipment.Equipment/ApiMaskAdd"
Equipment_ApiBindItems_FullMethodName = "/equipment.Equipment/ApiBindItems"
Equipment_ApiUnBind_FullMethodName = "/equipment.Equipment/ApiUnBind"
@@ -55,6 +56,7 @@ type EquipmentClient interface {
MaskItems(ctx context.Context, in *MaskItemsRequest, opts ...grpc.CallOption) (*Response, error)
BeansItems(ctx context.Context, in *BeansItemsRequest, opts ...grpc.CallOption) (*Response, error)
BindExpiry(ctx context.Context, in *BindExpiryRequest, opts ...grpc.CallOption) (*Response, error)
UserBind(ctx context.Context, in *UserBindRequest, opts ...grpc.CallOption) (*Response, error)
// ******************API************************
ApiMaskAdd(ctx context.Context, in *ApiMaskAddRequest, opts ...grpc.CallOption) (*Response, error)
ApiBindItems(ctx context.Context, in *EmptyRequest, opts ...grpc.CallOption) (*Response, error)
@@ -160,6 +162,16 @@ func (c *equipmentClient) BindExpiry(ctx context.Context, in *BindExpiryRequest,
return out, nil
}
func (c *equipmentClient) UserBind(ctx context.Context, in *UserBindRequest, opts ...grpc.CallOption) (*Response, error) {
cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
out := new(Response)
err := c.cc.Invoke(ctx, Equipment_UserBind_FullMethodName, in, out, cOpts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *equipmentClient) ApiMaskAdd(ctx context.Context, in *ApiMaskAddRequest, opts ...grpc.CallOption) (*Response, error) {
cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...)
out := new(Response)
@@ -312,6 +324,7 @@ type EquipmentServer interface {
MaskItems(context.Context, *MaskItemsRequest) (*Response, error)
BeansItems(context.Context, *BeansItemsRequest) (*Response, error)
BindExpiry(context.Context, *BindExpiryRequest) (*Response, error)
UserBind(context.Context, *UserBindRequest) (*Response, error)
// ******************API************************
ApiMaskAdd(context.Context, *ApiMaskAddRequest) (*Response, error)
ApiBindItems(context.Context, *EmptyRequest) (*Response, error)
@@ -361,6 +374,9 @@ func (UnimplementedEquipmentServer) BeansItems(context.Context, *BeansItemsReque
func (UnimplementedEquipmentServer) BindExpiry(context.Context, *BindExpiryRequest) (*Response, error) {
return nil, status.Error(codes.Unimplemented, "method BindExpiry not implemented")
}
func (UnimplementedEquipmentServer) UserBind(context.Context, *UserBindRequest) (*Response, error) {
return nil, status.Error(codes.Unimplemented, "method UserBind not implemented")
}
func (UnimplementedEquipmentServer) ApiMaskAdd(context.Context, *ApiMaskAddRequest) (*Response, error) {
return nil, status.Error(codes.Unimplemented, "method ApiMaskAdd not implemented")
}
@@ -568,6 +584,24 @@ func _Equipment_BindExpiry_Handler(srv interface{}, ctx context.Context, dec fun
return interceptor(ctx, in, info, handler)
}
func _Equipment_UserBind_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(UserBindRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(EquipmentServer).UserBind(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: Equipment_UserBind_FullMethodName,
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(EquipmentServer).UserBind(ctx, req.(*UserBindRequest))
}
return interceptor(ctx, in, info, handler)
}
func _Equipment_ApiMaskAdd_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ApiMaskAddRequest)
if err := dec(in); err != nil {
@@ -859,6 +893,10 @@ var Equipment_ServiceDesc = grpc.ServiceDesc{
MethodName: "BindExpiry",
Handler: _Equipment_BindExpiry_Handler,
},
{
MethodName: "UserBind",
Handler: _Equipment_UserBind_Handler,
},
{
MethodName: "ApiMaskAdd",
Handler: _Equipment_ApiMaskAdd_Handler,
@@ -33,7 +33,9 @@ type (
ItemsRequest = equipment.ItemsRequest
MaskItemsRequest = equipment.MaskItemsRequest
Response = equipment.Response
SetExpiryRequest = equipment.SetExpiryRequest
StatusRequest = equipment.StatusRequest
UserBindRequest = equipment.UserBindRequest
Equipment interface {
Items(ctx context.Context, in *ItemsRequest, opts ...grpc.CallOption) (*Response, error)
@@ -44,6 +46,7 @@ type (
MaskItems(ctx context.Context, in *MaskItemsRequest, opts ...grpc.CallOption) (*Response, error)
BeansItems(ctx context.Context, in *BeansItemsRequest, opts ...grpc.CallOption) (*Response, error)
BindExpiry(ctx context.Context, in *BindExpiryRequest, opts ...grpc.CallOption) (*Response, error)
UserBind(ctx context.Context, in *UserBindRequest, opts ...grpc.CallOption) (*Response, error)
// API
ApiMaskAdd(ctx context.Context, in *ApiMaskAddRequest, opts ...grpc.CallOption) (*Response, error)
ApiBindItems(ctx context.Context, in *EmptyRequest, opts ...grpc.CallOption) (*Response, error)
@@ -112,6 +115,11 @@ func (m *defaultEquipment) BindExpiry(ctx context.Context, in *BindExpiryRequest
return client.BindExpiry(ctx, in, opts...)
}
func (m *defaultEquipment) UserBind(ctx context.Context, in *UserBindRequest, opts ...grpc.CallOption) (*Response, error) {
client := equipment.NewEquipmentClient(m.cli.Conn())
return client.UserBind(ctx, in, opts...)
}
// API
func (m *defaultEquipment) ApiMaskAdd(ctx context.Context, in *ApiMaskAddRequest, opts ...grpc.CallOption) (*Response, error) {
client := equipment.NewEquipmentClient(m.cli.Conn())
@@ -0,0 +1,56 @@
package logic
import (
"context"
"lone-services/pkg/modelbase"
"lone-services/pkg/utils"
"lone-services/pkg/validate"
"lone-services/services/equipment/internal/dao"
"lone-services/services/equipment/internal/model"
"strconv"
"lone-services/rpc/equipment/pb"
"lone-services/services/equipment/internal/svc"
"github.com/zeromicro/go-zero/core/logx"
)
type UserBindLogic struct {
ctx context.Context
svcCtx *svc.ServiceContext
logx.Logger
BaseLogic
}
func NewUserBindLogic(ctx context.Context, svcCtx *svc.ServiceContext) *UserBindLogic {
return &UserBindLogic{
ctx: ctx,
svcCtx: svcCtx,
Logger: logx.WithContext(ctx),
}
}
func (l *UserBindLogic) UserBind(in *equipment.UserBindRequest) (*equipment.Response, error) {
var v validate.InfoValidator
if fail := l.checkParams(in, &v); fail != nil {
return fail, nil
}
adminInfo := utils.GetUserFromCtx(l.ctx)
if adminInfo.ID < utils.NumberOne {
return l.fail(utils.ErrorNoLoginInfo)
}
w := modelbase.Params{
Eq: map[string]string{
"id": strconv.FormatInt(in.Id, utils.NumberTen),
},
}
var items []dao.BindInfo
err := model.BindModel{}.Init().Items(w, &items)
if err != nil {
l.Logger.Error(err)
return l.fail(utils.Fail)
}
return l.ok(items)
}
@@ -63,6 +63,11 @@ func (s *EquipmentServer) BindExpiry(ctx context.Context, in *equipment.BindExpi
return l.BindExpiry(in)
}
func (s *EquipmentServer) UserBind(ctx context.Context, in *equipment.UserBindRequest) (*equipment.Response, error) {
l := logic.NewUserBindLogic(ctx, s.svcCtx)
return l.UserBind(in)
}
// API
func (s *EquipmentServer) ApiMaskAdd(ctx context.Context, in *equipment.ApiMaskAddRequest) (*equipment.Response, error) {
l := logic.NewApiMaskAddLogic(ctx, s.svcCtx)
+3
View File
@@ -0,0 +1,3 @@
etc/percutaneous.yaml
run.toml
tmp
@@ -52,8 +52,8 @@ func (l *AddUserLogic) AddUser(in *percutaneous.AddUserRequest) (*percutaneous.R
}
if info.Id < utils.NumberOne {
info.HostCode = in.HostCode
info.HostUserId = adminInfo.ID
info.UserId = in.UserId
info.HostUserId = in.UserId
info.UserId = adminInfo.ID
err = model.GroupModel{}.Init().Create(&info)
if err != nil {
l.Logger.Error(err)
-48
View File
@@ -1,48 +0,0 @@
[base]
port = 8060
name = "percutaneous-service"
listenOn = "0.0.0.0:11600"
mode = "dev"
[log]
path = "logs"
serviceName = "percutaneous-service"
mode = "file"
encoding = "plain"
level = "info"
keepDays = 7
maxSize = 50
maxBackups = 5
compress = false
# 测试的地址
[mysql]
host = '39.106.171.204'
port = 33066
user = 'root'
password = 'MOLXRZNOU4Y4'
database = 'dms-percutaneous'
charset = 'utf8mb4'
prefix = ''
debug = true
[mysql_read]
host = '39.106.171.204'
port = 33066
user = 'root'
password = 'MOLXRZNOU4Y4'
database = 'dms-percutaneous'
charset = 'utf8mb4'
prefix = ''
[redis]
host = '39.106.171.204'
password = 'lLMLcuPpzSj'
port = 6379
db = 1
[log-redis]
host = '39.106.171.204'
password = 'lLMLcuPpzSj'
port = 6379
db = 3
[services]
user = "user-service"
[encrypt]
data_key = "u2t9T3luZtoRfhBstkFN6TiIMW38BA8a" #内容数据,
Binary file not shown.