xen0n / go-workwx

a sensible WeCom (企业微信, Wechat Work, Work Weixin) SDK for Go
https://godoc.org/github.com/xen0n/go-workwx
MIT License
649 stars 164 forks source link

feat: 增加假期相关接口及时长组件补充时区信息 #196

Closed yoogoc closed 7 months ago

yoogoc commented 8 months ago

获取企业假期管理配置: https://developer.work.weixin.qq.com/document/path/93375 获取成员假期余额: https://developer.work.weixin.qq.com/document/path/93376 修改成员假期余额: https://developer.work.weixin.qq.com/document/path/93377 时长组件:https://developer.work.weixin.qq.com/document/path/91983#%E9%99%8414-%E6%97%B6%E9%95%BF%E7%BB%84%E4%BB%B6%EF%BC%88control%E5%8F%82%E6%95%B0%E4%B8%BAdaterange%EF%BC%89

xen0n commented 7 months ago
Error: S1016: should convert req (type SetOAOneUserVacationQuota) to reqOASetOneUserVacationQuota instead of using struct literal (gosimple)

似乎有个结构体类型转换可以简化,否则 lint 过不了

yoogoc commented 7 months ago
Error: S1016: should convert req (type SetOAOneUserVacationQuota) to reqOASetOneUserVacationQuota instead of using struct literal (gosimple)

似乎有个结构体类型转换可以简化,否则 lint 过不了

updated

yoogoc commented 7 months ago

然后你可能要把所有 OA 字样不位于最前方的方法名都改一下。由于目前所有接口定义都堆在同一个类型上,按前缀区分大的功能模块会比较易于理解。例如 SetOA* 应为 OASet*

您的意思是把诸如GetOATemplateDetail改成OAGetTemplateDetail么?这样有破坏性改动不要紧的么?

xen0n commented 7 months ago

然后你可能要把所有 OA 字样不位于最前方的方法名都改一下。由于目前所有接口定义都堆在同一个类型上,按前缀区分大的功能模块会比较易于理解。例如 SetOA* 应为 OASet*

您的意思是把诸如GetOATemplateDetail改成OAGetTemplateDetail么?这样有破坏性改动不要紧的么?

啊,历史上就有不一致的用法了吗,那你看哪种用法多就用哪种

我后边加一堆兼容的名字,然后 deprecate 掉旧的写法,v2 删除,这样应该能比较平滑地迁移了

yoogoc commented 7 months ago

然后你可能要把所有 OA 字样不位于最前方的方法名都改一下。由于目前所有接口定义都堆在同一个类型上,按前缀区分大的功能模块会比较易于理解。例如 SetOA* 应为 OASet*

您的意思是把诸如GetOATemplateDetail改成OAGetTemplateDetail么?这样有破坏性改动不要紧的么?

啊,历史上就有不一致的用法了吗,那你看哪种用法多就用哪种

我后边加一堆兼容的名字,然后 deprecate 掉旧的写法,v2 删除,这样应该能比较平滑地迁移了

目前看来是*OA*用法比较多,我先用这种方式了,后续有需要的话,我可以协助您修改