You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

470 lines
18 KiB
Protocol Buffer

syntax = "proto3";
package approval;
import "github.com/mwitkow/go-proto-validators@v0.3.2/validator.proto";
option go_package = "./;approval";
// The approval service definition.
service Approval {
rpc Create(CreateRequest) returns (ApprovalResponse) {};
rpc UsedNumByUser(UsedNumByUserRequest) returns (UsedNumByUserResponse) {};//获取此用户能创建多少个画展包
rpc UpdateExhibitionApplyID(UpdateEhApplyIDRequest) returns (UpdateEhApplyIDResponse) {};//同步画展包的ID
rpc Detail(DetailRequest) returns (CreateRequest) {};
rpc Update(CreateRequest) returns (ApprovalResponse) {};
rpc Remove(RemoveRequest) returns (RemoveResponse) {};
rpc MyWork(ListRequest) returns (ListResponse) {};// 我的工作---待处理
rpc MySubmit(ListRequest) returns (ListResponse) {};// 我的提交
rpc NowLevelByInfo(NowLevelByInfoRequest) returns (WorkFlowResponse) {};
rpc Information(InformationRequest) returns (InformationResponse) {};
rpc Viewed(ViewedRequest) returns (ApprovalResponse) {};
rpc SetStatus(StatusRequest) returns (StatusResponse) {};
rpc DetailSetting(DetailSettingRequest) returns (SettingRequest) {};
rpc UpdateSetting(SettingRequest) returns (SettingResponse) {};
rpc IsExistPayRight(IsExistPayRightRequest) returns (IsExistPayRightResponse) {};//是否有
rpc ChangeBundlePay(ChangeBundlePayRequest) returns (CommonResponse) {};//是否有
rpc CreateType(CreateTypeRequest) returns (TypeResponse) {};
rpc DetailType(TypeResponse) returns (CreateTypeRequest) {};
rpc UpdateType(CreateTypeRequest) returns (TypeResponse) {};
rpc AllType(CommonRequest) returns (AllTypeResponse) {};
rpc RemoveType(RemoveRequest) returns (StatusResponse) {};
rpc AllGroup(CommonRequest) returns (AllGroupResponse) {};
// 财务报表审批
rpc GetName(GetNameRequest) returns (GetNameResponse) {};
}
message CommonResponse {
}
message ChangeBundlePayRequest {
string Domain = 1 [json_name = "domain"];
uint64 ID = 2 [json_name = "ID"];
uint64 Status = 3 [json_name = "Status"];
}
message IsExistPayRightRequest {
string Domain = 1 [json_name = "domain"];
uint64 UserId = 2 [json_name = "userId"];
string ShowUid = 3 [json_name = "showUid"];
}
message IsExistPayRightResponse {
bool IsPass = 1 [json_name = "isPass"];
}
message KeyInfo {
string ApprovalKey = 1 [json_name = "approvalKey"];
string ApprovalName = 2 [json_name = "approvalName"];
string ApprovalType = 3 [json_name = "approvalType"];
string ApprovalValue = 4 [json_name = "approvalValue"];
bool ApprovalMark = 5 [json_name = "approvalMark"];
}
message UpdateEhApplyIDRequest {
string Domain = 1 [json_name = "domain"];
uint64 ApprovalID = 2 [json_name = "approvalID"];
string ApplyId = 3 [json_name = "applyId"];
}
message UpdateEhApplyIDResponse {
}
message UsedNumByUserRequest {
string Domain = 1 [json_name = "domain"];
uint64 SubmitterID = 2 [json_name = "submitterID"];
}
message UsedNumByUserResponse {
uint64 total = 1 [json_name = "total"];
}
message NowLevelByInfoRequest {
string Domain = 1 [json_name = "domain"];
uint64 ApprovalID = 2 [json_name = "ApprovalID"];
}
message WorkFlowResponse {
uint64 ID = 2 [json_name = "ID"];
string Reply = 3 [json_name = "Reply"];
uint64 Status = 5 [json_name = "status"];
uint64 UserID = 7 [json_name = "userID"];
}
message CommonRequest {
string Domain = 1 [json_name = "domain"];
uint64 Page = 2 [json_name = "Page"];
uint64 PageSize = 3 [json_name = "pageSize"];
uint64 GroupId = 4 [json_name = "groupId"];
}
message CreateTypeRequest {
string Domain = 1 [json_name = "domain"];
uint64 ID = 2 [json_name = "ID"];
string Title = 3 [json_name = "title"];
string Remark = 5 [json_name = "remark"];
string KeyWord = 6 [json_name = "keyWord"];
repeated KeyInfo KeyInfos = 7 [json_name = "keyInfos"];
uint64 IsCustom = 8 [json_name = "isCustom"];
uint64 GroupId = 9 [json_name = "groupId"];
string GroupName = 10 [json_name = "groupName"];
}
message TypeResponse {
uint64 ID = 1;
string Domain = 2;
string Keyword = 3;
}
message AllTypeResponse {
repeated CreateTypeRequest Data = 1;
uint64 Count = 2;
}
message CreateTypeGroupRequest {
uint64 ID = 1 [json_name = "ID"];
string Domain = 2 [json_name = "domain"];
string Title = 3 [json_name = "title"];
repeated CreateTypeRequest List = 4 [json_name = "list"];
}
message AllGroupResponse {
repeated CreateTypeGroupRequest Data = 1;
uint64 Count = 2;
}
message StatusRequest {
string Domain = 1 [json_name = "domain"];
uint64 ID = 2 [json_name = "ID"];
string Reply = 3 [json_name = "Reply"];
uint64 WorkFlowId = 4 [json_name = "workFlowId"];
uint64 Status = 5 [json_name = "status",(validator.field) = {int_lt: 4,int_gt: 0,human_error: "70008"}];
uint64 Level = 6 [json_name = "level"];
string Title = 7 [json_name = "title"];
uint64 UserId = 8 [json_name = "userId"];
}
message StatusResponse {
}
message ListRequest {
string Domain = 1 [json_name = "domain",(validator.field) = {string_not_empty: true,human_error: "70001"} ];
uint64 PageSize = 2 [json_name = "PageSize"]; //
uint64 Page = 3 [json_name = "Page"]; //
uint64 Status = 4 [json_name = "status"];//0待审批 1-审批成功 2-拒绝 4-是所有
string Type = 5 [json_name = "type"]; //类型
uint64 UserID = 6 [json_name = "userID"]; //
uint64 ApprovedBossId = 7 [json_name = "approvedBossId"]; //
}
message ListResponse {
uint64 Count = 1 [json_name = "count"];
repeated CreateRequest data = 2 [json_name = "data"];
}
message ViewedRequest {
string Domain = 1 [json_name = "domain"];
uint64 ID = 2 [json_name = "ID"];
uint64 UserID = 3 [json_name = "userID"];
}
message InformationRequest {
string Domain = 1 [json_name = "domain"];
uint64 UserID = 2 [json_name = "userID"];
string Type = 3 [json_name = "type"];
}
message Information {
uint64 Total = 1 [json_name = "total"]; // 已提交的审批 (总量)
uint64 DoingTotal = 2 [json_name = "doingTotal"]; // 正在审批数量
uint64 SuccessTotal = 3 [json_name = "successTotal"]; // 审批完成数量
uint64 FailTotal = 4 [json_name = "failTotal"]; // 审批未通过
}
message InformationResponse {
Information MySubmitInfo = 1 [json_name = "mySubmitInfo"]; // 我提交的;
Information SubmitMeInfo = 2 [json_name = "submitMeInfo"]; // 提交给我的;
Information DomainInfo = 3 [json_name = "domainInfo"]; // 大盘数据;
//Information CopyMeInfo = 4 [json_name = "copyMeInfo"]; // 抄送给我的;
}
message Bundle {
uint64 ID = 1 [json_name = "ID"];
string ReturnAt = 2 [json_name = "returnAt"];
string ReceivedAt = 3 [json_name = "receivedAt"];
uint64 ApplicationsNum = 4 [json_name = "applicationsNum"];
}
message Show {
uint64 ID =1 [json_name = "ID"];
uint64 ArtistNum =2 [json_name = "artistNum"];
string ShowAt =3 [json_name = "ShowAt"];
}
message ApprovalWork {
uint64 ID =1 [json_name = "ID"];
uint64 WorkID =2 [json_name = "WorkID"];
uint64 ApprovalID =3 [json_name = "ApprovalID"];
uint64 ArtworkID =4 [json_name = "artworkID"];
string ArtworkName =5 [json_name = "artworkName"];
string ArtistName =6 [json_name = "artistName"];
string ArtworkCover =7 [json_name = "artworkCover"];
uint64 ArtworkNumber =8 [json_name = "artworkNumber"];
string ArtistUID =9 [json_name = "artistUID"];
string ShowSeq =10 [json_name = "showSeq"];
}
message Work {
uint64 ID = 1 [json_name = "ID"];
string ReturnAt = 2 [json_name = "returnAt"];
string ReceivedAt = 3 [json_name = "receivedAt"];
repeated ApprovalWork ApprovalWorks = 4 [json_name = "approvalWorks"];
string ArtistUID = 5 [json_name = "artistUID"];
}
message ApprovalExhibition {
uint64 ID =1 [json_name = "ID"];
uint64 ExhibitionID =2 [json_name = "exhibitionID"];
uint64 ApprovalID =3 [json_name = "approvalID"];
string PackageName =4 [json_name = "packageName"];
string PackageID =5 [json_name = "packageID"];
uint64 PackageSize =6 [json_name = "packageSize"];
string PackageNumber =7 [json_name = "packageNumber"];
string Address =8 [json_name = "address"];
string ShowDate =9 [json_name = "showDate"];
repeated Artwork Artworks = 10[json_name = "artworks"];
ArtExhibitionDetail ArtExhibitionDetail = 11[json_name = "artExhibitionDetail"];
int64 TotalPrice = 12 [json_name = "totalPrice"];
}
message Exhibition {
uint64 ID =1 [json_name = "ID"];
string ReceivedAt =2 [json_name = "receivedAt"];
string Address =3 [json_name = "address"];
uint64 PidApprovalID =4 [json_name = "pidApprovalID"];
repeated ApprovalExhibition ApprovalExhibitions = 5 [json_name = "approvalExhibitions"];
uint64 Num = 6 [json_name = "num"];
string ApplyID = 7 [json_name = "applyID"];
}
message Artwork {
string ArtworkPriceUID =1;
string ShowUID =2;
string ArtworkUID =3;
string ArtworkName =4;
string ArtistName =5;
uint64 Length =6;
uint64 Width =7;
uint64 Ruler =8;
string SmallPic =9;
string SaleAddress =10;
string Reward =11;
string Tfnum =12;
string SaleAddressID =13;
}
message ArtExhibitionDetail {
string ShowUID = 1 ;
string ShowSeq = 2 ;
string ShowName = 3 ;
string ArtistName = 4 ;
string ArtistUID = 5 ;
uint64 ArtworkNum = 6 ;
uint64 Ruler = 7 ;
uint64 Price = 8 ;
uint64 Reward = 9 ;
string CreateTime = 10 ;
string Operator = 11 ;
uint64 IsShow = 12 ;
string ShowTime = 13;
string Address = 14 ;
}
message BundlePayPrice {
string ShowUid = 1 [json_name = "showUid"];
uint64 ApprovalID = 2 [json_name = "approvalID"];
string ShowName = 3 [json_name = "showName"];
string ReceivedAt = 4 [json_name = "receivedAt"];
string ShowDate = 5 [json_name = "showDate"];
string ShowLowPrice= 6 [json_name = "showLowPrice"];
uint64 ArtworkNum = 7 [json_name = "artworkNum"];
string ArtworkSize = 8 [json_name = "artworkSize"];
string ShowAddress = 9 [json_name = "showAddress"];
uint64 ID = 10 [json_name = "ID"];
uint64 Status = 11 [json_name = "status"];
string ArtistName = 12 [json_name = "artistName"];
}
message CreateRequest {
uint64 ID = 1 [json_name = "ID"];
string Domain = 2 [json_name = "domain",(validator.field) = {string_not_empty: true,human_error: "70001"} ];
uint64 Status = 3 [json_name = "status"];
string Type = 4 [json_name = "type",(validator.field) = {string_not_empty: true,human_error: "70009"} ];
uint64 SubmitterID = 7 [json_name = "submitterID"];//审批人
string SubmitterName = 8 [json_name = "submitterName"];
repeated CopyUser CopyUsers = 9 [json_name = "copyName"];//抄送人
string Content = 10 [json_name = "content"];//申请内容
string Reply = 11 [json_name = "reply"];//回复
bool CanView = 12 [json_name = "canView"];//是否可以阅读
Work Work = 13 [json_name = "work"];
Show Show = 14 [json_name = "show"];
Exhibition Exhibition = 15 [json_name = "exhibition"];
Bundle Bundle = 16 [json_name = "bundle"];
repeated ApprovalUser ApprovalUsers= 17 [json_name = "approvalUsers"];//审批的人
bool CanApproval = 18 [json_name = "canApproval"];//审批的人
repeated WorkFlow WorkFlows = 19 [json_name = "workFlows"];//审批的人
uint64 AllStatus = 20 [json_name = "allStatus"];//状态 0 1 2 3已阅读 4-待阅读
uint64 NowUserId = 21 [json_name = "nowUserId"];
string NowUserName = 22 [json_name = "nowUserName"];
uint64 Level = 23 [json_name = "level"];
uint64 NowLevel = 24 [json_name = "nowLevel"];
string CreatedAt = 25 [json_name = "createdAt"];
repeated KeyInfo CustomizeInfo = 26 [json_name = "customizeInfo"];
uint64 IsCustom = 27 [json_name = "isCustom"];
string TypeName = 28 [json_name = "typeName"];
string GroupName = 29 [json_name = "groupName"];
BundlePayPrice BundlePayPrice = 30 [json_name = "bundlePayPrice"];
FinancialForm FinancialForm = 31 [json_name = "financialForm"];
}
message WorkFlow {
uint64 ID = 1 [json_name = "ID"];
uint64 UserID = 3 [json_name = "userID"];
string Name = 4 [json_name = "name"];
uint64 Level = 5 [json_name = "level"];
uint64 Status = 6 [json_name = "status"];
string Reply = 7 [json_name = "reply"];
string OperatedAt = 8 [json_name = "operatedAt"];
}
message DetailRequest {
uint64 ID=1 [json_name = "ID"];
string Domain=2 [json_name = "domain"];
uint64 UserId=3 [json_name = "userId"];
}
message RemoveRequest {
repeated uint64 IDs=1 [json_name = "IDs"];
string Domain=2 [json_name = "domain"];
}
message ApprovalResponse {
uint64 ID=1 [json_name = "ID"];
bool Success=2 [json_name = "success"];
}
message RemoveResponse {
bool Success=1 [json_name = "success"];
}
message ApprovalExhibitionRemove {
bool Success=1 [json_name = "success"];
}
message ApprovalExhibitionRequest {
uint64 ID=1 [json_name = "ID"];
uint64 DeletedAt=2 [json_name = "deletedAt"];
string CreatedAt=3 [json_name = "createdAt"];
string UpdatedAt=4 [json_name = "updatedAt"];
uint64 ApprovalID=5 [json_name = "approvalID"];
uint64 ExhibitionID=6 [json_name = "exhibitionID"];
string ExhibitionName=7 [json_name = "exhibitionName"];
uint64 ArtworkID=8 [json_name = "artworkID"];
string ExhibitionSize=9 [json_name = "exhibitionSize"];
string ExhibitionNumber=10 [json_name = "exhibitionNumber"];
}
message ApprovalExhibitionDetail {
uint64 ID=1 [json_name = "ID"];
string Domain=2 [json_name = "domain"];
}
message CopyUser {
uint64 ID =1 [json_name = "ID"];
string Name =2 [json_name = "name"];
bool IsViewed =3 [json_name = "isViewed"];
}
message ApprovalUser {
uint64 ID =1 [json_name = "ID"];
string Name =2 [json_name = "name"];
string Level =3 [json_name = "Level"];
}
message SettingRequest {
uint64 ID = 1 [json_name = "ID"];
uint64 DeletedAt = 2 [json_name = "deletedAt"];
string CreatedAt = 3 [json_name = "createdAt"];
string UpdatedAt = 4 [json_name = "updatedAt"];
string KeyWord = 5 [json_name = "keyWord"];
repeated CopyUser CopyUsers = 6 [json_name = "copyUsers"];
repeated ApprovalUser ApprovalUsers = 9 [json_name = "approvalUsers"];
string Domain = 10 [json_name = "domain"];
repeated KeyInfo CustomizeInfo = 11 [json_name = "customizeInfo"];
uint64 IsCustom = 12 [json_name = "isCustom"];
}
message DetailSettingRequest {
string KeyWord=1 [json_name = "keyWord"];
string Domain=2 [json_name = "domain"];
}
message SettingResponse {
uint64 ID=1 [json_name = "ID"];
bool Success=2 [json_name = "success"];
}
// 财务报表审批
message GetNameRequest {
string SettingType = 1 [json_name = "settingType"];
}
message GetNameResponse {
repeated string Name = 1 [json_name = "name"];
}
message FinancialForm {
uint64 ID=1 [json_name = "ID"];
uint64 DeletedAt=2 [json_name = "deletedAt"];
string CreatedAt=3 [json_name = "createdAt"];
string UpdatedAt=4 [json_name = "updatedAt"];
uint64 ApprovalID=5 [json_name = "approvalID"];
string PaymentCompany = 6 [json_name = "paymentCompany"];
string TransactionDepartment = 7 [json_name = "transactionDepartment"];
string Payee = 8 [json_name = "payee"];
string BeneficiaryBank = 9 [json_name = "beneficiaryBank"];
string BankNo = 10 [json_name = "bankNo"];
repeated CostInfo CostInfo = 11 [json_name = "costInfo"];
string PaymentMethod = 12 [json_name = "paymentMethod"];
repeated InvoiceInfo InvoiceInfo = 13 [json_name = "invoiceInfo"];
}
message CostInfo {
string Description = 1 [json_name = "description"];
string UnitPrice = 2 [json_name = "unitPrice"];
string CostUnit = 3 [json_name = "costUnit"];
int64 CostNum = 4 [json_name = "costNum"];
string TotalPrice = 5 [json_name = "totalPrice"];
string UsedDepartment = 6 [json_name = "usedDepartment"];
}
message InvoiceInfo {
string InvoiceDate = 1 [json_name = "invoiceDate"];
string InvoiceNo = 2 [json_name = "invoiceNo"];
string InvoiceProvider = 3 [json_name = "invoiceProvider"];
string Amount = 4 [json_name = "amount"];
string UseTo = 5 [json_name = "useTo"];
string Applicant = 6 [json_name = "applicant"];
string PaymentMethod = 7 [json_name = "paymentMethod"];
string PaymentObj = 8 [json_name = "paymentObj"];
string InvoiceType = 9 [json_name = "invoiceType"];
string Notes = 10 [json_name = "notes"];
}