Browse Source

feat: safe接口相关配置

lanjianrong 4 years ago
parent
commit
7708b10f1e
6 changed files with 97 additions and 322 deletions
  1. 1 1
      conf/project.go
  2. 0 320
      proto/safe.pb.go
  3. 54 0
      web/api/safe_rpc_api.go
  4. 1 1
      web/main.go
  5. 9 0
      web/routes/routes.go
  6. 32 0
      web/viewmodels/safe.go

+ 1 - 1
conf/project.go

@@ -22,7 +22,7 @@ var SignSecret = "cpcm005687gokaif"
 var CookieSecret = "cm_login_account"
 
 // nodejs rpc 服务端
-const NodeRpcHost = "192.168.1.26:5001"
+const NodeRpcHost = "192.168.1.47:50051"
 
 // 是否需要启动全局计划任务服务
 var RunningCrontabService = false

+ 0 - 320
proto/safe.pb.go

@@ -1,320 +0,0 @@
-// Code generated by protoc-gen-go. DO NOT EDIT.
-// versions:
-// 	protoc-gen-go v1.25.0
-// 	protoc        v3.9.0
-// source: safe.proto
-
-package proto
-
-import (
-	context "context"
-	proto "github.com/golang/protobuf/proto"
-	grpc "google.golang.org/grpc"
-	codes "google.golang.org/grpc/codes"
-	status "google.golang.org/grpc/status"
-	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
-	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
-	reflect "reflect"
-	sync "sync"
-)
-
-const (
-	// Verify that this generated code is sufficiently up-to-date.
-	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
-	// Verify that runtime/protoimpl is sufficiently up-to-date.
-	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
-)
-
-// This is a compile-time assertion that a sufficiently up-to-date version
-// of the legacy proto package is being used.
-const _ = proto.ProtoPackageIsVersion4
-
-// The request message containing the user's name.
-type SafeRequest struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	Id int32 `protobuf:"varint,1,opt,name=id,proto3" json:"id,omitempty"`
-}
-
-func (x *SafeRequest) Reset() {
-	*x = SafeRequest{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_safe_proto_msgTypes[0]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *SafeRequest) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*SafeRequest) ProtoMessage() {}
-
-func (x *SafeRequest) ProtoReflect() protoreflect.Message {
-	mi := &file_safe_proto_msgTypes[0]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use SafeRequest.ProtoReflect.Descriptor instead.
-func (*SafeRequest) Descriptor() ([]byte, []int) {
-	return file_safe_proto_rawDescGZIP(), []int{0}
-}
-
-func (x *SafeRequest) GetId() int32 {
-	if x != nil {
-		return x.Id
-	}
-	return 0
-}
-
-// The response message containing the greetings
-type SafeReply struct {
-	state         protoimpl.MessageState
-	sizeCache     protoimpl.SizeCache
-	unknownFields protoimpl.UnknownFields
-
-	Code    int32  `protobuf:"varint,1,opt,name=code,proto3" json:"code,omitempty"`
-	Data    string `protobuf:"bytes,2,opt,name=data,proto3" json:"data,omitempty"`
-	Message string `protobuf:"bytes,3,opt,name=message,proto3" json:"message,omitempty"`
-}
-
-func (x *SafeReply) Reset() {
-	*x = SafeReply{}
-	if protoimpl.UnsafeEnabled {
-		mi := &file_safe_proto_msgTypes[1]
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		ms.StoreMessageInfo(mi)
-	}
-}
-
-func (x *SafeReply) String() string {
-	return protoimpl.X.MessageStringOf(x)
-}
-
-func (*SafeReply) ProtoMessage() {}
-
-func (x *SafeReply) ProtoReflect() protoreflect.Message {
-	mi := &file_safe_proto_msgTypes[1]
-	if protoimpl.UnsafeEnabled && x != nil {
-		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
-		if ms.LoadMessageInfo() == nil {
-			ms.StoreMessageInfo(mi)
-		}
-		return ms
-	}
-	return mi.MessageOf(x)
-}
-
-// Deprecated: Use SafeReply.ProtoReflect.Descriptor instead.
-func (*SafeReply) Descriptor() ([]byte, []int) {
-	return file_safe_proto_rawDescGZIP(), []int{1}
-}
-
-func (x *SafeReply) GetCode() int32 {
-	if x != nil {
-		return x.Code
-	}
-	return 0
-}
-
-func (x *SafeReply) GetData() string {
-	if x != nil {
-		return x.Data
-	}
-	return ""
-}
-
-func (x *SafeReply) GetMessage() string {
-	if x != nil {
-		return x.Message
-	}
-	return ""
-}
-
-var File_safe_proto protoreflect.FileDescriptor
-
-var file_safe_proto_rawDesc = []byte{
-	0x0a, 0x0a, 0x73, 0x61, 0x66, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x05, 0x70, 0x72,
-	0x6f, 0x74, 0x6f, 0x22, 0x1d, 0x0a, 0x0b, 0x53, 0x61, 0x66, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
-	0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x02,
-	0x69, 0x64, 0x22, 0x4d, 0x0a, 0x09, 0x53, 0x61, 0x66, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12,
-	0x12, 0x0a, 0x04, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x04, 0x63,
-	0x6f, 0x64, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28,
-	0x09, 0x52, 0x04, 0x64, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61,
-	0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
-	0x65, 0x32, 0x3d, 0x0a, 0x04, 0x53, 0x61, 0x66, 0x65, 0x12, 0x35, 0x0a, 0x0b, 0x67, 0x65, 0x74,
-	0x53, 0x61, 0x66, 0x65, 0x4c, 0x69, 0x73, 0x74, 0x12, 0x12, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
-	0x2e, 0x53, 0x61, 0x66, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x10, 0x2e, 0x70,
-	0x72, 0x6f, 0x74, 0x6f, 0x2e, 0x53, 0x61, 0x66, 0x65, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x22, 0x00,
-	0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
-}
-
-var (
-	file_safe_proto_rawDescOnce sync.Once
-	file_safe_proto_rawDescData = file_safe_proto_rawDesc
-)
-
-func file_safe_proto_rawDescGZIP() []byte {
-	file_safe_proto_rawDescOnce.Do(func() {
-		file_safe_proto_rawDescData = protoimpl.X.CompressGZIP(file_safe_proto_rawDescData)
-	})
-	return file_safe_proto_rawDescData
-}
-
-var file_safe_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
-var file_safe_proto_goTypes = []interface{}{
-	(*SafeRequest)(nil), // 0: proto.SafeRequest
-	(*SafeReply)(nil),   // 1: proto.SafeReply
-}
-var file_safe_proto_depIdxs = []int32{
-	0, // 0: proto.Safe.getSafeList:input_type -> proto.SafeRequest
-	1, // 1: proto.Safe.getSafeList:output_type -> proto.SafeReply
-	1, // [1:2] is the sub-list for method output_type
-	0, // [0:1] 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
-}
-
-func init() { file_safe_proto_init() }
-func file_safe_proto_init() {
-	if File_safe_proto != nil {
-		return
-	}
-	if !protoimpl.UnsafeEnabled {
-		file_safe_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*SafeRequest); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-		file_safe_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
-			switch v := v.(*SafeReply); i {
-			case 0:
-				return &v.state
-			case 1:
-				return &v.sizeCache
-			case 2:
-				return &v.unknownFields
-			default:
-				return nil
-			}
-		}
-	}
-	type x struct{}
-	out := protoimpl.TypeBuilder{
-		File: protoimpl.DescBuilder{
-			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
-			RawDescriptor: file_safe_proto_rawDesc,
-			NumEnums:      0,
-			NumMessages:   2,
-			NumExtensions: 0,
-			NumServices:   1,
-		},
-		GoTypes:           file_safe_proto_goTypes,
-		DependencyIndexes: file_safe_proto_depIdxs,
-		MessageInfos:      file_safe_proto_msgTypes,
-	}.Build()
-	File_safe_proto = out.File
-	file_safe_proto_rawDesc = nil
-	file_safe_proto_goTypes = nil
-	file_safe_proto_depIdxs = nil
-}
-
-// Reference imports to suppress errors if they are not otherwise used.
-var _ context.Context
-var _ grpc.ClientConnInterface
-
-// This is a compile-time assertion to ensure that this generated file
-// is compatible with the grpc package it is being compiled against.
-const _ = grpc.SupportPackageIsVersion6
-
-// SafeClient is the client API for Safe service.
-//
-// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
-type SafeClient interface {
-	// Sends a greeting
-	GetSafeList(ctx context.Context, in *SafeRequest, opts ...grpc.CallOption) (*SafeReply, error)
-}
-
-type safeClient struct {
-	cc grpc.ClientConnInterface
-}
-
-func NewSafeClient(cc grpc.ClientConnInterface) SafeClient {
-	return &safeClient{cc}
-}
-
-func (c *safeClient) GetSafeList(ctx context.Context, in *SafeRequest, opts ...grpc.CallOption) (*SafeReply, error) {
-	out := new(SafeReply)
-	err := c.cc.Invoke(ctx, "/proto.Safe/getSafeList", in, out, opts...)
-	if err != nil {
-		return nil, err
-	}
-	return out, nil
-}
-
-// SafeServer is the server API for Safe service.
-type SafeServer interface {
-	// Sends a greeting
-	GetSafeList(context.Context, *SafeRequest) (*SafeReply, error)
-}
-
-// UnimplementedSafeServer can be embedded to have forward compatible implementations.
-type UnimplementedSafeServer struct {
-}
-
-func (*UnimplementedSafeServer) GetSafeList(context.Context, *SafeRequest) (*SafeReply, error) {
-	return nil, status.Errorf(codes.Unimplemented, "method GetSafeList not implemented")
-}
-
-func RegisterSafeServer(s *grpc.Server, srv SafeServer) {
-	s.RegisterService(&_Safe_serviceDesc, srv)
-}
-
-func _Safe_GetSafeList_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
-	in := new(SafeRequest)
-	if err := dec(in); err != nil {
-		return nil, err
-	}
-	if interceptor == nil {
-		return srv.(SafeServer).GetSafeList(ctx, in)
-	}
-	info := &grpc.UnaryServerInfo{
-		Server:     srv,
-		FullMethod: "/proto.Safe/GetSafeList",
-	}
-	handler := func(ctx context.Context, req interface{}) (interface{}, error) {
-		return srv.(SafeServer).GetSafeList(ctx, req.(*SafeRequest))
-	}
-	return interceptor(ctx, in, info, handler)
-}
-
-var _Safe_serviceDesc = grpc.ServiceDesc{
-	ServiceName: "proto.Safe",
-	HandlerType: (*SafeServer)(nil),
-	Methods: []grpc.MethodDesc{
-		{
-			MethodName: "getSafeList",
-			Handler:    _Safe_GetSafeList_Handler,
-		},
-	},
-	Streams:  []grpc.StreamDesc{},
-	Metadata: "safe.proto",
-}

