refactor: Update payment type constants to use vchasno package directly
This commit is contained in:
22
README.md
22
README.md
@@ -49,7 +49,7 @@ client := vchasno.NewClient(vchasno.Config{
|
||||
ProductName: "Парковка",
|
||||
Comment: "Оплата парковки",
|
||||
Taxgrp: "1",
|
||||
PayType: api.PayTypeCash,
|
||||
PayType: vchasno.PayTypeCash,
|
||||
DefaultTimeout: 30 * time.Second,
|
||||
},
|
||||
})
|
||||
@@ -157,7 +157,7 @@ response, err := client.Sell(ctx, vchasno.SellParams{
|
||||
Cnt: 2,
|
||||
Price: 50.00,
|
||||
Taxgrp: "1",
|
||||
PayType: api.PayTypeCash,
|
||||
PayType: vchasno.PayTypeCash,
|
||||
})
|
||||
```
|
||||
|
||||
@@ -191,7 +191,7 @@ client.SetDefaults(vchasno.DefaultParams{
|
||||
ProductName: "VIP Парковка",
|
||||
Comment: "VIP зона",
|
||||
Taxgrp: "2",
|
||||
PayType: api.PayTypeCard,
|
||||
PayType: vchasno.PayTypeCard,
|
||||
DefaultTimeout: 60 * time.Second,
|
||||
})
|
||||
|
||||
@@ -232,7 +232,7 @@ client := vchasno.NewClient(vchasno.Config{
|
||||
ProductName: "Парковка",
|
||||
Comment: "Оплата услуг",
|
||||
Taxgrp: "1",
|
||||
PayType: api.PayTypeCash,
|
||||
PayType: vchasno.PayTypeCash,
|
||||
DefaultTimeout: 30 * time.Second,
|
||||
},
|
||||
})
|
||||
@@ -286,7 +286,7 @@ client.QuickSellNamed(ctx, "Парковка", 100.00)
|
||||
```go
|
||||
client.SetDefaults(vchasno.DefaultParams{
|
||||
ProductName: "Новое название",
|
||||
PayType: api.PayTypeCard,
|
||||
PayType: vchasno.PayTypeCard,
|
||||
})
|
||||
|
||||
defaults := client.GetDefaults()
|
||||
@@ -295,13 +295,15 @@ defaults := client.GetDefaults()
|
||||
## Константы
|
||||
|
||||
### Типы задач
|
||||
- `api.TaskOpenShift = 0` - Открытие смены
|
||||
- `api.TaskSell = 1` - Продажа
|
||||
- `api.TaskZReport = 11` - Z-отчет
|
||||
- `vchasno.TaskOpenShift = 0` - Открытие смены (также доступен как `api.TaskOpenShift`)
|
||||
- `vchasno.TaskSell = 1` - Продажа (также доступен как `api.TaskSell`)
|
||||
- `vchasno.TaskZReport = 11` - Z-отчет (также доступен как `api.TaskZReport`)
|
||||
|
||||
### Типы платежей
|
||||
- `api.PayTypeCash = 0` - Оплата наличными
|
||||
- `api.PayTypeCard = 2` - Оплата картой
|
||||
- `vchasno.PayTypeCash = 0` - Оплата наличными (также доступен как `api.PayTypeCash`)
|
||||
- `vchasno.PayTypeCard = 2` - Оплата картой (также доступен как `api.PayTypeCard`)
|
||||
|
||||
Все константы экспортируются как из основного пакета `vchasno`, так и из подпакета `api` для удобства использования.
|
||||
|
||||
## Структуры ответов
|
||||
|
||||
|
||||
@@ -3,8 +3,6 @@ package vchasno
|
||||
import (
|
||||
"context"
|
||||
"time"
|
||||
|
||||
"gitea.jeezft.xyz/jeezft/go-vchasno-kassa/api"
|
||||
)
|
||||
|
||||
func ExampleBasicUsage() {
|
||||
@@ -28,7 +26,7 @@ func ExampleWithDefaults() {
|
||||
ProductName: "Парковка",
|
||||
Comment: "Оплата парковки",
|
||||
Taxgrp: "1",
|
||||
PayType: api.PayTypeCash,
|
||||
PayType: PayTypeCash,
|
||||
DefaultTimeout: 30 * time.Second,
|
||||
},
|
||||
})
|
||||
@@ -46,7 +44,7 @@ func ExampleBuilderPattern() {
|
||||
Defaults: &DefaultParams{
|
||||
ProductName: "Парковка",
|
||||
Taxgrp: "1",
|
||||
PayType: api.PayTypeCash,
|
||||
PayType: PayTypeCash,
|
||||
},
|
||||
})
|
||||
|
||||
@@ -83,7 +81,7 @@ func ExampleChangingDefaults() {
|
||||
ProductName: "VIP Парковка",
|
||||
Comment: "VIP зона",
|
||||
Taxgrp: "2",
|
||||
PayType: api.PayTypeCard,
|
||||
PayType: PayTypeCard,
|
||||
DefaultTimeout: 60 * time.Second,
|
||||
})
|
||||
|
||||
|
||||
19
vchasno.go
19
vchasno.go
@@ -7,6 +7,17 @@ import (
|
||||
"gitea.jeezft.xyz/jeezft/go-vchasno-kassa/api"
|
||||
)
|
||||
|
||||
const (
|
||||
PayTypeCash = api.PayTypeCash
|
||||
PayTypeCard = api.PayTypeCard
|
||||
)
|
||||
|
||||
const (
|
||||
TaskOpenShift = api.TaskOpenShift
|
||||
TaskSell = api.TaskSell
|
||||
TaskZReport = api.TaskZReport
|
||||
)
|
||||
|
||||
type Client struct {
|
||||
api *api.Client
|
||||
cashier string
|
||||
@@ -41,7 +52,7 @@ func NewClient(config Config) *Client {
|
||||
if defaults == nil {
|
||||
defaults = &DefaultParams{
|
||||
Taxgrp: "1",
|
||||
PayType: api.PayTypeCash,
|
||||
PayType: PayTypeCard,
|
||||
DefaultTimeout: 30 * time.Second,
|
||||
}
|
||||
}
|
||||
@@ -145,13 +156,13 @@ func (b *SellParamsBuilder) Comment(comment string) *SellParamsBuilder {
|
||||
}
|
||||
|
||||
func (b *SellParamsBuilder) PayCash() *SellParamsBuilder {
|
||||
b.params.PayType = api.PayTypeCash
|
||||
b.params.PayType = PayTypeCash
|
||||
b.params.CardParams = nil
|
||||
return b
|
||||
}
|
||||
|
||||
func (b *SellParamsBuilder) PayCard(cardmask, bankID, rrnCode, authCode string) *SellParamsBuilder {
|
||||
b.params.PayType = api.PayTypeCard
|
||||
b.params.PayType = PayTypeCard
|
||||
b.params.CardParams = &CardParams{
|
||||
Cardmask: cardmask,
|
||||
BankID: bankID,
|
||||
@@ -212,7 +223,7 @@ func (c *Client) Sell(ctx context.Context, params SellParams) (*api.SellResponse
|
||||
var pay api.ReceiptPay
|
||||
sum := (params.Price - params.Disc) * float64(params.Cnt)
|
||||
|
||||
if params.PayType == api.PayTypeCard && params.CardParams != nil {
|
||||
if params.PayType == PayTypeCard && params.CardParams != nil {
|
||||
pay = api.NewReceiptPayCard(
|
||||
sum,
|
||||
params.CardParams.Cardmask,
|
||||
|
||||
Reference in New Issue
Block a user