Files
EdgeCommon/pkg/rpc/protos/service_user_bill.proto

82 lines
1.9 KiB
Protocol Buffer
Raw Normal View History

syntax = "proto3";
option go_package = "./pb";
package pb;
import "models/rpc_messages.proto";
import "models/model_user_bill.proto";
// 账单相关服务
service UserBillService {
2021-11-29 14:34:05 +08:00
// 手工生成账单
rpc generateAllUserBills (GenerateAllUserBillsRequest) returns (RPCSuccess);
// 计算所有账单数量
rpc countAllUserBills (CountAllUserBillsRequest) returns (RPCCountResponse);
// 列出单页账单
rpc listUserBills (ListUserBillsRequest) returns (ListUserBillsResponse);
2021-11-29 14:34:05 +08:00
// 查找账单信息
rpc findUserBill(FindUserBillRequest) returns (FindUserBillResponse);
// 支付账单
rpc payUserBill(PayUserBillRequest) returns (RPCSuccess);
// 计算用户所有未支付账单总额
rpc sumUserUnpaidBills(SumUserUnpaidBillsRequest) returns (SumUserUnpaidBillsResponse);
}
2021-11-29 14:34:05 +08:00
// 手工生成账单
message GenerateAllUserBillsRequest {
string month = 1;
2022-10-14 10:03:49 +08:00
string day = 2;
}
// 计算所有账单数量
message CountAllUserBillsRequest {
2022-10-21 15:44:36 +08:00
int32 paidFlag = 1; // 可选0|1|-1
int64 userId = 2; // 可选用户ID
string month = 3; // 可选,月份
bool trafficRelated = 4; // 可选,是否为流量带宽相关
int32 minDailyBillDays = 5; // 可选,按日计费账单生成最小天数
int32 minMonthlyBillDays = 6; // 可选,按月计费账单生成最小天数
}
// 列出单页账单
message ListUserBillsRequest {
int32 paidFlag = 1;
int64 userId = 2;
string month = 5;
int64 offset = 3;
int64 size = 4;
}
message ListUserBillsResponse {
repeated UserBill userBills = 1;
2021-11-29 14:34:05 +08:00
}
// 查找账单信息
message FindUserBillRequest {
int64 userBillId = 1; // ID和单号二选一
string code = 2; // 单号
2021-11-29 14:34:05 +08:00
}
message FindUserBillResponse {
UserBill userBill = 1;
}
// 支付账单
message PayUserBillRequest {
int64 userBillId = 1;
}
// 计算用户所有未支付账单总额
message SumUserUnpaidBillsRequest {
int64 userId = 1;
}
message SumUserUnpaidBillsResponse {
double amount = 1;
}