MarketingSystemDataExportTool/grpc/finance/financev1/subject_bank.proto

148 lines
4.0 KiB
Protocol Buffer

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 {}