# @deliverart/sdk-js-sales-mode 中文文档

规范地址：https://npmcn.com/package/%40deliverart/sdk-js-sales-mode/

版本：3\.0\.1
npm 元数据更新时间：2026-11-10T20:27:12.766Z
中文译文更新时间：2026-11-12T00:14:00.922Z
软件包许可：未声明

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40deliverart/sdk-js-sales-mode
原文对照：https://npmcn.com/package/%40deliverart/sdk-js-sales-mode/?lang=original

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：59.9 kB，6 个文件
- 模块格式：ESM + CJS
- TypeScript 类型：包内自带
- 运行依赖：4 个
- 首次发布：2025-06-28T16:11:58.988Z
- 最新版本发布：2026-11-10T20:27:12.568Z
- 近 30 天下载量：3995（2026-10-12 至 2026-11-10，npm 官方下载统计）
- 已发布版本数：324（近 12 个月 232 个）

## 中文简介

为销售模式管理交付JavaScript SDK

## 安装

```sh
npm install @deliverart/sdk-js-sales-mode
```

也可以使用：`pnpm add @deliverart/sdk-js-sales-mode`、`yarn add @deliverart/sdk-js-sales-mode`、`bun add @deliverart/sdk-js-sales-mode`

## README

# @deliverart/sdk-js-sales-mode (英语)

交付艺术JavaScript SDK的销售模式管理软件包.

## 安装

```bash
npm install @deliverart/sdk-js-sales-mode @deliverart/sdk-js-core
```

## 导出类型

### 核心类型

-   `SalesMode` - 销售模式配置
-   `SalesModeDetails` - 带有设置的扩展销售模式

### 销售模式类型

销售模式代表客户可以订购的不同方式:

-   交付
-   外卖
-   线入
-   保留

### IRI 类型

