公司管理

更新时间:2019-3-29

1. 获取公司列表

【注意】该接口对非管理员账户仅能获取到企业下拥有访问权限的公司信息,对于管理员账户则能获取到企业下所有公司的信息。

请求地址
GET /company?Ids=1,2
参数说明
参数 是否必须 说明
Ids 可指定要获取的公司Id,支持以逗号分隔的多公司Id
公司查询接口支持丰富的条件过滤参数,请参见支持的查询参数附录
返回结果
{
    "offset": 0,
    "total": 0,
    "results": [
        {
            "id": 100,
            "code": "01",
            "name": "北京易点易动科技有限公司",
            "enterpriseId": 1,
            "hierarchy": "1|10|100"
            "disabled": false
        }
    ],
    "meta": {}
}
参数 说明
offset 当前结果对于首条结果的偏移量,指定分页查询时不为0
total 所有符合查询条件的查询结果数量,指定需要结果记录数量时不为0
results 符合查询条件的公司详情集合
meta 其他信息

2. 创建公司

【注意】使用该接口创建公司将会使创建者自动拥有对其访问的权限。

请求地址
POST /company
请求示例
{
    "Code":"01"
    "Name":"北京易点易动科技有限公司"
}
参数说明
参数 是否必须 说明
Code 公司编码
Name 公司名称
返回结果
{
    "Id": 1
}
结果说明
属性 说明
Id 公司Id
附加信息

1.该接口可能会触发企业可用公司数量上限的检查。超过允许的公司数量上限时,调用者会收到HTTP 403 Forbidden错误,并附加详细的描述信息。

3. 更新公司

【注意】该接口对于非管理员账户仅能更新企业下其拥有访问权限的公司信息,对于管理员账户则能更新企业下所有公司的信息。

请求地址
PUT /company
POST /company/put

对于不支持PUT请求的网络环境,请尝试使用备份的POST请求地址

请求示例
{
    "Code":"01"
    "Name":"北京易点易动科技有限公司"
}
参数说明
参数 是否必须 说明
Code 公司编码
Name 公司名称
返回结果
{}

对于成功更新的请求,该接口仅返回HTTP 200 OK

4. 更新公司编码

【注意】该接口对于非管理员账户仅能更新企业下其拥有访问权限的公司信息,对于管理员账户则能更新企业下所有公司的信息。

请求地址
PUT /company/code
POST /company/code/put

对于不支持PUT请求的网络环境,请尝试使用备份的POST请求地址

请求示例
{
    "CurrentCode":"01"
    "NewCode":"01_new"
}
参数说明
参数 是否必须 说明
CurrentCode 当前使用中的公司编码
NewCode 预更新的公司编码
返回结果
{}

对于成功更新的请求,该接口仅返回HTTP 200 OK

5. 删除公司

【注意】该接口对于非管理员账户仅能删除企业下其拥有访问权限的公司,对于管理员账户则能删除企业下所有公司。

请求地址
DELETE /company
POST /company/delete

对于不支持DELETE请求的网络环境,请尝试使用备份的POST请求地址

请求示例
{
    "Code":"01"
}
参数说明
参数 是否必须 说明
Code 公司编码
返回结果
{}

对于成功删除的请求,该接口仅返回HTTP 200 OK

附加信息

下列条件之一成立时,无法对指定的公司进行删除操作

  1. 该公司下存在子公司信息
  2. 该公司下存在部门信息
  3. 该公司下存在资产信息
  4. 该公司下存在领用单据
  5. 该公司下存在调拨单据
  6. 该公司下存在实物信息变更单据
  7. 该公司下存在财务变更单据
  8. 该公司下存在员工信息

6. 设置公司的可用性状态

【注意】该接口对于非管理员账户仅能更新企业下其拥有访问权限的公司信息,对于管理员账户则能更新企业下所有公司的信息。

请求地址
PUT /company/{code}/availability
POST /company/{code}/availability/put

对于不支持PUT请求的网络环境,请尝试使用备份的POST请求地址

请求示例
{
    "Enabled":1
}
参数说明
参数 是否必须 说明
Code 公司编码
Enabled 公司的可用性状态,0和1分别表示禁用和启用
返回结果
{}

对于成功更新的请求,该接口仅返回HTTP 200 OK

附加信息

1.该接口可能会触发企业可用公司数量上限的检查。超过允许的公司数量上限时,调用者会收到HTTP 403 Forbidden错误,并附加详细的描述信息。

7. 设置公司的上级公司

【注意】该接口对于非管理员账户仅能更新企业下其拥有访问权限的公司信息,对于管理员账户则能更新企业下所有公司的信息。

请求地址
PUT /company/{code}/superior
POST /company/{code}/superior/put

对于不支持PUT请求的网络环境,请尝试使用备份的POST请求地址

请求示例
{
    "SuperiorCompanyCode":1
}
参数说明
参数 是否必须 说明
Code 公司编码
SuperiorCompanyCode 上级公司编码(将此参数设置为空,即表示将公司设置为最上级机构)
返回结果
{}

对于成功更新的请求,该接口仅返回HTTP 200 OK

附录

1. 支持的查询参数

如无特别说明,下列操作对于查询实体对象中的任意属性均适用。使用时只需将其追加至请求的querystring中即可。对实体对象中不存在的属性进行操作将会得到不可预期的结果。

  • 分页
    • skip={数字} 跳过指定条数的记录数
    • take={数字}取出指定条数的记录数
    • include=total 需要返回记录总数
  • 排序
    • orderBy=[-]{属性名称},[-]{属性名称} 返回结果按指定属性排序,在名称前加”-“表示按倒序排序。多个属性的排序可使用逗号分隔。如:orderBy=-Id,Name,-Age
  • 条件过滤
    • 不等于
      • {属性名称}!={值} 如:Id!=1
    • 大于等于
      • >{属性名称}={值} 如:>Id=1
    • 大于
      • {属性名称}>={值} 如:Id>=1
    • 小于
      • <{属性名称}={值} 如:<Id=1
    • 小于等于
      • {属性名称}<={值} 如:Id<=1
    • In
      • {属性名称}In={值,值,值} 属性的值需包含在指定的集合中,如:IdIn=1,2,3
    • Between
      • {属性名称}Between={值,值} 属性的值需处于指定的区间之间,仅支持数字,如: IdBetween=1,3
    • 字符串包含指定字符
      • {属性名称}Contains={值} 如:nameContains=abc
    • 字符串以指定字符开头
      • {属性名称}StartsWith={值} 如:nameStartsWith=abc
    • 字符串以指定字符结尾
      • {属性名称}EndsWith={值} 如:nameEndsWith=abc
  • 自定义返回结果
    • 使用Fields参数来指定返回结果中需要的属性或字段名称 如:对于公司查询接口使用Fields=Id,Code,Name,返回的公司集合结果中将仅包含此3个属性。

2. 数据实体格式

1. 公司数据对象格式
属性名称 说明
id 公司Id
code 公司编码
name 公司名称
enterpriseId 所属企业Id
superiorCompanyId 上级公司Id
hierarchy 以竖线分割的公司Id,表示公司层级关系
disabled 是否已禁用