syntax = "proto3"; package finance.api.inner; import "buf/validate/validate.proto"; import "finance/financev1/model.proto"; import "finance/financev1/global.proto"; option go_package = "./finance/financev1;financev1"; // 企业账户管理 service SubjectBank { // 新增企业账户 rpc CreateSubjectBank (CreateSubjectBankRequest) returns (CreateSubjectBankReply); // 修改企业账户 rpc UpdateSubjectBank (UpdateSubjectBankRequest) returns (UpdateSubjectBankReply); // 删除企业账户 rpc DeleteSubjectBank (DeleteSubjectBankRequest) returns (DeleteSubjectBankReply); rpc GetSubjectBank (GetSubjectBankRequest) returns (GetSubjectBankReply); // 企业账户列表 rpc ListSubjectBank (ListSubjectBankRequest) returns (ListSubjectBankReply); // 批量修改企业账户状态 rpc BatchUpdateSubjectBankStatus (BatchUpdateSubjectBankStatusRequest) returns (BatchUpdateSubjectBankStatusReply); } message CreateSubjectBankRequest { // 账户类型 int32 category = 1 [(buf.validate.field).cel = { message: "账户类型必须填写" expression: "this > 0" }]; // 银行名称 string bankName = 3 [(buf.validate.field).cel = { message: "银行名称必须填写" expression: "this.size() > 0" }]; // 银行账号 string bankAccount = 4 [(buf.validate.field).cel = { message: "银行账号必须填写" expression: "this.size() > 0" }]; // 银行开户名 string accountName = 5 [(buf.validate.field).cel = { message: "银行开户名必须填写" expression: "this.size() > 0" }]; // 备注 string remark = 6 [(buf.validate.field).cel = { message: "备注最多支持100个字符" expression: "this.size() <= 100" }]; // 开户行 string bankAddress = 7 [(buf.validate.field).cel = { message: "开户行必须填写" expression: "this.size() > 0" }]; BankItem bank = 8 [(buf.validate.field).required = true]; } message CreateSubjectBankReply { uint32 id = 1; } message UpdateSubjectBankRequest { // 账户类型 int32 category = 1 [(buf.validate.field).cel = { message: "账户类型必须填写" expression: "this > 0" }]; // 状态 int32 status = 2; // 银行名称 string bankName = 3 [(buf.validate.field).cel = { message: "银行名称必须填写" expression: "this.size() > 0" }]; // 银行账号 string bankAccount = 4 [(buf.validate.field).cel = { message: "银行账号必须填写" expression: "this.size() > 0" }]; // 银行开户名 string accountName = 5 [(buf.validate.field).cel = { message: "银行开户名必须填写" expression: "this.size() > 0" }]; // 备注 string remark = 6 [(buf.validate.field).cel = { message: "备注最多支持100个字符" expression: "this.size() <= 100" }]; uint32 id = 7 [(buf.validate.field).cel = { message: "账户必须选择" expression: "this > 0" }]; // 开户行 string bankAddress = 8 [(buf.validate.field).cel = { message: "开户行必须填写" expression: "this.size() > 0" }]; BankItem bank = 9 [(buf.validate.field).required = true]; } message UpdateSubjectBankReply {} message DeleteSubjectBankRequest { uint32 id = 1 [(buf.validate.field).cel = { message: "账户必须选择" expression: "this > 0" }]; } message DeleteSubjectBankReply {} message GetSubjectBankRequest { uint32 id = 1 [(buf.validate.field).cel = { message: "账户必须选择" expression: "this > 0" }]; } message GetSubjectBankReply { SubjectBankItem detail = 1; } message ListSubjectBankRequest { PageReq page = 1 [(buf.validate.field).required = true]; // 账户类型 int32 category = 2; // 状态 int32 status = 3; // 是否离线银行 int32 offlineType = 4; // id列表 repeated uint32 ids = 5; } message ListSubjectBankReply { repeated SubjectBankItem list = 1; PageReply page = 2; } message BatchUpdateSubjectBankStatusRequest { repeated uint32 ids = 1 [(buf.validate.field).cel = { message: "账户必须选择" expression: "this.size() > 0" }]; int32 status = 2 [(buf.validate.field).cel = { message: "状态必须选择" expression: "this > 0" }]; } message BatchUpdateSubjectBankStatusReply {}