Merge remote-tracking branch 'origin/tuoyun' into tuoyun

pull/232/head
Gordon 3 years ago
commit 4ca758174e

@ -153,6 +153,7 @@ func main() {
officeGroup.POST("/get_user_work_moments", office.GetUserWorkMoments)
officeGroup.POST("/get_user_friend_work_moments", office.GetUserFriendWorkMoments)
officeGroup.POST("/set_user_work_moments_level", office.SetUserWorkMomentsLevel)
officeGroup.POST("/delete_comment", office.DeleteComment)
}
organizationGroup := r.Group("/organization")

@ -94,7 +94,7 @@ services:
command: /usr/local/bin/etcd --name etcd0 --data-dir /etcd-data --listen-client-urls http://0.0.0.0:2379 --advertise-client-urls http://0.0.0.0:2379 --listen-peer-urls http://0.0.0.0:2380 --initial-advertise-peer-urls http://0.0.0.0:2380 --initial-cluster etcd0=http://0.0.0.0:2380 --initial-cluster-token tkn --initial-cluster-state new
open_im_server:
image: openim/open_im_server:v2.0.8
image: openim/open_im_server:v2.0.9
container_name: open_im_server
volumes:
- ./logs:/Open-IM-Server/logs

@ -168,6 +168,44 @@ func CommentOneWorkMoment(c *gin.Context) {
c.JSON(http.StatusOK, resp)
}
func DeleteComment(c *gin.Context) {
var (
req apiStruct.DeleteCommentReq
resp apiStruct.DeleteCommentResp
reqPb pbOffice.DeleteCommentReq
respPb *pbOffice.DeleteCommentResp
)
if err := c.BindJSON(&req); err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), "bind json failed", err.Error())
c.JSON(http.StatusBadRequest, gin.H{"errCode": 400, "errMsg": "bind json failed " + err.Error()})
return
}
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req)
if err := utils.CopyStructFields(&reqPb, req); err != nil {
log.NewDebug(req.OperationID, utils.GetSelfFuncName(), err.Error())
}
var ok bool
ok, reqPb.OpUserID = token_verify.GetUserIDFromToken(c.Request.Header.Get("token"), req.OperationID)
if !ok {
log.NewError(req.OperationID, "GetUserIDFromToken false ", c.Request.Header.Get("token"))
c.JSON(http.StatusInternalServerError, gin.H{"errCode": 500, "errMsg": "GetUserIDFromToken failed"})
return
}
etcdConn := getcdv3.GetConn(config.Config.Etcd.EtcdSchema, strings.Join(config.Config.Etcd.EtcdAddr, ","), config.Config.RpcRegisterName.OpenImOfficeName)
client := pbOffice.NewOfficeServiceClient(etcdConn)
respPb, err := client.DeleteComment(context.Background(), &reqPb)
if err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), "DeleteComment rpc failed", err.Error())
c.JSON(http.StatusInternalServerError, gin.H{"errCode": 500, "errMsg": "DeleteComment rpc server failed" + err.Error()})
return
}
if err := utils.CopyStructFields(&resp, respPb.CommonResp); err != nil {
log.NewDebug(req.OperationID, utils.GetSelfFuncName(), "CopyStructFields failed", err.Error())
}
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "resp: ", resp)
c.JSON(http.StatusOK, resp)
}
func GetWorkMomentByID(c *gin.Context) {
var (
req apiStruct.GetWorkMomentByIDReq
@ -261,6 +299,7 @@ func GetUserWorkMoments(c *gin.Context) {
Comments: make([]*apiStruct.Comment, len(v.Comments)),
LikeUserList: make([]*apiStruct.WorkMomentUser, len(v.LikeUserList)),
AtUserList: make([]*apiStruct.WorkMomentUser, len(v.AtUserList)),
Permission: v.Permission,
}
for i, comment := range v.Comments {
workMoment.Comments[i] = &apiStruct.Comment{
@ -344,6 +383,7 @@ func GetUserFriendWorkMoments(c *gin.Context) {
Comments: make([]*apiStruct.Comment, len(v.Comments)),
LikeUserList: make([]*apiStruct.WorkMomentUser, len(v.LikeUserList)),
AtUserList: make([]*apiStruct.WorkMomentUser, len(v.AtUserList)),
Permission: v.Permission,
}
for i, comment := range v.Comments {
workMoment.Comments[i] = &apiStruct.Comment{

@ -311,6 +311,20 @@ func (s *officeServer) CreateOneWorkMoment(_ context.Context, req *pbOffice.Crea
return resp, nil
}
func (s *officeServer) DeleteComment(_ context.Context, req *pbOffice.DeleteCommentReq) (resp *pbOffice.DeleteCommentResp, err error) {
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "req: ", req.String())
resp = &pbOffice.DeleteCommentResp{CommonResp: &pbOffice.CommonResp{}}
err = db.DB.DeleteComment(req.WorkMomentID, req.ContentID, req.OpUserID)
if err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetWorkMomentByID failed", err.Error())
resp.CommonResp.ErrMsg = constant.ErrDB.ErrMsg
resp.CommonResp.ErrCode = constant.ErrDB.ErrCode
return resp, nil
}
log.NewInfo(req.OperationID, utils.GetSelfFuncName(), "resp: ", resp.String())
return resp, nil
}
// count and distinct permission users
func (s *officeServer) getPermissionUserIDList(operationID string, groupList []*pbOffice.PermissionGroup, userList []*pbOffice.WorkMomentUser) []string {
var permissionUserIDList []string
@ -471,7 +485,6 @@ func (s *officeServer) GetWorkMomentByID(_ context.Context, req *pbOffice.GetWor
workMoment, err := db.DB.GetWorkMomentByID(req.WorkMomentID)
if err != nil {
log.NewError(req.OperationID, utils.GetSelfFuncName(), "GetWorkMomentByID failed", err.Error())
resp.CommonResp = &pbOffice.CommonResp{ErrCode: constant.ErrDB.ErrCode, ErrMsg: constant.ErrDB.ErrMsg}
return resp, nil
}
canSee := isUserCanSeeWorkMoment(req.OpUserID, *workMoment)

@ -34,6 +34,14 @@ type CommentOneWorkMomentResp struct {
CommResp
}
type DeleteCommentReq struct {
office.DeleteCommentReq
}
type DeleteCommentResp struct {
CommResp
}
type WorkMomentsUserCommonReq struct {
PageNumber int32 `json:"pageNumber" binding:"required"`
ShowNumber int32 `json:"showNumber" binding:"required"`
@ -54,6 +62,7 @@ type WorkMoment struct {
UserName string `json:"userName"`
AtUserList []*WorkMomentUser `json:"atUsers"`
CreateTime int32 `json:"createTime"`
Permission int32 `json:"permission"`
}
type WorkMomentUser struct {

@ -716,6 +716,18 @@ func (d *DataBases) DeleteOneWorkMoment(workMomentID string) error {
return err
}
func (d *DataBases) DeleteComment(workMomentID, contentID, opUserID string) error {
ctx, _ := context.WithTimeout(context.Background(), time.Duration(config.Config.Mongo.DBTimeout)*time.Second)
c := d.mongoClient.Database(config.Config.Mongo.DBDatabase).Collection(cWorkMoment)
_, err := c.UpdateOne(ctx, bson.D{{"work_moment_id", workMomentID},
{"$or", bson.A{
bson.D{{"user_id", opUserID}},
bson.D{{"comments", bson.M{"$elemMatch": bson.M{"user_id": opUserID}}}},
},
}}, bson.M{"$pull": bson.M{"comments": bson.M{"content_id": contentID}}})
return err
}
func (d *DataBases) GetWorkMomentByID(workMomentID string) (*WorkMoment, error) {
ctx, _ := context.WithTimeout(context.Background(), time.Duration(config.Config.Mongo.DBTimeout)*time.Second)
c := d.mongoClient.Database(config.Config.Mongo.DBDatabase).Collection(cWorkMoment)

@ -36,7 +36,7 @@ func (m *CommonResp) Reset() { *m = CommonResp{} }
func (m *CommonResp) String() string { return proto.CompactTextString(m) }
func (*CommonResp) ProtoMessage() {}
func (*CommonResp) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{0}
return fileDescriptor_office_f560032e7c752d4f, []int{0}
}
func (m *CommonResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommonResp.Unmarshal(m, b)
@ -82,7 +82,7 @@ func (m *TagUser) Reset() { *m = TagUser{} }
func (m *TagUser) String() string { return proto.CompactTextString(m) }
func (*TagUser) ProtoMessage() {}
func (*TagUser) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{1}
return fileDescriptor_office_f560032e7c752d4f, []int{1}
}
func (m *TagUser) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_TagUser.Unmarshal(m, b)
@ -129,7 +129,7 @@ func (m *Tag) Reset() { *m = Tag{} }
func (m *Tag) String() string { return proto.CompactTextString(m) }
func (*Tag) ProtoMessage() {}
func (*Tag) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{2}
return fileDescriptor_office_f560032e7c752d4f, []int{2}
}
func (m *Tag) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Tag.Unmarshal(m, b)
@ -182,7 +182,7 @@ func (m *GetUserTagsReq) Reset() { *m = GetUserTagsReq{} }
func (m *GetUserTagsReq) String() string { return proto.CompactTextString(m) }
func (*GetUserTagsReq) ProtoMessage() {}
func (*GetUserTagsReq) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{3}
return fileDescriptor_office_f560032e7c752d4f, []int{3}
}
func (m *GetUserTagsReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetUserTagsReq.Unmarshal(m, b)
@ -228,7 +228,7 @@ func (m *GetUserTagsResp) Reset() { *m = GetUserTagsResp{} }
func (m *GetUserTagsResp) String() string { return proto.CompactTextString(m) }
func (*GetUserTagsResp) ProtoMessage() {}
func (*GetUserTagsResp) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{4}
return fileDescriptor_office_f560032e7c752d4f, []int{4}
}
func (m *GetUserTagsResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetUserTagsResp.Unmarshal(m, b)
@ -276,7 +276,7 @@ func (m *CreateTagReq) Reset() { *m = CreateTagReq{} }
func (m *CreateTagReq) String() string { return proto.CompactTextString(m) }
func (*CreateTagReq) ProtoMessage() {}
func (*CreateTagReq) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{5}
return fileDescriptor_office_f560032e7c752d4f, []int{5}
}
func (m *CreateTagReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateTagReq.Unmarshal(m, b)
@ -335,7 +335,7 @@ func (m *CreateTagResp) Reset() { *m = CreateTagResp{} }
func (m *CreateTagResp) String() string { return proto.CompactTextString(m) }
func (*CreateTagResp) ProtoMessage() {}
func (*CreateTagResp) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{6}
return fileDescriptor_office_f560032e7c752d4f, []int{6}
}
func (m *CreateTagResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateTagResp.Unmarshal(m, b)
@ -375,7 +375,7 @@ func (m *DeleteTagReq) Reset() { *m = DeleteTagReq{} }
func (m *DeleteTagReq) String() string { return proto.CompactTextString(m) }
func (*DeleteTagReq) ProtoMessage() {}
func (*DeleteTagReq) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{7}
return fileDescriptor_office_f560032e7c752d4f, []int{7}
}
func (m *DeleteTagReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteTagReq.Unmarshal(m, b)
@ -427,7 +427,7 @@ func (m *DeleteTagResp) Reset() { *m = DeleteTagResp{} }
func (m *DeleteTagResp) String() string { return proto.CompactTextString(m) }
func (*DeleteTagResp) ProtoMessage() {}
func (*DeleteTagResp) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{8}
return fileDescriptor_office_f560032e7c752d4f, []int{8}
}
func (m *DeleteTagResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteTagResp.Unmarshal(m, b)
@ -470,7 +470,7 @@ func (m *SetTagReq) Reset() { *m = SetTagReq{} }
func (m *SetTagReq) String() string { return proto.CompactTextString(m) }
func (*SetTagReq) ProtoMessage() {}
func (*SetTagReq) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{9}
return fileDescriptor_office_f560032e7c752d4f, []int{9}
}
func (m *SetTagReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SetTagReq.Unmarshal(m, b)
@ -543,7 +543,7 @@ func (m *SetTagResp) Reset() { *m = SetTagResp{} }
func (m *SetTagResp) String() string { return proto.CompactTextString(m) }
func (*SetTagResp) ProtoMessage() {}
func (*SetTagResp) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{10}
return fileDescriptor_office_f560032e7c752d4f, []int{10}
}
func (m *SetTagResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SetTagResp.Unmarshal(m, b)
@ -587,7 +587,7 @@ func (m *SendMsg2TagReq) Reset() { *m = SendMsg2TagReq{} }
func (m *SendMsg2TagReq) String() string { return proto.CompactTextString(m) }
func (*SendMsg2TagReq) ProtoMessage() {}
func (*SendMsg2TagReq) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{11}
return fileDescriptor_office_f560032e7c752d4f, []int{11}
}
func (m *SendMsg2TagReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SendMsg2TagReq.Unmarshal(m, b)
@ -667,7 +667,7 @@ func (m *SendMsg2TagResp) Reset() { *m = SendMsg2TagResp{} }
func (m *SendMsg2TagResp) String() string { return proto.CompactTextString(m) }
func (*SendMsg2TagResp) ProtoMessage() {}
func (*SendMsg2TagResp) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{12}
return fileDescriptor_office_f560032e7c752d4f, []int{12}
}
func (m *SendMsg2TagResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SendMsg2TagResp.Unmarshal(m, b)
@ -707,7 +707,7 @@ func (m *GetTagSendLogsReq) Reset() { *m = GetTagSendLogsReq{} }
func (m *GetTagSendLogsReq) String() string { return proto.CompactTextString(m) }
func (*GetTagSendLogsReq) ProtoMessage() {}
func (*GetTagSendLogsReq) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{13}
return fileDescriptor_office_f560032e7c752d4f, []int{13}
}
func (m *GetTagSendLogsReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetTagSendLogsReq.Unmarshal(m, b)
@ -761,7 +761,7 @@ func (m *TagSendLog) Reset() { *m = TagSendLog{} }
func (m *TagSendLog) String() string { return proto.CompactTextString(m) }
func (*TagSendLog) ProtoMessage() {}
func (*TagSendLog) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{14}
return fileDescriptor_office_f560032e7c752d4f, []int{14}
}
func (m *TagSendLog) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_TagSendLog.Unmarshal(m, b)
@ -815,7 +815,7 @@ func (m *GetTagSendLogsResp) Reset() { *m = GetTagSendLogsResp{} }
func (m *GetTagSendLogsResp) String() string { return proto.CompactTextString(m) }
func (*GetTagSendLogsResp) ProtoMessage() {}
func (*GetTagSendLogsResp) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{15}
return fileDescriptor_office_f560032e7c752d4f, []int{15}
}
func (m *GetTagSendLogsResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetTagSendLogsResp.Unmarshal(m, b)
@ -869,7 +869,7 @@ func (m *GetUserTagByIDReq) Reset() { *m = GetUserTagByIDReq{} }
func (m *GetUserTagByIDReq) String() string { return proto.CompactTextString(m) }
func (*GetUserTagByIDReq) ProtoMessage() {}
func (*GetUserTagByIDReq) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{16}
return fileDescriptor_office_f560032e7c752d4f, []int{16}
}
func (m *GetUserTagByIDReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetUserTagByIDReq.Unmarshal(m, b)
@ -922,7 +922,7 @@ func (m *GetUserTagByIDResp) Reset() { *m = GetUserTagByIDResp{} }
func (m *GetUserTagByIDResp) String() string { return proto.CompactTextString(m) }
func (*GetUserTagByIDResp) ProtoMessage() {}
func (*GetUserTagByIDResp) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{17}
return fileDescriptor_office_f560032e7c752d4f, []int{17}
}
func (m *GetUserTagByIDResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetUserTagByIDResp.Unmarshal(m, b)
@ -968,7 +968,7 @@ func (m *LikeUser) Reset() { *m = LikeUser{} }
func (m *LikeUser) String() string { return proto.CompactTextString(m) }
func (*LikeUser) ProtoMessage() {}
func (*LikeUser) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{18}
return fileDescriptor_office_f560032e7c752d4f, []int{18}
}
func (m *LikeUser) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LikeUser.Unmarshal(m, b)
@ -1014,7 +1014,7 @@ func (m *NotificationUser) Reset() { *m = NotificationUser{} }
func (m *NotificationUser) String() string { return proto.CompactTextString(m) }
func (*NotificationUser) ProtoMessage() {}
func (*NotificationUser) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{19}
return fileDescriptor_office_f560032e7c752d4f, []int{19}
}
func (m *NotificationUser) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_NotificationUser.Unmarshal(m, b)
@ -1066,7 +1066,7 @@ func (m *Comment) Reset() { *m = Comment{} }
func (m *Comment) String() string { return proto.CompactTextString(m) }
func (*Comment) ProtoMessage() {}
func (*Comment) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{20}
return fileDescriptor_office_f560032e7c752d4f, []int{20}
}
func (m *Comment) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_Comment.Unmarshal(m, b)
@ -1154,7 +1154,7 @@ func (m *PermissionGroup) Reset() { *m = PermissionGroup{} }
func (m *PermissionGroup) String() string { return proto.CompactTextString(m) }
func (*PermissionGroup) ProtoMessage() {}
func (*PermissionGroup) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{21}
return fileDescriptor_office_f560032e7c752d4f, []int{21}
}
func (m *PermissionGroup) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_PermissionGroup.Unmarshal(m, b)
@ -1200,7 +1200,7 @@ func (m *WorkMomentUser) Reset() { *m = WorkMomentUser{} }
func (m *WorkMomentUser) String() string { return proto.CompactTextString(m) }
func (*WorkMomentUser) ProtoMessage() {}
func (*WorkMomentUser) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{22}
return fileDescriptor_office_f560032e7c752d4f, []int{22}
}
func (m *WorkMomentUser) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WorkMomentUser.Unmarshal(m, b)
@ -1256,7 +1256,7 @@ func (m *WorkMoment) Reset() { *m = WorkMoment{} }
func (m *WorkMoment) String() string { return proto.CompactTextString(m) }
func (*WorkMoment) ProtoMessage() {}
func (*WorkMoment) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{23}
return fileDescriptor_office_f560032e7c752d4f, []int{23}
}
func (m *WorkMoment) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WorkMoment.Unmarshal(m, b)
@ -1372,7 +1372,7 @@ func (m *CreateOneWorkMomentReq) Reset() { *m = CreateOneWorkMomentReq{}
func (m *CreateOneWorkMomentReq) String() string { return proto.CompactTextString(m) }
func (*CreateOneWorkMomentReq) ProtoMessage() {}
func (*CreateOneWorkMomentReq) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{24}
return fileDescriptor_office_f560032e7c752d4f, []int{24}
}
func (m *CreateOneWorkMomentReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateOneWorkMomentReq.Unmarshal(m, b)
@ -1417,7 +1417,7 @@ func (m *CreateOneWorkMomentResp) Reset() { *m = CreateOneWorkMomentResp
func (m *CreateOneWorkMomentResp) String() string { return proto.CompactTextString(m) }
func (*CreateOneWorkMomentResp) ProtoMessage() {}
func (*CreateOneWorkMomentResp) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{25}
return fileDescriptor_office_f560032e7c752d4f, []int{25}
}
func (m *CreateOneWorkMomentResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CreateOneWorkMomentResp.Unmarshal(m, b)
@ -1457,7 +1457,7 @@ func (m *DeleteOneWorkMomentReq) Reset() { *m = DeleteOneWorkMomentReq{}
func (m *DeleteOneWorkMomentReq) String() string { return proto.CompactTextString(m) }
func (*DeleteOneWorkMomentReq) ProtoMessage() {}
func (*DeleteOneWorkMomentReq) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{26}
return fileDescriptor_office_f560032e7c752d4f, []int{26}
}
func (m *DeleteOneWorkMomentReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteOneWorkMomentReq.Unmarshal(m, b)
@ -1509,7 +1509,7 @@ func (m *DeleteOneWorkMomentResp) Reset() { *m = DeleteOneWorkMomentResp
func (m *DeleteOneWorkMomentResp) String() string { return proto.CompactTextString(m) }
func (*DeleteOneWorkMomentResp) ProtoMessage() {}
func (*DeleteOneWorkMomentResp) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{27}
return fileDescriptor_office_f560032e7c752d4f, []int{27}
}
func (m *DeleteOneWorkMomentResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteOneWorkMomentResp.Unmarshal(m, b)
@ -1549,7 +1549,7 @@ func (m *LikeOneWorkMomentReq) Reset() { *m = LikeOneWorkMomentReq{} }
func (m *LikeOneWorkMomentReq) String() string { return proto.CompactTextString(m) }
func (*LikeOneWorkMomentReq) ProtoMessage() {}
func (*LikeOneWorkMomentReq) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{28}
return fileDescriptor_office_f560032e7c752d4f, []int{28}
}
func (m *LikeOneWorkMomentReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LikeOneWorkMomentReq.Unmarshal(m, b)
@ -1601,7 +1601,7 @@ func (m *LikeOneWorkMomentResp) Reset() { *m = LikeOneWorkMomentResp{} }
func (m *LikeOneWorkMomentResp) String() string { return proto.CompactTextString(m) }
func (*LikeOneWorkMomentResp) ProtoMessage() {}
func (*LikeOneWorkMomentResp) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{29}
return fileDescriptor_office_f560032e7c752d4f, []int{29}
}
func (m *LikeOneWorkMomentResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_LikeOneWorkMomentResp.Unmarshal(m, b)
@ -1643,7 +1643,7 @@ func (m *CommentOneWorkMomentReq) Reset() { *m = CommentOneWorkMomentReq
func (m *CommentOneWorkMomentReq) String() string { return proto.CompactTextString(m) }
func (*CommentOneWorkMomentReq) ProtoMessage() {}
func (*CommentOneWorkMomentReq) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{30}
return fileDescriptor_office_f560032e7c752d4f, []int{30}
}
func (m *CommentOneWorkMomentReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommentOneWorkMomentReq.Unmarshal(m, b)
@ -1709,7 +1709,7 @@ func (m *CommentOneWorkMomentResp) Reset() { *m = CommentOneWorkMomentRe
func (m *CommentOneWorkMomentResp) String() string { return proto.CompactTextString(m) }
func (*CommentOneWorkMomentResp) ProtoMessage() {}
func (*CommentOneWorkMomentResp) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{31}
return fileDescriptor_office_f560032e7c752d4f, []int{31}
}
func (m *CommentOneWorkMomentResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_CommentOneWorkMomentResp.Unmarshal(m, b)
@ -1736,6 +1736,106 @@ func (m *CommentOneWorkMomentResp) GetCommonResp() *CommonResp {
return nil
}
type DeleteCommentReq struct {
WorkMomentID string `protobuf:"bytes,1,opt,name=workMomentID" json:"workMomentID,omitempty"`
ContentID string `protobuf:"bytes,2,opt,name=contentID" json:"contentID,omitempty"`
OpUserID string `protobuf:"bytes,3,opt,name=opUserID" json:"opUserID,omitempty"`
OperationID string `protobuf:"bytes,4,opt,name=operationID" json:"operationID,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *DeleteCommentReq) Reset() { *m = DeleteCommentReq{} }
func (m *DeleteCommentReq) String() string { return proto.CompactTextString(m) }
func (*DeleteCommentReq) ProtoMessage() {}
func (*DeleteCommentReq) Descriptor() ([]byte, []int) {
return fileDescriptor_office_f560032e7c752d4f, []int{32}
}
func (m *DeleteCommentReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteCommentReq.Unmarshal(m, b)
}
func (m *DeleteCommentReq) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_DeleteCommentReq.Marshal(b, m, deterministic)
}
func (dst *DeleteCommentReq) XXX_Merge(src proto.Message) {
xxx_messageInfo_DeleteCommentReq.Merge(dst, src)
}
func (m *DeleteCommentReq) XXX_Size() int {
return xxx_messageInfo_DeleteCommentReq.Size(m)
}
func (m *DeleteCommentReq) XXX_DiscardUnknown() {
xxx_messageInfo_DeleteCommentReq.DiscardUnknown(m)
}
var xxx_messageInfo_DeleteCommentReq proto.InternalMessageInfo
func (m *DeleteCommentReq) GetWorkMomentID() string {
if m != nil {
return m.WorkMomentID
}
return ""
}
func (m *DeleteCommentReq) GetContentID() string {
if m != nil {
return m.ContentID
}
return ""
}
func (m *DeleteCommentReq) GetOpUserID() string {
if m != nil {
return m.OpUserID
}
return ""
}
func (m *DeleteCommentReq) GetOperationID() string {
if m != nil {
return m.OperationID
}
return ""
}
type DeleteCommentResp struct {
CommonResp *CommonResp `protobuf:"bytes,1,opt,name=commonResp" json:"commonResp,omitempty"`
XXX_NoUnkeyedLiteral struct{} `json:"-"`
XXX_unrecognized []byte `json:"-"`
XXX_sizecache int32 `json:"-"`
}
func (m *DeleteCommentResp) Reset() { *m = DeleteCommentResp{} }
func (m *DeleteCommentResp) String() string { return proto.CompactTextString(m) }
func (*DeleteCommentResp) ProtoMessage() {}
func (*DeleteCommentResp) Descriptor() ([]byte, []int) {
return fileDescriptor_office_f560032e7c752d4f, []int{33}
}
func (m *DeleteCommentResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_DeleteCommentResp.Unmarshal(m, b)
}
func (m *DeleteCommentResp) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) {
return xxx_messageInfo_DeleteCommentResp.Marshal(b, m, deterministic)
}
func (dst *DeleteCommentResp) XXX_Merge(src proto.Message) {
xxx_messageInfo_DeleteCommentResp.Merge(dst, src)
}
func (m *DeleteCommentResp) XXX_Size() int {
return xxx_messageInfo_DeleteCommentResp.Size(m)
}
func (m *DeleteCommentResp) XXX_DiscardUnknown() {
xxx_messageInfo_DeleteCommentResp.DiscardUnknown(m)
}
var xxx_messageInfo_DeleteCommentResp proto.InternalMessageInfo
func (m *DeleteCommentResp) GetCommonResp() *CommonResp {
if m != nil {
return m.CommonResp
}
return nil
}
type GetWorkMomentByIDReq struct {
WorkMomentID string `protobuf:"bytes,1,opt,name=workMomentID" json:"workMomentID,omitempty"`
OpUserID string `protobuf:"bytes,2,opt,name=opUserID" json:"opUserID,omitempty"`
@ -1749,7 +1849,7 @@ func (m *GetWorkMomentByIDReq) Reset() { *m = GetWorkMomentByIDReq{} }
func (m *GetWorkMomentByIDReq) String() string { return proto.CompactTextString(m) }
func (*GetWorkMomentByIDReq) ProtoMessage() {}
func (*GetWorkMomentByIDReq) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{32}
return fileDescriptor_office_f560032e7c752d4f, []int{34}
}
func (m *GetWorkMomentByIDReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetWorkMomentByIDReq.Unmarshal(m, b)
@ -1802,7 +1902,7 @@ func (m *GetWorkMomentByIDResp) Reset() { *m = GetWorkMomentByIDResp{} }
func (m *GetWorkMomentByIDResp) String() string { return proto.CompactTextString(m) }
func (*GetWorkMomentByIDResp) ProtoMessage() {}
func (*GetWorkMomentByIDResp) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{33}
return fileDescriptor_office_f560032e7c752d4f, []int{35}
}
func (m *GetWorkMomentByIDResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetWorkMomentByIDResp.Unmarshal(m, b)
@ -1851,7 +1951,7 @@ func (m *ChangeWorkMomentPermissionReq) Reset() { *m = ChangeWorkMomentP
func (m *ChangeWorkMomentPermissionReq) String() string { return proto.CompactTextString(m) }
func (*ChangeWorkMomentPermissionReq) ProtoMessage() {}
func (*ChangeWorkMomentPermissionReq) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{34}
return fileDescriptor_office_f560032e7c752d4f, []int{36}
}
func (m *ChangeWorkMomentPermissionReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ChangeWorkMomentPermissionReq.Unmarshal(m, b)
@ -1917,7 +2017,7 @@ func (m *ChangeWorkMomentPermissionResp) Reset() { *m = ChangeWorkMoment
func (m *ChangeWorkMomentPermissionResp) String() string { return proto.CompactTextString(m) }
func (*ChangeWorkMomentPermissionResp) ProtoMessage() {}
func (*ChangeWorkMomentPermissionResp) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{35}
return fileDescriptor_office_f560032e7c752d4f, []int{37}
}
func (m *ChangeWorkMomentPermissionResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_ChangeWorkMomentPermissionResp.Unmarshal(m, b)
@ -1958,7 +2058,7 @@ func (m *GetUserWorkMomentsReq) Reset() { *m = GetUserWorkMomentsReq{} }
func (m *GetUserWorkMomentsReq) String() string { return proto.CompactTextString(m) }
func (*GetUserWorkMomentsReq) ProtoMessage() {}
func (*GetUserWorkMomentsReq) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{36}
return fileDescriptor_office_f560032e7c752d4f, []int{38}
}
func (m *GetUserWorkMomentsReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetUserWorkMomentsReq.Unmarshal(m, b)
@ -2019,7 +2119,7 @@ func (m *GetUserWorkMomentsResp) Reset() { *m = GetUserWorkMomentsResp{}
func (m *GetUserWorkMomentsResp) String() string { return proto.CompactTextString(m) }
func (*GetUserWorkMomentsResp) ProtoMessage() {}
func (*GetUserWorkMomentsResp) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{37}
return fileDescriptor_office_f560032e7c752d4f, []int{39}
}
func (m *GetUserWorkMomentsResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetUserWorkMomentsResp.Unmarshal(m, b)
@ -2073,7 +2173,7 @@ func (m *GetUserFriendWorkMomentsReq) Reset() { *m = GetUserFriendWorkMo
func (m *GetUserFriendWorkMomentsReq) String() string { return proto.CompactTextString(m) }
func (*GetUserFriendWorkMomentsReq) ProtoMessage() {}
func (*GetUserFriendWorkMomentsReq) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{38}
return fileDescriptor_office_f560032e7c752d4f, []int{40}
}
func (m *GetUserFriendWorkMomentsReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetUserFriendWorkMomentsReq.Unmarshal(m, b)
@ -2127,7 +2227,7 @@ func (m *GetUserFriendWorkMomentsResp) Reset() { *m = GetUserFriendWorkM
func (m *GetUserFriendWorkMomentsResp) String() string { return proto.CompactTextString(m) }
func (*GetUserFriendWorkMomentsResp) ProtoMessage() {}
func (*GetUserFriendWorkMomentsResp) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{39}
return fileDescriptor_office_f560032e7c752d4f, []int{41}
}
func (m *GetUserFriendWorkMomentsResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_GetUserFriendWorkMomentsResp.Unmarshal(m, b)
@ -2189,7 +2289,7 @@ func (m *WorkMomentNotificationMsg) Reset() { *m = WorkMomentNotificatio
func (m *WorkMomentNotificationMsg) String() string { return proto.CompactTextString(m) }
func (*WorkMomentNotificationMsg) ProtoMessage() {}
func (*WorkMomentNotificationMsg) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{40}
return fileDescriptor_office_f560032e7c752d4f, []int{42}
}
func (m *WorkMomentNotificationMsg) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_WorkMomentNotificationMsg.Unmarshal(m, b)
@ -2299,7 +2399,7 @@ func (m *SetUserWorkMomentsLevelReq) Reset() { *m = SetUserWorkMomentsLe
func (m *SetUserWorkMomentsLevelReq) String() string { return proto.CompactTextString(m) }
func (*SetUserWorkMomentsLevelReq) ProtoMessage() {}
func (*SetUserWorkMomentsLevelReq) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{41}
return fileDescriptor_office_f560032e7c752d4f, []int{43}
}
func (m *SetUserWorkMomentsLevelReq) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SetUserWorkMomentsLevelReq.Unmarshal(m, b)
@ -2351,7 +2451,7 @@ func (m *SetUserWorkMomentsLevelResp) Reset() { *m = SetUserWorkMomentsL
func (m *SetUserWorkMomentsLevelResp) String() string { return proto.CompactTextString(m) }
func (*SetUserWorkMomentsLevelResp) ProtoMessage() {}
func (*SetUserWorkMomentsLevelResp) Descriptor() ([]byte, []int) {
return fileDescriptor_office_45d86d1784e03bf7, []int{42}
return fileDescriptor_office_f560032e7c752d4f, []int{44}
}
func (m *SetUserWorkMomentsLevelResp) XXX_Unmarshal(b []byte) error {
return xxx_messageInfo_SetUserWorkMomentsLevelResp.Unmarshal(m, b)
@ -2411,6 +2511,8 @@ func init() {
proto.RegisterType((*LikeOneWorkMomentResp)(nil), "office.LikeOneWorkMomentResp")
proto.RegisterType((*CommentOneWorkMomentReq)(nil), "office.CommentOneWorkMomentReq")
proto.RegisterType((*CommentOneWorkMomentResp)(nil), "office.CommentOneWorkMomentResp")
proto.RegisterType((*DeleteCommentReq)(nil), "office.DeleteCommentReq")
proto.RegisterType((*DeleteCommentResp)(nil), "office.DeleteCommentResp")
proto.RegisterType((*GetWorkMomentByIDReq)(nil), "office.GetWorkMomentByIDReq")
proto.RegisterType((*GetWorkMomentByIDResp)(nil), "office.GetWorkMomentByIDResp")
proto.RegisterType((*ChangeWorkMomentPermissionReq)(nil), "office.ChangeWorkMomentPermissionReq")
@ -2446,6 +2548,7 @@ type OfficeServiceClient interface {
DeleteOneWorkMoment(ctx context.Context, in *DeleteOneWorkMomentReq, opts ...grpc.CallOption) (*DeleteOneWorkMomentResp, error)
LikeOneWorkMoment(ctx context.Context, in *LikeOneWorkMomentReq, opts ...grpc.CallOption) (*LikeOneWorkMomentResp, error)
CommentOneWorkMoment(ctx context.Context, in *CommentOneWorkMomentReq, opts ...grpc.CallOption) (*CommentOneWorkMomentResp, error)
DeleteComment(ctx context.Context, in *DeleteCommentReq, opts ...grpc.CallOption) (*DeleteCommentResp, error)
GetWorkMomentByID(ctx context.Context, in *GetWorkMomentByIDReq, opts ...grpc.CallOption) (*GetWorkMomentByIDResp, error)
ChangeWorkMomentPermission(ctx context.Context, in *ChangeWorkMomentPermissionReq, opts ...grpc.CallOption) (*ChangeWorkMomentPermissionResp, error)
// / user self
@ -2562,6 +2665,15 @@ func (c *officeServiceClient) CommentOneWorkMoment(ctx context.Context, in *Comm
return out, nil
}
func (c *officeServiceClient) DeleteComment(ctx context.Context, in *DeleteCommentReq, opts ...grpc.CallOption) (*DeleteCommentResp, error) {
out := new(DeleteCommentResp)
err := grpc.Invoke(ctx, "/office.OfficeService/DeleteComment", in, out, c.cc, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *officeServiceClient) GetWorkMomentByID(ctx context.Context, in *GetWorkMomentByIDReq, opts ...grpc.CallOption) (*GetWorkMomentByIDResp, error) {
out := new(GetWorkMomentByIDResp)
err := grpc.Invoke(ctx, "/office.OfficeService/GetWorkMomentByID", in, out, c.cc, opts...)
@ -2621,6 +2733,7 @@ type OfficeServiceServer interface {
DeleteOneWorkMoment(context.Context, *DeleteOneWorkMomentReq) (*DeleteOneWorkMomentResp, error)
LikeOneWorkMoment(context.Context, *LikeOneWorkMomentReq) (*LikeOneWorkMomentResp, error)
CommentOneWorkMoment(context.Context, *CommentOneWorkMomentReq) (*CommentOneWorkMomentResp, error)
DeleteComment(context.Context, *DeleteCommentReq) (*DeleteCommentResp, error)
GetWorkMomentByID(context.Context, *GetWorkMomentByIDReq) (*GetWorkMomentByIDResp, error)
ChangeWorkMomentPermission(context.Context, *ChangeWorkMomentPermissionReq) (*ChangeWorkMomentPermissionResp, error)
// / user self
@ -2832,6 +2945,24 @@ func _OfficeService_CommentOneWorkMoment_Handler(srv interface{}, ctx context.Co
return interceptor(ctx, in, info, handler)
}
func _OfficeService_DeleteComment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(DeleteCommentReq)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(OfficeServiceServer).DeleteComment(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/office.OfficeService/DeleteComment",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(OfficeServiceServer).DeleteComment(ctx, req.(*DeleteCommentReq))
}
return interceptor(ctx, in, info, handler)
}
func _OfficeService_GetWorkMomentByID_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(GetWorkMomentByIDReq)
if err := dec(in); err != nil {
@ -2970,6 +3101,10 @@ var _OfficeService_serviceDesc = grpc.ServiceDesc{
MethodName: "CommentOneWorkMoment",
Handler: _OfficeService_CommentOneWorkMoment_Handler,
},
{
MethodName: "DeleteComment",
Handler: _OfficeService_DeleteComment_Handler,
},
{
MethodName: "GetWorkMomentByID",
Handler: _OfficeService_GetWorkMomentByID_Handler,
@ -2995,110 +3130,113 @@ var _OfficeService_serviceDesc = grpc.ServiceDesc{
Metadata: "office/office.proto",
}
func init() { proto.RegisterFile("office/office.proto", fileDescriptor_office_45d86d1784e03bf7) }
var fileDescriptor_office_45d86d1784e03bf7 = []byte{
// 1621 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x59, 0x4f, 0x6f, 0xdc, 0x44,
0x14, 0x97, 0x77, 0xb3, 0xd9, 0xec, 0xdb, 0xb4, 0x69, 0x26, 0xff, 0xb6, 0x6e, 0x93, 0x06, 0xb7,
0x45, 0x15, 0xa0, 0x04, 0x85, 0x0a, 0x21, 0x10, 0x15, 0x6a, 0xb6, 0x8d, 0x16, 0xb2, 0x6d, 0x70,
0x12, 0x2a, 0x38, 0x10, 0xb9, 0x9b, 0x89, 0xb1, 0xb2, 0xb1, 0x5d, 0x8f, 0x93, 0xd0, 0x13, 0x52,
0xcf, 0x70, 0xe2, 0xcc, 0xa7, 0xe0, 0x33, 0x70, 0xe0, 0x84, 0x38, 0xf0, 0x0d, 0xf8, 0x0e, 0x5c,
0xd1, 0x8c, 0xed, 0xf9, 0x63, 0x8f, 0x77, 0x17, 0x17, 0x0e, 0x9c, 0xd6, 0xef, 0xcd, 0x9b, 0x37,
0xef, 0xfd, 0xe6, 0xcd, 0x9b, 0x37, 0x6f, 0x61, 0x21, 0x38, 0x39, 0xf1, 0x06, 0x78, 0x33, 0xf9,
0xd9, 0x08, 0xa3, 0x20, 0x0e, 0xd0, 0x74, 0x42, 0x99, 0x6f, 0x3c, 0x0d, 0xb1, 0x7f, 0xd4, 0xeb,
0x6f, 0x86, 0xa7, 0xee, 0x26, 0x1b, 0xda, 0x24, 0xc7, 0xa7, 0x47, 0x97, 0x64, 0xf3, 0x92, 0x24,
0xa2, 0xd6, 0x03, 0x80, 0xed, 0xe0, 0xec, 0x2c, 0xf0, 0x6d, 0x4c, 0x42, 0xd4, 0x81, 0x26, 0x8e,
0xa2, 0xed, 0xe0, 0x18, 0x77, 0x8c, 0x75, 0xe3, 0x5e, 0xc3, 0xce, 0x48, 0xb4, 0x0c, 0xd3, 0x38,
0x8a, 0xfa, 0xc4, 0xed, 0xd4, 0xd6, 0x8d, 0x7b, 0x2d, 0x3b, 0xa5, 0xac, 0x8f, 0xa1, 0x79, 0xe0,
0xb8, 0x87, 0x04, 0x47, 0x54, 0xe4, 0x9c, 0xe0, 0xa8, 0xd7, 0x65, 0x73, 0x5b, 0x76, 0x4a, 0x21,
0x13, 0x66, 0xe8, 0xd7, 0x13, 0xe7, 0x0c, 0xa7, 0x93, 0x39, 0x6d, 0x3d, 0x87, 0xfa, 0x81, 0xe3,
0xa2, 0x45, 0x68, 0xc4, 0x8e, 0xcb, 0x67, 0x26, 0x04, 0xb5, 0x26, 0x76, 0x5c, 0x69, 0x5e, 0x46,
0xa2, 0xb7, 0x13, 0x95, 0xbb, 0x1e, 0x89, 0x3b, 0xf5, 0xf5, 0xfa, 0xbd, 0xf6, 0xd6, 0xdc, 0x46,
0x8a, 0x40, 0x6a, 0x8d, 0xcd, 0x05, 0xac, 0x4f, 0xe1, 0xea, 0x0e, 0x8e, 0x29, 0xf3, 0xc0, 0x71,
0x89, 0x8d, 0x5f, 0x94, 0x5a, 0xba, 0x0e, 0xed, 0x20, 0xc4, 0x91, 0x13, 0x7b, 0x81, 0xdf, 0xeb,
0xa6, 0x8b, 0xca, 0x2c, 0xeb, 0x04, 0xe6, 0x14, 0x5d, 0x24, 0x44, 0x5b, 0x00, 0x03, 0x8e, 0x20,
0x53, 0xd8, 0xde, 0x42, 0x99, 0x35, 0x02, 0x5b, 0x5b, 0x92, 0x42, 0xb7, 0x60, 0x2a, 0x76, 0x5c,
0xd2, 0xa9, 0x31, 0xdb, 0xdb, 0x92, 0xed, 0x36, 0x1b, 0xb0, 0x5e, 0x19, 0x30, 0xbb, 0x1d, 0x61,
0x27, 0xc6, 0x94, 0x87, 0x5f, 0xc8, 0x58, 0x18, 0x2a, 0x16, 0xc2, 0x99, 0x9a, 0xe2, 0xcc, 0x1a,
0x40, 0xf2, 0xc5, 0x51, 0x6a, 0xd9, 0x12, 0x27, 0xef, 0xec, 0x54, 0xd1, 0xd9, 0x6d, 0xb8, 0x22,
0xd9, 0x50, 0xcd, 0x55, 0xeb, 0x6b, 0x98, 0xed, 0xe2, 0x21, 0xe6, 0x8e, 0x94, 0x61, 0xcf, 0x43,
0xa0, 0x26, 0x87, 0x40, 0xce, 0xc8, 0xba, 0xd6, 0x48, 0x49, 0x7f, 0x45, 0x23, 0x7f, 0x37, 0xa0,
0xb5, 0x8f, 0xe3, 0x4a, 0x26, 0x76, 0xa0, 0xe9, 0xe3, 0x4b, 0xb6, 0x33, 0x89, 0x79, 0x19, 0x89,
0x36, 0x00, 0x79, 0xfe, 0x20, 0xc2, 0x0e, 0xc1, 0x87, 0x62, 0x27, 0xa6, 0xd8, 0x4e, 0x68, 0x46,
0xd0, 0x5b, 0x70, 0x2d, 0xc2, 0xc7, 0xe7, 0x03, 0x59, 0xba, 0xc1, 0xa4, 0x0b, 0xfc, 0x3c, 0x30,
0xd3, 0x45, 0x60, 0x3e, 0x01, 0xc8, 0x5c, 0xaa, 0x88, 0xca, 0x9f, 0x06, 0x5c, 0xdd, 0xc7, 0xfe,
0x71, 0x9f, 0xb8, 0x5b, 0x4a, 0x18, 0x32, 0xcb, 0x0c, 0x66, 0x59, 0x46, 0xd2, 0x53, 0x7e, 0x98,
0x1d, 0xc9, 0x1a, 0x1b, 0xe2, 0x34, 0xba, 0x09, 0xad, 0x9d, 0x28, 0x38, 0x0f, 0xa5, 0x48, 0x14,
0x0c, 0x0a, 0x37, 0xc1, 0xfe, 0x31, 0x8f, 0xc1, 0x94, 0xa2, 0x70, 0xd0, 0x2f, 0x1c, 0xed, 0x0d,
0x9d, 0xf8, 0x24, 0x88, 0xce, 0x7a, 0xdd, 0x4e, 0x83, 0x65, 0xa5, 0x02, 0x9f, 0xda, 0x35, 0x08,
0xfc, 0x18, 0xfb, 0x71, 0x0a, 0x45, 0x46, 0xe6, 0x81, 0x6a, 0x16, 0x81, 0x7a, 0x04, 0x73, 0x8a,
0x97, 0x15, 0xd1, 0xfa, 0xd1, 0x80, 0xf9, 0x1d, 0x06, 0x38, 0xd5, 0xb6, 0x1b, 0x24, 0xa9, 0xa6,
0x0b, 0xb0, 0xe7, 0xb8, 0x9e, 0xcf, 0x16, 0x4b, 0x35, 0xdd, 0xd9, 0x20, 0x38, 0xba, 0xc0, 0xd1,
0x91, 0x13, 0x7a, 0x47, 0xa1, 0x13, 0x39, 0x67, 0x64, 0xc3, 0xc6, 0x2f, 0xce, 0x31, 0x89, 0x85,
0xac, 0x2d, 0xcd, 0x2b, 0x3d, 0xe3, 0xe3, 0x8f, 0x47, 0x00, 0x20, 0x2c, 0x52, 0xf2, 0xa6, 0x31,
0x26, 0x6f, 0xca, 0x98, 0xd6, 0x54, 0x4c, 0x4d, 0x98, 0xa1, 0x3b, 0x70, 0xe0, 0xa5, 0x31, 0x5f,
0xb7, 0x39, 0x6d, 0xfd, 0x62, 0x00, 0xca, 0xc3, 0x50, 0x31, 0x4b, 0x3e, 0x52, 0xb0, 0xab, 0xb1,
0x39, 0x77, 0xb5, 0xd8, 0x91, 0x30, 0xf0, 0x09, 0x2e, 0x01, 0xef, 0x3e, 0xb4, 0x63, 0x61, 0x4d,
0x7a, 0x5f, 0x20, 0xc9, 0xef, 0x74, 0xc8, 0x96, 0xc5, 0xac, 0x01, 0xdb, 0xcd, 0x34, 0xd3, 0x3f,
0x7c, 0xd9, 0xeb, 0xfe, 0x17, 0xc9, 0xcb, 0x65, 0x58, 0x29, 0x8b, 0x54, 0xc4, 0x6a, 0x15, 0xea,
0xb1, 0xe3, 0xa6, 0x20, 0x29, 0x17, 0x0a, 0xe5, 0x5b, 0x0f, 0x60, 0x66, 0xd7, 0x3b, 0xc5, 0x95,
0xef, 0xe9, 0xc7, 0x70, 0xed, 0x49, 0x10, 0x7b, 0x27, 0xde, 0x80, 0x99, 0x5e, 0x59, 0xcf, 0x5f,
0x06, 0x34, 0xa9, 0x07, 0x34, 0x8a, 0x2a, 0xcc, 0xa7, 0x31, 0x79, 0xe2, 0x0c, 0xf0, 0xa1, 0xbd,
0x9b, 0x25, 0xdb, 0x94, 0xa4, 0x60, 0x47, 0x38, 0x1c, 0xbe, 0x4c, 0x72, 0x64, 0x76, 0x9d, 0x49,
0x2c, 0x74, 0x07, 0xae, 0x70, 0x92, 0x29, 0x6f, 0x30, 0x19, 0x95, 0x49, 0x73, 0x55, 0x1a, 0xe6,
0x3c, 0xad, 0x0a, 0x86, 0x7c, 0x26, 0x9a, 0xea, 0x99, 0x58, 0x03, 0x18, 0x24, 0x97, 0x25, 0x3d,
0x15, 0x33, 0x2c, 0x4f, 0x49, 0x1c, 0xab, 0x07, 0x73, 0x7b, 0x38, 0x3a, 0xf3, 0x08, 0xf1, 0x02,
0x9f, 0x25, 0x3f, 0xba, 0x94, 0x4b, 0x3f, 0xa4, 0x5b, 0x5d, 0x30, 0xe8, 0x52, 0x8c, 0xe0, 0x51,
0x95, 0x91, 0x56, 0x17, 0xae, 0x3e, 0x0b, 0xa2, 0xd3, 0x7e, 0x40, 0x61, 0xac, 0xbc, 0x15, 0xdf,
0x4f, 0x01, 0x08, 0x35, 0xc8, 0x82, 0xd9, 0x4b, 0x4e, 0x71, 0x45, 0x0a, 0xaf, 0x34, 0x0d, 0xc9,
0xcb, 0xd4, 0xcb, 0x77, 0x6c, 0x4a, 0xdd, 0x31, 0x09, 0xcb, 0x86, 0x8a, 0xe5, 0x87, 0x30, 0x3b,
0x4c, 0xa3, 0x95, 0xa5, 0xaa, 0x69, 0x76, 0x64, 0x97, 0xb3, 0xa8, 0x56, 0x9d, 0xb7, 0x15, 0x59,
0x9a, 0xe2, 0x06, 0x49, 0x80, 0x91, 0x4e, 0x53, 0x4d, 0x71, 0x69, 0xe0, 0xd9, 0x5c, 0x80, 0x6e,
0x5a, 0xc8, 0x37, 0x25, 0xdb, 0x34, 0xc1, 0x41, 0x8f, 0x01, 0x09, 0x8a, 0x9b, 0xd3, 0x1a, 0x69,
0x8e, 0x66, 0x06, 0xea, 0xc1, 0x42, 0xa8, 0x6e, 0x3e, 0x53, 0x04, 0x4c, 0xd1, 0x4a, 0xa6, 0x28,
0x17, 0x1f, 0xb6, 0x6e, 0x0e, 0x7a, 0x1f, 0xc0, 0x89, 0xb9, 0x29, 0xed, 0x91, 0xa6, 0x48, 0x92,
0xb9, 0xf8, 0x9c, 0x2d, 0xc4, 0xa7, 0x0f, 0xcb, 0x49, 0xb1, 0xf7, 0xd4, 0xc7, 0x42, 0x0d, 0x4d,
0x7a, 0x5b, 0x00, 0x22, 0x0a, 0xf2, 0xe9, 0x48, 0x12, 0x95, 0xa4, 0x26, 0xa8, 0xa4, 0xfb, 0xb0,
0xa2, 0x5d, 0xaf, 0xe2, 0xed, 0x7b, 0x01, 0xcb, 0x49, 0x19, 0x58, 0x30, 0xff, 0x75, 0x02, 0x7b,
0x7c, 0x06, 0xef, 0xc3, 0x8a, 0x76, 0xdd, 0x8a, 0x6e, 0xc4, 0xb0, 0x48, 0xf3, 0x74, 0xc1, 0x89,
0xb2, 0x03, 0x6e, 0xc1, 0xec, 0x33, 0xd9, 0xb9, 0xc4, 0x7c, 0x85, 0x37, 0x81, 0x13, 0x9f, 0xc1,
0x92, 0x66, 0xd5, 0x8a, 0x2e, 0xfc, 0x6c, 0xc0, 0x4a, 0x7a, 0xd2, 0xfe, 0x89, 0x1b, 0x97, 0x1a,
0x37, 0x2e, 0x73, 0x6e, 0xc8, 0x09, 0xbe, 0x5e, 0x4c, 0xf0, 0x52, 0x42, 0x99, 0x1a, 0x59, 0x04,
0x36, 0x8a, 0x10, 0x3c, 0x81, 0x8e, 0xde, 0xe8, 0x8a, 0x28, 0x7c, 0x0b, 0x8b, 0x3b, 0x38, 0x16,
0x8a, 0xb2, 0x0a, 0x62, 0x92, 0x68, 0x34, 0x61, 0x26, 0x08, 0x0f, 0xe5, 0x78, 0xe4, 0xf4, 0x04,
0x9b, 0xf9, 0x1d, 0x2c, 0x69, 0x56, 0xae, 0x58, 0x56, 0xa8, 0x67, 0xbf, 0x36, 0xc9, 0xd9, 0xb7,
0xfe, 0x30, 0x60, 0x75, 0xfb, 0x1b, 0xc7, 0x77, 0x25, 0x1c, 0x45, 0x6a, 0xfb, 0x37, 0x40, 0x50,
0xd3, 0x76, 0xbd, 0x90, 0xb6, 0xb7, 0x60, 0x51, 0x4d, 0xc2, 0xca, 0xd3, 0x4b, 0x3b, 0x36, 0x41,
0x88, 0x1c, 0xc0, 0xda, 0x28, 0xb7, 0xaa, 0x1f, 0x97, 0xa5, 0xb4, 0x06, 0x14, 0x7a, 0x47, 0x76,
0x29, 0x46, 0x21, 0xa3, 0x3e, 0x37, 0xea, 0x15, 0x9f, 0x1b, 0xe3, 0x5b, 0x03, 0xbf, 0x1a, 0xb0,
0xac, 0xb3, 0xba, 0x62, 0x98, 0xdd, 0x87, 0xb6, 0xd8, 0xfc, 0xac, 0x2d, 0xa2, 0x8b, 0x33, 0x59,
0x2c, 0xf7, 0x3e, 0xa8, 0x57, 0x7c, 0x1f, 0x58, 0x3f, 0x19, 0x70, 0x23, 0xf5, 0xe5, 0x71, 0xe4,
0x61, 0xff, 0x78, 0xc2, 0x7d, 0xe8, 0x6a, 0x9e, 0x27, 0xaf, 0x8d, 0xb5, 0xe6, 0x40, 0xff, 0x66,
0xc0, 0xcd, 0x72, 0xfb, 0xfe, 0x8f, 0x88, 0xff, 0x50, 0x87, 0xeb, 0x62, 0x09, 0xf9, 0x61, 0xd1,
0x27, 0x2e, 0x7a, 0x17, 0x16, 0x7c, 0x95, 0x75, 0xf0, 0x32, 0xcc, 0x1a, 0x92, 0xba, 0xa1, 0x62,
0x65, 0x5f, 0xd3, 0x55, 0xf6, 0xaf, 0x73, 0x81, 0x28, 0xaf, 0x82, 0x46, 0xfe, 0x55, 0x90, 0xcf,
0x67, 0xd3, 0x23, 0x4b, 0x8c, 0x66, 0x69, 0xed, 0x3c, 0x53, 0x5e, 0x3b, 0xb7, 0xd4, 0xda, 0xf9,
0x1d, 0x98, 0x17, 0xda, 0xb7, 0x53, 0x9b, 0x81, 0xc9, 0x14, 0x07, 0x72, 0xb5, 0x5f, 0xbb, 0x50,
0xfb, 0x0d, 0xc1, 0xdc, 0x2f, 0x1c, 0xe6, 0x5d, 0x7c, 0x81, 0x87, 0x63, 0x1e, 0xbd, 0x43, 0x2a,
0xc3, 0xd0, 0x6e, 0xd8, 0x09, 0x31, 0x41, 0x3c, 0x7f, 0x0e, 0x37, 0x4a, 0x57, 0xab, 0x16, 0xcd,
0x5b, 0xaf, 0x00, 0xae, 0x3c, 0x65, 0x12, 0xfb, 0x38, 0xba, 0xf0, 0x06, 0x18, 0x3d, 0x80, 0xb6,
0xd4, 0xa8, 0x45, 0xbc, 0x42, 0x56, 0x3b, 0xc1, 0xe6, 0x8a, 0x96, 0x4f, 0x42, 0xf4, 0x01, 0xb4,
0x78, 0xef, 0x13, 0x2d, 0xf2, 0xe5, 0xa5, 0x96, 0xac, 0xb9, 0xa4, 0xe1, 0x26, 0x33, 0x79, 0x43,
0x52, 0xcc, 0x94, 0x7b, 0xa0, 0x62, 0xa6, 0xda, 0xb9, 0xdc, 0x84, 0xe9, 0xa4, 0x63, 0x87, 0xe6,
0x33, 0x01, 0xde, 0x94, 0x34, 0x51, 0x9e, 0x45, 0x42, 0xea, 0xa4, 0xd4, 0xb9, 0x12, 0x4e, 0xaa,
0x4d, 0x3b, 0xe1, 0x64, 0xbe, 0xcd, 0xb5, 0xc3, 0x3a, 0xe3, 0x52, 0xab, 0x06, 0x5d, 0x97, 0xf0,
0x50, 0x3b, 0x59, 0xa6, 0x59, 0x36, 0xc4, 0x15, 0x49, 0x7d, 0x0c, 0x45, 0x91, 0xda, 0x44, 0x51,
0x14, 0xe5, 0x5b, 0x1f, 0x5f, 0xc0, 0x82, 0xe6, 0x55, 0x80, 0xd6, 0x54, 0xa8, 0xf3, 0x75, 0xa5,
0x79, 0x6b, 0xe4, 0x78, 0xa2, 0x57, 0x53, 0xa6, 0x0b, 0xbd, 0xfa, 0xb7, 0x83, 0xd0, 0x5b, 0x56,
0xe3, 0xef, 0xc1, 0x7c, 0xa1, 0x72, 0x46, 0x37, 0xb3, 0x59, 0xba, 0x52, 0xde, 0x5c, 0x1d, 0x31,
0x4a, 0x42, 0xf4, 0x25, 0x2c, 0xea, 0x0a, 0x51, 0x74, 0x2b, 0xf7, 0x8a, 0x2d, 0xe8, 0x5d, 0x1f,
0x2d, 0x90, 0x18, 0x5b, 0xa8, 0x0c, 0x85, 0xb1, 0xba, 0x72, 0x55, 0x18, 0xab, 0x2f, 0x29, 0x4f,
0xc1, 0x2c, 0x2f, 0x89, 0xd0, 0x5d, 0x6e, 0xd1, 0xa8, 0x6a, 0xd0, 0x7c, 0x73, 0x12, 0x31, 0x12,
0xa2, 0x7d, 0xde, 0x2c, 0x93, 0xf2, 0x06, 0x5a, 0xcd, 0x45, 0x93, 0x7a, 0x79, 0x9b, 0x6b, 0xa3,
0x86, 0x49, 0x88, 0x30, 0x74, 0xca, 0xee, 0x56, 0x74, 0x3b, 0x37, 0x57, 0x57, 0x1d, 0x98, 0x77,
0xc6, 0x0b, 0x91, 0x10, 0x3d, 0x87, 0x95, 0x92, 0x9c, 0x87, 0x2c, 0xe9, 0x60, 0x97, 0xa4, 0x60,
0xf3, 0xf6, 0x58, 0x19, 0x12, 0x3e, 0x9c, 0xff, 0x6a, 0x6e, 0x23, 0xfd, 0x1f, 0xf0, 0xa3, 0xe4,
0xe7, 0xf9, 0x34, 0xfb, 0x93, 0xef, 0xbd, 0xbf, 0x03, 0x00, 0x00, 0xff, 0xff, 0x01, 0xfa, 0xac,
0xd6, 0x26, 0x1c, 0x00, 0x00,
func init() { proto.RegisterFile("office/office.proto", fileDescriptor_office_f560032e7c752d4f) }
var fileDescriptor_office_f560032e7c752d4f = []byte{
// 1673 bytes of a gzipped FileDescriptorProto
0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xd4, 0x59, 0xdf, 0x6f, 0xdc, 0xc4,
0x13, 0x97, 0xef, 0x72, 0xb9, 0xdc, 0x5c, 0xda, 0x34, 0x9b, 0x5f, 0x57, 0xb7, 0x49, 0xf3, 0x75,
0xdb, 0xaf, 0x2a, 0x40, 0x09, 0x0a, 0x15, 0x42, 0x20, 0x2a, 0xd4, 0x5c, 0x1b, 0x1d, 0xe4, 0xda,
0xe0, 0x24, 0x54, 0xf0, 0x40, 0xe4, 0x5e, 0x36, 0xc6, 0xca, 0xc5, 0x76, 0xbd, 0x4e, 0x42, 0x9f,
0x90, 0x78, 0x86, 0x17, 0x78, 0xe6, 0xaf, 0xe0, 0x6f, 0x40, 0x82, 0x27, 0xc4, 0x03, 0xff, 0x01,
0xff, 0x03, 0xaf, 0x68, 0xd7, 0xf6, 0xfe, 0xb0, 0xd7, 0x77, 0x87, 0x0b, 0x0f, 0x3c, 0x9d, 0x67,
0x77, 0x76, 0x76, 0xe6, 0xb3, 0xb3, 0xb3, 0x33, 0x73, 0xb0, 0x10, 0x9c, 0x9c, 0x78, 0x03, 0xbc,
0x99, 0xfc, 0x6c, 0x84, 0x51, 0x10, 0x07, 0x68, 0x3a, 0xa1, 0xcc, 0xff, 0x3d, 0x0d, 0xb1, 0x7f,
0xd4, 0xeb, 0x6f, 0x86, 0xa7, 0xee, 0x26, 0x9b, 0xda, 0x24, 0xc7, 0xa7, 0x47, 0x97, 0x64, 0xf3,
0x92, 0x24, 0xac, 0xd6, 0x03, 0x80, 0xed, 0xe0, 0xec, 0x2c, 0xf0, 0x6d, 0x4c, 0x42, 0xd4, 0x81,
0x26, 0x8e, 0xa2, 0xed, 0xe0, 0x18, 0x77, 0x8c, 0x75, 0xe3, 0x5e, 0xc3, 0xce, 0x48, 0xb4, 0x0c,
0xd3, 0x38, 0x8a, 0xfa, 0xc4, 0xed, 0xd4, 0xd6, 0x8d, 0x7b, 0x2d, 0x3b, 0xa5, 0xac, 0xf7, 0xa1,
0x79, 0xe0, 0xb8, 0x87, 0x04, 0x47, 0x94, 0xe5, 0x9c, 0xe0, 0xa8, 0xd7, 0x65, 0x6b, 0x5b, 0x76,
0x4a, 0x21, 0x13, 0x66, 0xe8, 0xd7, 0x13, 0xe7, 0x0c, 0xa7, 0x8b, 0x39, 0x6d, 0x3d, 0x87, 0xfa,
0x81, 0xe3, 0xa2, 0x45, 0x68, 0xc4, 0x8e, 0xcb, 0x57, 0x26, 0x04, 0xd5, 0x26, 0x76, 0x5c, 0x69,
0x5d, 0x46, 0xa2, 0xd7, 0x13, 0x91, 0xbb, 0x1e, 0x89, 0x3b, 0xf5, 0xf5, 0xfa, 0xbd, 0xf6, 0xd6,
0xdc, 0x46, 0x8a, 0x40, 0xaa, 0x8d, 0xcd, 0x19, 0xac, 0x0f, 0xe1, 0xea, 0x0e, 0x8e, 0xe9, 0xe0,
0x81, 0xe3, 0x12, 0x1b, 0xbf, 0x28, 0xd5, 0x74, 0x1d, 0xda, 0x41, 0x88, 0x23, 0x27, 0xf6, 0x02,
0xbf, 0xd7, 0x4d, 0x37, 0x95, 0x87, 0xac, 0x13, 0x98, 0x53, 0x64, 0x91, 0x10, 0x6d, 0x01, 0x0c,
0x38, 0x82, 0x4c, 0x60, 0x7b, 0x0b, 0x65, 0xda, 0x08, 0x6c, 0x6d, 0x89, 0x0b, 0xdd, 0x82, 0xa9,
0xd8, 0x71, 0x49, 0xa7, 0xc6, 0x74, 0x6f, 0x4b, 0xba, 0xdb, 0x6c, 0xc2, 0xfa, 0xda, 0x80, 0xd9,
0xed, 0x08, 0x3b, 0x31, 0xa6, 0x63, 0xf8, 0x85, 0x8c, 0x85, 0xa1, 0x62, 0x21, 0x8c, 0xa9, 0x29,
0xc6, 0xac, 0x01, 0x24, 0x5f, 0x1c, 0xa5, 0x96, 0x2d, 0x8d, 0xe4, 0x8d, 0x9d, 0x2a, 0x1a, 0xbb,
0x0d, 0x57, 0x24, 0x1d, 0xaa, 0x99, 0x6a, 0x7d, 0x0e, 0xb3, 0x5d, 0x3c, 0xc4, 0xdc, 0x90, 0x32,
0xec, 0xb9, 0x0b, 0xd4, 0x64, 0x17, 0xc8, 0x29, 0x59, 0xd7, 0x2a, 0x29, 0xc9, 0xaf, 0xa8, 0xe4,
0x6f, 0x06, 0xb4, 0xf6, 0x71, 0x5c, 0x49, 0xc5, 0x0e, 0x34, 0x7d, 0x7c, 0xc9, 0x4e, 0x26, 0x51,
0x2f, 0x23, 0xd1, 0x06, 0x20, 0xcf, 0x1f, 0x44, 0xd8, 0x21, 0xf8, 0x50, 0x9c, 0xc4, 0x14, 0x3b,
0x09, 0xcd, 0x0c, 0x7a, 0x0d, 0xae, 0x45, 0xf8, 0xf8, 0x7c, 0x20, 0x73, 0x37, 0x18, 0x77, 0x61,
0x3c, 0x0f, 0xcc, 0x74, 0x11, 0x98, 0x0f, 0x00, 0x32, 0x93, 0x2a, 0xa2, 0xf2, 0x87, 0x01, 0x57,
0xf7, 0xb1, 0x7f, 0xdc, 0x27, 0xee, 0x96, 0xe2, 0x86, 0x4c, 0x33, 0x83, 0x69, 0x96, 0x91, 0xf4,
0x96, 0x1f, 0x66, 0x57, 0xb2, 0xc6, 0xa6, 0x38, 0x8d, 0x6e, 0x42, 0x6b, 0x27, 0x0a, 0xce, 0x43,
0xc9, 0x13, 0xc5, 0x00, 0x85, 0x9b, 0x60, 0xff, 0x98, 0xfb, 0x60, 0x4a, 0x51, 0x38, 0xe8, 0x17,
0x8e, 0xf6, 0x86, 0x4e, 0x7c, 0x12, 0x44, 0x67, 0xbd, 0x6e, 0xa7, 0xc1, 0xa2, 0x52, 0x61, 0x9c,
0xea, 0x35, 0x08, 0xfc, 0x18, 0xfb, 0x71, 0x0a, 0x45, 0x46, 0xe6, 0x81, 0x6a, 0x16, 0x81, 0x7a,
0x04, 0x73, 0x8a, 0x95, 0x15, 0xd1, 0xfa, 0xde, 0x80, 0xf9, 0x1d, 0x06, 0x38, 0x95, 0xb6, 0x1b,
0x24, 0xa1, 0xa6, 0x0b, 0xb0, 0xe7, 0xb8, 0x9e, 0xcf, 0x36, 0x4b, 0x25, 0xdd, 0xd9, 0x20, 0x38,
0xba, 0xc0, 0xd1, 0x91, 0x13, 0x7a, 0x47, 0xa1, 0x13, 0x39, 0x67, 0x64, 0xc3, 0xc6, 0x2f, 0xce,
0x31, 0x89, 0x05, 0xaf, 0x2d, 0xad, 0x2b, 0xbd, 0xe3, 0xe3, 0xaf, 0x47, 0x00, 0x20, 0x34, 0x52,
0xe2, 0xa6, 0x31, 0x26, 0x6e, 0xca, 0x98, 0xd6, 0x54, 0x4c, 0x4d, 0x98, 0xa1, 0x27, 0x70, 0xe0,
0xa5, 0x3e, 0x5f, 0xb7, 0x39, 0x6d, 0xfd, 0x64, 0x00, 0xca, 0xc3, 0x50, 0x31, 0x4a, 0x3e, 0x52,
0xb0, 0xab, 0xb1, 0x35, 0x77, 0xb5, 0xd8, 0x91, 0x30, 0xf0, 0x09, 0x2e, 0x01, 0xef, 0x3e, 0xb4,
0x63, 0xa1, 0x4d, 0xfa, 0x5e, 0x20, 0xc9, 0xee, 0x74, 0xca, 0x96, 0xd9, 0xac, 0x01, 0x3b, 0xcd,
0x34, 0xd2, 0x3f, 0x7c, 0xd9, 0xeb, 0xfe, 0x1b, 0xc1, 0xcb, 0x65, 0x58, 0x29, 0x9b, 0x54, 0xc4,
0x6a, 0x15, 0xea, 0xb1, 0xe3, 0xa6, 0x20, 0x29, 0x0f, 0x0a, 0x1d, 0xb7, 0x1e, 0xc0, 0xcc, 0xae,
0x77, 0x8a, 0x2b, 0xbf, 0xd3, 0x8f, 0xe1, 0xda, 0x93, 0x20, 0xf6, 0x4e, 0xbc, 0x01, 0x53, 0xbd,
0xb2, 0x9c, 0x3f, 0x0d, 0x68, 0x52, 0x0b, 0xa8, 0x17, 0x55, 0x58, 0x4f, 0x7d, 0xf2, 0xc4, 0x19,
0xe0, 0x43, 0x7b, 0x37, 0x0b, 0xb6, 0x29, 0x49, 0xc1, 0x8e, 0x70, 0x38, 0x7c, 0x99, 0xc4, 0xc8,
0xec, 0x39, 0x93, 0x86, 0xd0, 0x1d, 0xb8, 0xc2, 0x49, 0x26, 0xbc, 0xc1, 0x78, 0xd4, 0x41, 0x1a,
0xab, 0x52, 0x37, 0xe7, 0x61, 0x55, 0x0c, 0xc8, 0x77, 0xa2, 0xa9, 0xde, 0x89, 0x35, 0x80, 0x41,
0xf2, 0x58, 0xd2, 0x5b, 0x31, 0xc3, 0xe2, 0x94, 0x34, 0x62, 0xf5, 0x60, 0x6e, 0x0f, 0x47, 0x67,
0x1e, 0x21, 0x5e, 0xe0, 0xb3, 0xe0, 0x47, 0xb7, 0x72, 0xe9, 0x87, 0xf4, 0xaa, 0x8b, 0x01, 0xba,
0x15, 0x23, 0xb8, 0x57, 0x65, 0xa4, 0xd5, 0x85, 0xab, 0xcf, 0x82, 0xe8, 0xb4, 0x1f, 0x50, 0x18,
0x2b, 0x1f, 0xc5, 0x37, 0x53, 0x00, 0x42, 0x0c, 0xb2, 0x60, 0xf6, 0x92, 0x53, 0x5c, 0x90, 0x32,
0x56, 0x1a, 0x86, 0xe4, 0x6d, 0xea, 0xe5, 0x27, 0x36, 0xa5, 0x9e, 0x98, 0x84, 0x65, 0x43, 0xc5,
0xf2, 0x5d, 0x98, 0x1d, 0xa6, 0xde, 0xca, 0x42, 0xd5, 0x34, 0xbb, 0xb2, 0xcb, 0x99, 0x57, 0xab,
0xc6, 0xdb, 0x0a, 0x2f, 0x0d, 0x71, 0x83, 0xc4, 0xc1, 0x48, 0xa7, 0xa9, 0x86, 0xb8, 0xd4, 0xf1,
0x6c, 0xce, 0x40, 0x0f, 0x2d, 0xe4, 0x87, 0x92, 0x1d, 0x9a, 0x18, 0x41, 0x8f, 0x01, 0x09, 0x8a,
0xab, 0xd3, 0x1a, 0xa9, 0x8e, 0x66, 0x05, 0xea, 0xc1, 0x42, 0xa8, 0x1e, 0x3e, 0x13, 0x04, 0x4c,
0xd0, 0x4a, 0x26, 0x28, 0xe7, 0x1f, 0xb6, 0x6e, 0x0d, 0x7a, 0x1b, 0xc0, 0x89, 0xb9, 0x2a, 0xed,
0x91, 0xaa, 0x48, 0x9c, 0x39, 0xff, 0x9c, 0x2d, 0xf8, 0xa7, 0x0f, 0xcb, 0x49, 0xb2, 0xf7, 0xd4,
0xc7, 0x42, 0x0c, 0x0d, 0x7a, 0x5b, 0x00, 0xc2, 0x0b, 0xf2, 0xe1, 0x48, 0x62, 0x95, 0xb8, 0x26,
0xc8, 0xa4, 0xfb, 0xb0, 0xa2, 0xdd, 0xaf, 0xe2, 0xeb, 0x7b, 0x01, 0xcb, 0x49, 0x1a, 0x58, 0x50,
0xff, 0x55, 0x1c, 0x7b, 0x7c, 0x04, 0xef, 0xc3, 0x8a, 0x76, 0xdf, 0x8a, 0x66, 0xc4, 0xb0, 0x48,
0xe3, 0x74, 0xc1, 0x88, 0xb2, 0x0b, 0x6e, 0xc1, 0xec, 0x33, 0xd9, 0xb8, 0x44, 0x7d, 0x65, 0x6c,
0x02, 0x23, 0x3e, 0x82, 0x25, 0xcd, 0xae, 0x15, 0x4d, 0xf8, 0xd1, 0x80, 0x95, 0xf4, 0xa6, 0xfd,
0x1d, 0x33, 0x2e, 0x35, 0x66, 0x5c, 0xe6, 0xcc, 0x90, 0x03, 0x7c, 0xbd, 0x18, 0xe0, 0xa5, 0x80,
0x32, 0x35, 0x32, 0x09, 0x6c, 0x14, 0x21, 0x78, 0x02, 0x1d, 0xbd, 0xd2, 0x15, 0x51, 0xf8, 0xce,
0x80, 0x6b, 0x89, 0x63, 0x64, 0x51, 0x67, 0x42, 0x57, 0x54, 0xde, 0x9f, 0x5a, 0xfe, 0xfd, 0x31,
0x61, 0x26, 0x08, 0x15, 0x04, 0x38, 0x3d, 0x41, 0x41, 0xb7, 0x03, 0xf3, 0x39, 0x9d, 0x2a, 0x5a,
0xf7, 0x25, 0x2c, 0xee, 0xe0, 0x58, 0xc0, 0x94, 0xe5, 0x47, 0x93, 0x18, 0x28, 0x9b, 0x50, 0x1b,
0x6d, 0x82, 0xc6, 0x55, 0xbf, 0x82, 0x25, 0xcd, 0xce, 0x15, 0x93, 0x26, 0x35, 0xb2, 0xd5, 0x26,
0x89, 0x6c, 0xd6, 0xef, 0x06, 0xac, 0x6e, 0x7f, 0xe1, 0xf8, 0xae, 0xe4, 0x25, 0x22, 0x70, 0xff,
0x13, 0x20, 0xa8, 0x8f, 0x52, 0xbd, 0xf0, 0x28, 0x6d, 0xc1, 0xa2, 0xfa, 0xc4, 0x28, 0x85, 0xa5,
0x76, 0x6e, 0x82, 0x0b, 0x70, 0x00, 0x6b, 0xa3, 0xcc, 0xaa, 0x1e, 0x0c, 0x96, 0xd2, 0x0c, 0x57,
0xc8, 0x1d, 0xd9, 0x83, 0x19, 0x85, 0x8c, 0x5a, 0x4c, 0xd5, 0x2b, 0x16, 0x53, 0xe3, 0xef, 0xc9,
0x2f, 0x06, 0x2c, 0xeb, 0xb4, 0xae, 0xe8, 0x66, 0xf7, 0xa1, 0x2d, 0x0e, 0x3f, 0x6b, 0xfa, 0xe8,
0xfc, 0x4c, 0x66, 0xcb, 0x55, 0x3f, 0xf5, 0x8a, 0xd5, 0x8f, 0xf5, 0x83, 0x01, 0x37, 0x52, 0x5b,
0x1e, 0x47, 0x1e, 0xf6, 0x8f, 0x27, 0x3c, 0x87, 0xae, 0xa6, 0xf8, 0x7a, 0x65, 0xac, 0x35, 0x17,
0xfa, 0x57, 0x03, 0x6e, 0x96, 0xeb, 0xf7, 0x5f, 0x44, 0xfc, 0xdb, 0x3a, 0x5c, 0x17, 0x5b, 0xc8,
0x65, 0x53, 0x9f, 0xb8, 0xe8, 0x4d, 0x58, 0xf0, 0xd5, 0xa1, 0x83, 0x97, 0x61, 0xd6, 0x6e, 0xd5,
0x4d, 0x15, 0xeb, 0x96, 0x9a, 0xae, 0x6e, 0x79, 0x95, 0xe7, 0x51, 0x79, 0x73, 0x1a, 0xf9, 0x37,
0x27, 0x1f, 0xcf, 0xa6, 0x47, 0x26, 0x50, 0xcd, 0xd2, 0xca, 0x60, 0xa6, 0xbc, 0x32, 0x68, 0xa9,
0x95, 0xc1, 0x1b, 0x30, 0x2f, 0xa4, 0x6f, 0xa7, 0x3a, 0x03, 0xe3, 0x29, 0x4e, 0xe4, 0x32, 0xdb,
0x76, 0x21, 0xb3, 0x1d, 0x82, 0xb9, 0x5f, 0xb8, 0xcc, 0xbb, 0xf8, 0x02, 0x0f, 0xc7, 0x94, 0xf4,
0x43, 0xca, 0xc3, 0xd0, 0x6e, 0xd8, 0x09, 0x31, 0x81, 0x3f, 0x7f, 0x0c, 0x37, 0x4a, 0x77, 0xab,
0xe6, 0xcd, 0x5b, 0x3f, 0x03, 0x5c, 0x79, 0xca, 0x38, 0xf6, 0x71, 0x74, 0xe1, 0x0d, 0x30, 0x7a,
0x00, 0x6d, 0xa9, 0x0d, 0x8d, 0x78, 0xfe, 0xaf, 0xf6, 0xb9, 0xcd, 0x15, 0xed, 0x38, 0x09, 0xd1,
0x3b, 0xd0, 0xe2, 0x9d, 0x5d, 0xb4, 0xc8, 0xb7, 0x97, 0x1a, 0xce, 0xe6, 0x92, 0x66, 0x34, 0x59,
0xc9, 0xdb, 0xad, 0x62, 0xa5, 0xdc, 0xe1, 0x15, 0x2b, 0xd5, 0xbe, 0xec, 0x26, 0x4c, 0x27, 0xfd,
0x48, 0x34, 0x9f, 0x31, 0xf0, 0x96, 0xab, 0x89, 0xf2, 0x43, 0x24, 0xa4, 0x46, 0x4a, 0x7d, 0x39,
0x61, 0xa4, 0xda, 0x92, 0x14, 0x46, 0xe6, 0x9b, 0x78, 0x3b, 0xac, 0xef, 0x2f, 0x35, 0xa2, 0xd0,
0x75, 0x09, 0x0f, 0xb5, 0x4f, 0x67, 0x9a, 0x65, 0x53, 0x5c, 0x90, 0xd4, 0xa5, 0x51, 0x04, 0xa9,
0x2d, 0x22, 0x45, 0x50, 0xbe, 0xb1, 0xf3, 0x09, 0x2c, 0x68, 0x6a, 0x1e, 0xb4, 0xa6, 0x42, 0x9d,
0xcf, 0x9a, 0xcd, 0x5b, 0x23, 0xe7, 0x13, 0xb9, 0x9a, 0x22, 0x44, 0xc8, 0xd5, 0x57, 0x46, 0x42,
0x6e, 0x59, 0x05, 0xb3, 0x07, 0xf3, 0x85, 0xba, 0x00, 0xdd, 0xcc, 0x56, 0xe9, 0x0a, 0x15, 0x73,
0x75, 0xc4, 0x2c, 0x09, 0xd1, 0xa7, 0xb0, 0xa8, 0x4b, 0xb3, 0xd1, 0xad, 0x5c, 0x8d, 0x5e, 0x90,
0xbb, 0x3e, 0x9a, 0x81, 0x84, 0xa8, 0x9b, 0xfd, 0x11, 0x90, 0xf5, 0x97, 0x3a, 0xaa, 0x79, 0x22,
0x0f, 0x37, 0xaf, 0x97, 0xcc, 0x24, 0x26, 0x17, 0xf2, 0x4b, 0x61, 0xb2, 0x2e, 0xe9, 0x15, 0x26,
0xeb, 0x13, 0xd3, 0x53, 0x30, 0xcb, 0x13, 0x2b, 0x74, 0x97, 0xdb, 0x35, 0x2a, 0xa7, 0x34, 0xff,
0x3f, 0x09, 0x1b, 0x09, 0xd1, 0x3e, 0x6f, 0x28, 0x4a, 0xd1, 0x07, 0xad, 0xe6, 0x7c, 0x52, 0x4d,
0x01, 0xcc, 0xb5, 0x51, 0xd3, 0x24, 0x44, 0x18, 0x3a, 0x65, 0x2f, 0x34, 0xba, 0x9d, 0x5b, 0xab,
0xcb, 0x31, 0xcc, 0x3b, 0xe3, 0x99, 0x48, 0x88, 0x9e, 0xc3, 0x4a, 0x49, 0xe4, 0x44, 0x96, 0x14,
0x1e, 0x4a, 0x02, 0xb9, 0x79, 0x7b, 0x2c, 0x0f, 0x09, 0x1f, 0xce, 0x7f, 0x36, 0xb7, 0x91, 0xfe,
0x57, 0xfa, 0x5e, 0xf2, 0xf3, 0x7c, 0x9a, 0xfd, 0x11, 0xfa, 0xd6, 0x5f, 0x01, 0x00, 0x00, 0xff,
0xff, 0x86, 0x7f, 0x4e, 0xa8, 0x4a, 0x1d, 0x00, 0x00,
}

@ -195,6 +195,17 @@ message CommentOneWorkMomentResp {
CommonResp commonResp = 1;
}
message DeleteCommentReq {
string workMomentID = 1;
string contentID = 2;
string opUserID = 3;
string operationID = 4;
}
message DeleteCommentResp {
CommonResp commonResp = 1;
}
message GetWorkMomentByIDReq {
string workMomentID = 1;
string opUserID = 2;
@ -280,6 +291,7 @@ service OfficeService {
rpc DeleteOneWorkMoment(DeleteOneWorkMomentReq) returns(DeleteOneWorkMomentResp);
rpc LikeOneWorkMoment(LikeOneWorkMomentReq) returns(LikeOneWorkMomentResp);
rpc CommentOneWorkMoment(CommentOneWorkMomentReq) returns(CommentOneWorkMomentResp);
rpc DeleteComment(DeleteCommentReq) returns(DeleteCommentResp);
rpc GetWorkMomentByID(GetWorkMomentByIDReq) returns(GetWorkMomentByIDResp);
rpc ChangeWorkMomentPermission(ChangeWorkMomentPermissionReq) returns(ChangeWorkMomentPermissionResp);
/// user self

Loading…
Cancel
Save