-   `SalesModeIri` - 销售模式IRI(`/sales_modes/:id`(中文(简体) )

## 可用请求

### 创建销售模式

```typescript
import { CreateSalesMode } from '@deliverart/sdk-js-sales-mode';

const salesMode = await sdk.call(new CreateSalesMode({
  name: 'Delivery',
  pointOfSale: '/point_of_sales/123',
  type: 'DELIVERY',
  enabled: true,
  settings: {
    minOrderAmount: 1000, // 10 EUR in cents
    deliveryRadius: 5000, // 5km in meters
    estimatedDeliveryTime: 30 // minutes
  }
}));
```

**输入参数:**

-   `name: string` (需要) - 销售模式名称
-   `pointOfSale: string` (需要) - 销售点
-   `type: string` (需要) - 销售模式类型
-   `enabled: boolean` (需要) - 启用/失效销售模式
-   `settings?: object` (可选) - 模式设置

* * *

### 获取销售模式

```typescript
import { GetSalesModes } from '@deliverart/sdk-js-sales-mode';

const salesModes = await sdk.call(new GetSalesModes({
  query: {
    pointOfSale: '/point_of_sales/123',
    enabled: true
  }
}));
```

**查询参数:**

-   `pointOfSale?: string` - 按销售点过滤
-   `type?: string` - 按类型过滤
-   `enabled?: boolean` - 通过启用状态过滤
-   `page?: number` - 页号

* * *

### 获取销售模式细节

```typescript
import { GetSalesModeDetails } from '@deliverart/sdk-js-sales-mode';

const salesMode = await sdk.call(new GetSalesModeDetails('mode-123'));
```

* * *

### 更新销售模式

```typescript
import { UpdateSalesMode } from '@deliverart/sdk-js-sales-mode';

const updated = await sdk.call(new UpdateSalesMode('mode-123', {
  enabled: false,
  settings: {
    minOrderAmount: 1500
  }
}));
```

* * *

### 删除销售模式

```typescript
import { DeleteSalesMode } from '@deliverart/sdk-js-sales-mode';

await sdk.call(new DeleteSalesMode('mode-123'));
```

* * *

## 完成使用示例

```typescript
import { sdk } from './lib/sdk';
import {
  CreateSalesMode,
  GetSalesModes,
  UpdateSalesMode
} from '@deliverart/sdk-js-sales-mode';

async function salesModeSetup() {
  const posId = '/point_of_sales/123';

  // Create delivery mode
  const delivery = await sdk.call(new CreateSalesMode({
    name: 'Delivery',
    pointOfSale: posId,
    type: 'DELIVERY',
    enabled: true,
    settings: {
      minOrderAmount: 1000,
      deliveryRadius: 5000,
      estimatedDeliveryTime: 30,
      deliveryFee: 300
    }
  }));

  // Create takeaway mode
  const takeaway = await sdk.call(new CreateSalesMode({
    name: 'Takeaway',
    pointOfSale: posId,
    type: 'TAKEAWAY',
    enabled: true,
    settings: {
      minOrderAmount: 500,
      estimatedPreparationTime: 15
    }
  }));

  // Get all active modes
  const activeModes = await sdk.call(new GetSalesModes({
    query: {
      pointOfSale: posId,
      enabled: true
    }
  }));

  console.log(`Active sales modes: ${activeModes.data.length}`);

  // Temporarily disable delivery
  await sdk.call(new UpdateSalesMode(delivery.id, {
    enabled: false
  }));
}
```

## 许可证

麻省理工学院

# @deliverart/sdk-js- 发售点

交付艺术JavaScript SDK的销售管理包点.

## 安装

```bash
npm install @deliverart/sdk-js-point-of-sale @deliverart/sdk-js-core
```

## 导出类型

### 核心类型

-   `PointOfSale` - 销售点信息
-   `PointOfSaleDetails` - 具有开放时间和设置的扩展POS
-   `PointOfSaleUser` - 分配给销售点的用户
-   `OpeningTime` - 开放时间配置
-   `PointOfSaleTimeOverride` - 特别时间(假日、活动)

### IRI 类型

-   `PointOfSaleIri` - IRI销售点`/point_of_sales/:id`(中文(简体) )
-   `PointOfSaleUserIri` - POS用户IRI(`/point_of_sale_users/:id`(中文(简体) )
-   `PointOfSaleTimeOverrideIri` - 时间超过IRI(`/point_of_sale_time_overrides/:id`(中文(简体) )

## 可用请求

### 销售管理点

#### 创建销售点

```typescript
import { CreatePointOfSale } from '@deliverart/sdk-js-point-of-sale';

const pos = await sdk.call(new CreatePointOfSale({
  name: 'Main Restaurant',
  company: '/companies/123',
  address: {
    street: 'Via Restaurant 1',
    city: 'Milano',
    postalCode: '20100',
    country: 'IT',
    location: {
      latitude: 45.464664,
      longitude: 9.188540
    }
  },
  phoneNumber: '+39021234567',
  email: 'info@restaurant.com',
  openingTimes: [
    {
      dayOfWeek: 1, // Monday
      openTime: '11:00',
      closeTime: '23:00'
    },
    {
      dayOfWeek: 2, // Tuesday
      openTime: '11:00',
      closeTime: '23:00'
    }
  ],
  enabled: true
}));
```

**输入参数:**

-   `name: string` (要求) - 销售点名称
-   `company: string` (要求) - IRI公司
-   `address: Address` (需要) - 地点地址
-   `phoneNumber: string` (需要) - 联系电话
-   `email: string` (需要) - 联系电子邮件
-   `openingTimes: OpeningTime[]` (可选) - 每周开放时间
-   `enabled: boolean` (可选) - 启用/失效 POS
-   `settings?: object` (可选) - 其他设置

#### 获取销售点

```typescript
import { GetPointOfSales } from '@deliverart/sdk-js-point-of-sale';

const pointOfSales = await sdk.call(new GetPointOfSales({
  query: {
    company: '/companies/123',
    enabled: true,
    'address.city': 'Milano',
    page: 1
  }
}));
```

**查询参数:**

-   `company?: string` - 按公司过滤
-   `enabled?: boolean` - 通过启用状态过滤
-   `address.city?: string` - 城市过滤器
-   `address.postalCode?: string` - 通过邮政编码过滤
-   `page?: number` - 页号

#### 获取销售点详情

```typescript
import { GetPointOfSaleDetails } from '@deliverart/sdk-js-point-of-sale';

const pos = await sdk.call(new GetPointOfSaleDetails('pos-123'));
```

#### 更新销售点

```typescript
import { UpdatePointOfSale } from '@deliverart/sdk-js-point-of-sale';

const updated = await sdk.call(new UpdatePointOfSale('pos-123', {
  name: 'Updated Restaurant Name',
  enabled: false
}));
```

#### 删除点销售

```typescript
import { DeletePointOfSale } from '@deliverart/sdk-js-point-of-sale';

await sdk.call(new DeletePointOfSale('pos-123'));
```

* * *

### 销售用户点

#### 创建销售用户点

```typescript
import { CreatePointOfSaleUser } from '@deliverart/sdk-js-point-of-sale';

const posUser = await sdk.call(new CreatePointOfSaleUser({
  pointOfSale: '/point_of_sales/123',
  user: '/users/456',
  role: 'MANAGER'
}));
```

**输入参数:**

-   `pointOfSale: string` (需要) - 销售点
-   `user: string` (需要) - 用户 IRI
-   `role: string` (需要) - 角色(如"MANAGER","STAFF","DRIVER")

#### 获取销售用户的点数

```typescript
import { GetPointOfSaleUsers } from '@deliverart/sdk-js-point-of-sale';

const users = await sdk.call(new GetPointOfSaleUsers({
  query: {
    pointOfSale: '/point_of_sales/123',
    role: 'MANAGER'
  }
}));
```

* * *

### 时间覆盖( 特殊小时)

#### 创建销售时间覆盖点

```typescript
import { CreatePointOfSaleTimeOverride } from '@deliverart/sdk-js-point-of-sale';

const override = await sdk.call(new CreatePointOfSaleTimeOverride({
  pointOfSale: '/point_of_sales/123',
  date: '2024-12-25', // Christmas
  openTime: null, // Closed
  closeTime: null,
  reason: 'Christmas Day - Closed'
}));
```

**输入参数:**

-   `pointOfSale: string` (需要) - 销售点
-   `date: string` (要求) - 日期(YYY-MM-DD)
-   `openTime: string | null` (要求) - 开放时间或关闭时无效
-   `closeTime: string | null` (要求) - 关闭时间或关闭时无效
-   `reason?: string` (可选) - 推翻理由

#### GetPointOf 销售时间覆盖

```typescript
import { GetPointOfSaleTimeOverrides } from '@deliverart/sdk-js-point-of-sale';

const overrides = await sdk.call(new GetPointOfSaleTimeOverrides({
  query: {
    pointOfSale: '/point_of_sales/123',
    'date[after]': '2024-12-01',
    'date[before]': '2024-12-31'
  }
}));
```

* * *

## 完成使用示例

```typescript
import { sdk } from './lib/sdk';
import {
  CreatePointOfSale,
  CreatePointOfSaleUser,
  CreatePointOfSaleTimeOverride,
  UpdatePointOfSale
} from '@deliverart/sdk-js-point-of-sale';

async function setupPointOfSale() {
  // Create point of sale
  const pos = await sdk.call(new CreatePointOfSale({
    name: 'Pizzeria da Mario',
    company: '/companies/123',
    address: {
      street: 'Via Napoli 10',
      city: 'Milano',
      postalCode: '20100',
      country: 'IT',
      location: {
        latitude: 45.464664,
        longitude: 9.188540
      }
    },
    phoneNumber: '+39021234567',
    email: 'info@damario.com',
    openingTimes: [
      { dayOfWeek: 1, openTime: '11:00', closeTime: '23:00' },
      { dayOfWeek: 2, openTime: '11:00', closeTime: '23:00' },
      { dayOfWeek: 3, openTime: '11:00', closeTime: '23:00' },
      { dayOfWeek: 4, openTime: '11:00', closeTime: '23:00' },
      { dayOfWeek: 5, openTime: '11:00', closeTime: '23:30' },
      { dayOfWeek: 6, openTime: '11:00', closeTime: '23:30' },
      { dayOfWeek: 0, openTime: '12:00', closeTime: '22:00' }
    ],
    enabled: true
  }));

  // Assign manager
  await sdk.call(new CreatePointOfSaleUser({
    pointOfSale: `/point_of_sales/${pos.id}`,
    user: '/users/456',
    role: 'MANAGER'
  }));

  // Add holiday closure
  await sdk.call(new CreatePointOfSaleTimeOverride({
    pointOfSale: `/point_of_sales/${pos.id}`,
    date: '2024-12-25',
    openTime: null,
    closeTime: null,
    reason: 'Christmas Day'
  }));

  // Temporarily disable
  await sdk.call(new UpdatePointOfSale(pos.id, {
    enabled: false
  }));
}
```

## 许可证

麻省理工学院

## 常见问题

### @deliverart/sdk-js-sales-mode 是什么？

为销售模式管理交付JavaScript SDK

### 如何安装 @deliverart/sdk-js-sales-mode？

在项目目录运行 npm install @deliverart/sdk-js-sales-mode，或使用 pnpm add / yarn add / bun add。

### @deliverart/sdk-js-sales-mode 支持 TypeScript 吗？

支持。包内自带 TypeScript 类型声明（package\.json 声明了 types 入口），安装后即可获得类型提示，无需再安装 @types 包。

### @deliverart/sdk-js-sales-mode 支持 ESM 还是 CommonJS？

同时提供 ES Module 与 CommonJS 入口，import 和 require\(\) 都可以使用，打包工具会自动选择合适的版本。

### @deliverart/sdk-js-sales-mode 可以商用吗？

@deliverart/sdk-js-sales-mode 使用 未声明 许可。package\.json 没有声明许可证。没有许可证的代码默认保留全部权利，商用前请联系作者或查看仓库中的 LICENSE 文件。以上为概括，不构成法律意见，请以许可原文为准。

### @deliverart/sdk-js-sales-mode 的下载量有多少？

根据 npm 官方下载统计，@deliverart/sdk-js-sales-mode 在 2026/10/12 – 2026/11/10 这 30 天内被下载 3,995 次，日均约 133 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入，适合横向比较热度，不能直接等同于使用人数。

### @deliverart/sdk-js-sales-mode 还在维护吗？

最新版本 3\.0\.1 发布于 2026/11/11（1 天前）；至今共发布 324 个版本，其中过去 12 个月发布了 232 个；首次发布于 2025/06/29。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

