| 项目 | 说明 |
|---|---|
| 接口路径 | POST /open/api/v1/org/disableOrg |
| Content-Type | application/json |
| 所需权限 | org:disable |
| 接口说明 | 停用指定的组织节点,停用后该组织将变为停用状态 |
| 参数名 | 类型 | 是否必填 | 说明 | 示例 |
|---|---|---|---|---|
corpId | String | 是 | 企业ID | "ding4c7c311a701851ac35c2f4657eb6378f" |
effectDate | String | 是 | 生效日期,格式: yyyy-MM-dd | "2027-01-01" |
orgId | String | 是 | 组织ID | "org_14bfa9a7264848ea929a03151121816c" |
{
"corpId": "ding4c7c311a701851ac35c2f4657eb6378f",
"effectDate": "2027-01-01",
"orgId": "org_14bfa9a7264848ea929a03151121816c"
}| 参数名 | 类型 | 说明 |
|---|---|---|
data | Object | 响应数据体 |
success | Boolean | 请求是否成功 |
errorCode | String | 错误编码,正常为 null |
errorMsg | String | 错误信息,正常为 null |
| 参数名 | 类型 | 说明 |
|---|---|---|
corpId | String | 企业ID |
orgId | String | 组织ID |
errorMsg | Map<String, String> | 错误信息。null 表示操作成功;非 null 时,key 为字段标识,value 为错误提示 |
data.errorMsg 为 null,表示停用操作成功。{
"data": {
"corpId": "ding4c7c311a701851ac35c2f4657eb6378f",
"orgId": "org_14bfa9a7264848ea929a03151121816c",
"errorMsg": null
},
"success": true,
"errorCode": null,
"errorMsg": null
}{
"data": {
"corpId": "ding4c7c311a701851ac35c2f4657eb6378f",
"orgId": "org_14bfa9a7264848ea929a03151121816c",
"errorMsg": {
"effectDate": "不能重复停用"
}
},
"success": true,
"errorCode": null,
"errorMsg": null
}{
"data": {
"corpId": "ding4c7c311a701851ac35c2f4657eb6378f",
"orgId": "org_xxxx",
"errorMsg": {
"orgId": "组织不存在"
}
},
"success": true,
"errorCode": null,
"errorMsg": null
}{
"data": {
"corpId": "ding4c7c311a701851ac35c2f4657eb6378f",
"orgId": "1",
"errorMsg": {
"orgId": "根部门不能停用"
}
},
"success": true,
"errorCode": null,
"errorMsg": null
}{
"success": false,
"errorCode": "400",
"errorMsg": "企业ID不能为空"
}| 序号 | 校验项 | 错误信息 | 错误字段 key |
|---|---|---|---|
| 1 | 企业ID不能为空 | 企业ID不能为空 | 参数校验层返回 |
| 2 | 生效日期不能为空 | 生效日期不能为空 | 参数校验层返回 |
| 3 | 组织ID不能为空 | 组织ID不能为空 | 参数校验层返回 |
| 4 | 不能停用根部门(orgId = "1") | 根部门不能停用 | orgId |
| 5 | 组织不存在 | 组织不存在 | orgId |
| 6 | 组织已停用,不能重复停用 | 不能重复停用 | effectDate |
| 7 | 组织字段级校验不通过 | 根据具体字段返回 | 对应字段ID |
请求进入
│
├── 1. 参数校验(corpId / effectDate / orgId 不能为空)
│
├── 2. 权限校验(需要 org:disable 权限)
│
├── 3. 校验不能停用根部门(orgId != "1")
│
├── 4. 解析生效日期(yyyy-MM-dd → Date)
│
├── 5. 查询组织历史记录(按生效时间升序排列)
│ └── 无记录 → 返回"组织不存在"
│
├── 6. 获取最新一条记录,检查是否已停用
│ └── 已停用 → 返回"不能重复停用"
│
├── 7. 构造停用数据(状态设为 DISABLE,设置生效日期)
│
├── 8. 执 行组织字段级校验
│ └── 校验不通过 → 返回字段级错误信息
│
├── 9. 保存停用记录到数据库
│
├── 10. 发布组织变更事件(通知下游系统)
│
└── 返回成功响应(errorMsg = null)success 始终为 true,需要通过 data.errorMsg 是否为 null 来判断停用操作是否真正成功effectDate 作为生效日期