+ 54 - 0
web/api/safe_rpc_api.go

@@ -0,0 +1,54 @@
+/*
+ * @description: rpc - 安全巡检
+ * @Author: LanJianRong
+ * @Date: 2020-11-18
+ * @FilePath: \construction_management\web\api\safe_rpc_api.go
+ */
+
+package api
+
+import (
+	"github.com/kataras/iris/v12"
+	"go.mod/services"
+	"go.mod/web/utils"
+)
+
+type SafeRpcApi struct {
+	//框架-web应用上下文环境
+	Ctx iris.Context
+	// 需要用的service
+	ServiceSafe services.SafeService
+}
+
+// @Summary 安全巡检列表
+// @Tags 安全巡检
+// @Description 获得列表数据
+// @Accept  json
+// @Produce  json
+// @Security ApiKeyAuth
+// @Success 200 {object} viewmodels.Safe "{code:0成功,data:viewmodels.Safe,msg:}"
+// @Failure 400 {string} string	"{code:0成功,-1参数类错误,-2服务端内部错误,msg:错误信息}"
+// @Router /api/safe [get]
+func (c *SafeRpcApi) Get() {
+	// 1.规则验证
+	safeData, err := c.ServiceSafe.ValidRule(c.Ctx)
+	if err != nil {
+		c.Ctx.JSON(iris.Map{"code": -1, "msg": err})
+		return
+	}
+
+	bidsectionId, err := utils.GetDecryptId(safeData.BidsectionId)
+	if err != nil {
+		c.Ctx.JSON(iris.Map{"code": -1, "msg": "ReadJSON转换异常,请检查参数"})
+		return
+	}
+	c.ServiceSafe.Get(bidsectionId)
+
+	// SafeList := c.ServiceSafe.GetSafeList()
+
+	// c.Ctx.JSON(iris.Map{
+	// 	"code": 0,
+	// 	"msg":  "",
+	// 	"data": SafeList,
+	// })
+}

