feat(ik3cloud): 添加部门和员工服务模块
- 新增部门服务,支持获取所有部门信息 - 新增员工服务,支持分页查询员工列表 - 定义部门和员工相关的数据结构 - 实现与远程客户端的调用逻辑 - 集成到主服务入口文件中便于调用 - 添加手机号、状态等员工搜索条件支持
This commit is contained in:
27
ik3cloud/department.go
Normal file
27
ik3cloud/department.go
Normal file
@@ -0,0 +1,27 @@
|
||||
package ik3cloud
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"git.kumo.work/shama/service/client"
|
||||
)
|
||||
|
||||
type department struct {
|
||||
}
|
||||
type DepartmentItem struct {
|
||||
Number *string `json:"number"`
|
||||
Name *string `json:"name"`
|
||||
ParentNumber *string `json:"parentNumber"`
|
||||
ParentName *string `json:"parentName"`
|
||||
Children []*DepartmentItem `json:"children"`
|
||||
}
|
||||
|
||||
// All @TITLE 获取部门
|
||||
func (d *department) All(ctx context.Context) (reply []DepartmentItem, err error) {
|
||||
xClient, err := client.GetClient(d)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
err = xClient.Call(ctx, "All", 0, &reply)
|
||||
return
|
||||
}
|
||||
6
ik3cloud/ik3cloud.go
Normal file
6
ik3cloud/ik3cloud.go
Normal file
@@ -0,0 +1,6 @@
|
||||
package ik3cloud
|
||||
|
||||
type Ik3cloud struct {
|
||||
Department department // 部门
|
||||
Staff staff // 员工
|
||||
}
|
||||
42
ik3cloud/staff.go
Normal file
42
ik3cloud/staff.go
Normal file
@@ -0,0 +1,42 @@
|
||||
package ik3cloud
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"git.kumo.work/shama/service/client"
|
||||
"git.kumo.work/shama/service/lib/bean"
|
||||
)
|
||||
|
||||
type staff struct {
|
||||
}
|
||||
type ArgsStaffList struct {
|
||||
Page bean.Page
|
||||
Search StaffSearch
|
||||
}
|
||||
type StaffSearch struct {
|
||||
Status int64 // 状态 1=启用 2=停用
|
||||
Name string // 姓名
|
||||
Phone string // 手机号
|
||||
}
|
||||
type ReplyStaffList struct {
|
||||
List []StaffItem `json:"list"` // 员工列表
|
||||
Total int64 `json:"total"` // 总数
|
||||
}
|
||||
type StaffItem struct {
|
||||
Number *string `json:"number"` // 工号
|
||||
Name *string `json:"name"` // 姓名
|
||||
Position *string `json:"position"` // 职位
|
||||
Phone *string `json:"phone"` // 账号
|
||||
Mobile *string `json:"mobile"` // 手机号
|
||||
Status *string `json:"status"` // 状态
|
||||
}
|
||||
|
||||
// List @TITLE 员工列表
|
||||
func (s *staff) List(ctx context.Context, args ArgsStaffList) (reply ReplyStaffList, err error) {
|
||||
xClient, err := client.GetClient(s)
|
||||
if err != nil {
|
||||
return
|
||||
}
|
||||
err = xClient.Call(ctx, "List", args, &reply)
|
||||
return
|
||||
}
|
||||
Reference in New Issue
Block a user