85 lines
2.4 KiB
Go
85 lines
2.4 KiB
Go
package fnpsapi
|
||
|
||
import (
|
||
"fmt"
|
||
"strings"
|
||
|
||
"git.rosy.net.cn/baseapi/utils"
|
||
)
|
||
|
||
const (
|
||
StoreNotExist = "门店信息不存在"
|
||
StoreExist = "该门店已存在"
|
||
)
|
||
|
||
type CreateStoreParam struct {
|
||
ChainStoreCode string `json:"chain_store_code,omitempty"`
|
||
ChainStoreName string `json:"chain_store_name,omitempty"`
|
||
ChainStoreType int `json:"chain_store_type,omitempty"`
|
||
MerchantCode string `json:"merchant_code,omitempty"`
|
||
ContactPhone string `json:"contact_phone,omitempty"`
|
||
Address string `json:"address,omitempty"`
|
||
PositionSource int `json:"position_source,omitempty"`
|
||
Longitude string `json:"longitude,omitempty"`
|
||
Latitude string `json:"latitude,omitempty"`
|
||
ServiceCode string `json:"service_code,omitempty"`
|
||
}
|
||
|
||
func (a *API) CreateStore(createStoreParam *CreateStoreParam) (err error) {
|
||
createStoreParam.ServiceCode = "1"
|
||
params := utils.Struct2FlatMap(createStoreParam)
|
||
_, err = a.AccessAPI("v2/chain_store", URL, params, true)
|
||
return err
|
||
}
|
||
|
||
type GetStoreResult struct {
|
||
ChainStoreCode string `json:"chain_store_code"`
|
||
ChainStoreName string `json:"chain_store_name"`
|
||
Address string `json:"address"`
|
||
Latitude string `json:"latitude"`
|
||
Longitude string `json:"longitude"`
|
||
PositionSource int `json:"position_source"`
|
||
City string `json:"city"`
|
||
ContactPhone string `json:"contact_phone"`
|
||
ServiceCode string `json:"service_code"`
|
||
Status int `json:"status"` //1关店,2开店
|
||
}
|
||
|
||
func (a *API) GetStore(storeID string) (getStoreResult *GetStoreResult, err error) {
|
||
result, err := a.AccessAPI("v2/chain_store/query", URL, map[string]interface{}{
|
||
"chain_store_code": []string{storeID},
|
||
}, true)
|
||
if err == nil {
|
||
if data, ok := result["data"].([]interface{}); ok {
|
||
utils.Map2StructByJson(data[0], &getStoreResult, false)
|
||
} else {
|
||
err = fmt.Errorf(result["msg"].(string))
|
||
}
|
||
}
|
||
return getStoreResult, err
|
||
}
|
||
|
||
func IsErrShopNotExist(err error) bool {
|
||
if err != nil {
|
||
if strings.Contains(err.Error(), StoreNotExist) {
|
||
return true
|
||
}
|
||
}
|
||
return false
|
||
}
|
||
|
||
func IsErrShopExist(err error) bool {
|
||
if err != nil {
|
||
if strings.Contains(err.Error(), StoreExist) {
|
||
return true
|
||
}
|
||
}
|
||
return false
|
||
}
|
||
|
||
func (a *API) UpdateStore(createStoreParam *CreateStoreParam) (err error) {
|
||
params := utils.Struct2FlatMap(createStoreParam)
|
||
_, err = a.AccessAPI("v2/chain_store/update", URL, params, true)
|
||
return err
|
||
}
|