+ 1 - 1
web/main.go

@@ -13,7 +13,7 @@ import (
 	"go.mod/web/middleware/identity"
 	"go.mod/web/routes"
 
-	_ "go.mod/web/docs"
+	// _ "go.mod/web/docs"
 
 	"github.com/iris-contrib/swagger/v12"              // swagger middleware for Iris
 	"github.com/iris-contrib/swagger/v12/swaggerFiles" // swagger embed files

+ 9 - 0
web/routes/routes.go

@@ -25,6 +25,7 @@ func Configure(b *bootstrap.Bootstrapper) {
 	BidAccountService := services.NewBidAccountService()
 	ContractService := services.NewContractService()
 	RpcService := services.NewRpcService()
+	SafeService := services.NewSafeService()
 	//CSRF相关
 	b.Use(middleware.SetCsrf)
 
@@ -129,4 +130,12 @@ func Configure(b *bootstrap.Bootstrapper) {
 	rpc.Router.Use(middleware.SessionsAuth)
 	rpc.Router.Use(middleware.AccessAuth)
 	rpc.Handle(new(api.RpcApi))
+
+	// safe
+	apiSafe := mvc.New(b.Party("/api/safe"))
+	apiSafe.Register(SafeService)
+	apiSafe.Router.Use(middleware.SessionsAuth)
+	apiSafe.Router.Use(middleware.AccessAuth)
+	apiSafe.Handle(new(api.SafeRpcApi))
+
 }

+ 32 - 0
web/viewmodels/safe.go

@@ -0,0 +1,32 @@
+package viewmodels
+
+/*
+ * @description: 安全巡检
+ * @Author: LanJianRong
+ * @Date: 2020-11-18
+ * @FilePath: \construction_management\web\viewmodels\project.go
+ */
+import (
+	"time"
+
+	validation "github.com/go-ozzo/ozzo-validation/v3"
+)
+
+type Safe struct {
+	Id               string    `form:"id" json:"id" `
+	BidsectionId     string    `form:"bidsectionId" json:"bidsectionId"`
+	Code             string    `form:"code" json:"code"`
+	CreateTime       time.Time `form:"createTime" json:"createTime"`
+	EndTime          time.Time `form:"endTime" json:"endTime"`
+	Position         string    `form:"position" json:"position"`
+	Inspection       string    `form:"inspection" json:"inspection"`
+	InspectionDetail string    `form:"inspectionDetail" json:"inspectionDetail"`
+	Demand           string    `form:"demand" json:"demand"`
+	Status           int       `form:"status" json:"status"`
+}
+
+func (l Safe) ValidateList() error {
+	return validation.ValidateStruct(&l,
+		validation.Field(&l.BidsectionId, validation.Required.Error("标段ID不能为空")),
+	)
+}