# 库存管理

库存管理分类提供库存查询和进销存查询接口，共 **2** 个API。

---

## 接口列表

| 序号 | 接口名称 | Method | 说明 |
|------|----------|--------|------|
| 1 | [库存查询](#1-库存查询) | `foonsu.erp.stock.list` | 查询库存信息 |
| 2 | [进销存查询](#2-进销存查询) | `foonsu.erp.saleStock.list` | 查询进销存信息 |

---

## 1. 库存查询

**Method：** `foonsu.erp.stock.list`

**请求方式：** POST

**简要描述：** 查询商品库存信息

### 请求参数

| 参数名 | 必选 | 类型 | 说明 |
|--------|------|------|------|
| pageIndex | 否 | Integer | 第几页，从1开始，默认1 |
| pageSize | 否 | Integer | 默认20，最大不超过50 |
| modifyDateStart | 否 | Date | 修改起始时间，和结束时间必须同时存在，间隔不超过7天 |
| modifyDateEnd | 否 | Date | 修改结束时间，和起始时间必须同时存在，间隔不超过7天 |
| goodsCodeList | 否 | List[String] | 商品编码列表（ERP系统商品编码），最多20 |
| warehouseId | 否 | Long | 仓库ID |
| status | 否 | String | 商品启用状态：0-停用；1-启用 |

### data(Object)返回参数

| 参数名 | 类型 | 说明 |
|--------|------|------|
| total | Integer | 记录总数 |
| data | List[Object] | 集合参数响应 |

### data(List)返回参数

| 参数名 | 类型 | 说明 |
|--------|------|------|
| goodsCode | String | 商品编码 |
| skCount | Long | 库存数 |
| canSaleCount | Long | 可销售数 |
| wayCount | Long | 在途数 |
| canAllocateCount | Long | 可配货数 |
| wmsSkCount | Long | 外仓库存数 |
| modifyDate | Date | 修改时间 |
| warehouseId | Long | 仓库ID |
| warehouseName | String | 仓库名称 |
| tempCost | BigDecimal | 本期成本价 |
| costPrice | BigDecimal | 采购指导价 |
| batchList | List[Object] | 批次信息集合 |

### 批次信息响应参数

| 参数名 | 类型 | 说明 |
|--------|------|------|
| batchNo | String | 批次号 |
| batchType | String | 0-无；1-批次库存；2-唯一码 |
| canAllocateCount | Long | 可配货数 |
| skCount | BigDecimal | 库存数量 |
| productionDate | Date | 生产日期 |
| validDays | Integer | 保质期天数 |
| expriedDate | Date | 保质期 |

### 返回示例

```json
{
  "errorCode": null,
  "msg": "操作成功",
  "data": {
    "total": 3,
    "data": [
      {
        "goodsCode": "L2",
        "skCount": 1,
        "wayCount": 444,
        "canSaleCount": 333,
        "canAllocateCount": 222,
        "modifyDate": "2020-04-21 12:20:10",
        "tempCost": 100
      }
    ]
  },
  "date": null,
  "version": null,
  "success": true
}
```

---

## 2. 进销存查询

**Method：** `foonsu.erp.saleStock.list`

**请求方式：** POST

**简要描述：** 查询进销存信息

### 请求参数

| 参数名 | 必选 | 类型 | 说明 |
|--------|------|------|------|
| pageIndex | 否 | Integer | 第几页，从1开始，默认1 |
| pageSize | 否 | Integer | 默认20，最大不超过50 |
| beginDate | **是** | Date | 起始时间，和结束时间必须同时存在，间隔不超过7天 |
| endDate | **是** | Date | 结束时间，和起始时间必须同时存在，间隔不超过7天 |
| goodsCodeList | 否 | List[String] | 商品编码（ERP系统商品编码），最多20 |
| warehouseId | **是** | Integer | 仓库ID |

### data(List)返回参数

| 参数名 | 类型 | 说明 |
|--------|------|------|
| goodsCode | String | 商品编码 |
| goodsName | String | 商品名称 |
| inCount | BigDecimal | 入库数量（收入小计） |
| outCount | BigDecimal | 出库数量（支出小计） |
| skUnit | String | 单位 |
| warehouseId | Integer | 仓库ID |
| warehouseName | String | 仓库名称 |

### 返回示例

```json
{
  "errorCode": null,
  "msg": "操作成功",
  "data": {
    "total": 3,
    "data": [
      {
        "goodsCode": "L2",
        "goodsName": "L2名称",
        "inCount": 1,
        "outCount": 1,
        "skUnit": "件"
      }
    ]
  },
  "date": null,
  "version": null,
  "success": true
}
```
