feat(k3cloud): 新增部门与员工管理功能

- 为 DepartmentItem 结构体添加 Id 字段以支持唯一标识
- 新增部门添加、编辑和删除方法,支持基础信息维护
- 为 StaffItem 结构体添加 Id 和 Tel 字段,完善员工信息结构
- 新增员工添加、编辑、启用、禁用及删除方法
- 所有操作均通过 RPC 客户端调用对应服务接口实现
- 方法参数结构体定义明确,便于外部调用与数据传输
This commit is contained in:
2025-11-20 15:37:24 +08:00
parent 02fcd437e5
commit 3ca0c9a28a
2 changed files with 108 additions and 1 deletions

View File

@@ -9,6 +9,7 @@ import (
type department struct {
}
type DepartmentItem struct {
Id int64 `json:"id"`
Number *string `json:"number"`
Name *string `json:"name"`
ParentNumber *string `json:"parentNumber"`
@@ -25,3 +26,45 @@ func (d *department) All(ctx context.Context) (reply []DepartmentItem, err error
err = xClient.Call(ctx, "All", 0, &reply)
return
}
type ArgsDepartmentAdd struct {
Number string // 部门编码
Name string // 部门名称
ParentNumber string // 上级部门编码
GroupNumber string // 分组编码
}
// Add @TITLE 添加部门
func (d *department) Add(ctx context.Context, args ArgsDepartmentAdd) (departmentId int64, err error) {
xClient, err := client.GetClient(d)
if err != nil {
return
}
err = xClient.Call(ctx, "Add", args, &departmentId)
return
}
type ArgsDepartmentEdit struct {
DepartmentId int64 // 部门id
ArgsDepartmentAdd
}
// Edit @TITLE 编辑部门
func (d *department) Edit(ctx context.Context, args ArgsDepartmentEdit) (err error) {
xClient, err := client.GetClient(d)
if err != nil {
return
}
var reply int
return xClient.Call(ctx, "Edit", args, &reply)
}
// Delete @TITLE 删除部门
func (d *department) Delete(ctx context.Context, numbers []string) (err error) {
xClient, err := client.GetClient(d)
if err != nil {
return
}
var reply int
return xClient.Call(ctx, "Delete", numbers, &reply)
}