diff --git a/platformapi/ebaiapi/elm_lm.go b/platformapi/ebaiapi/im.go similarity index 52% rename from platformapi/ebaiapi/elm_lm.go rename to platformapi/ebaiapi/im.go index 3ca13640..4cec723f 100644 --- a/platformapi/ebaiapi/elm_lm.go +++ b/platformapi/ebaiapi/im.go @@ -15,6 +15,11 @@ const ( //消息类型 ContentTypeNormal = 1 //普通文本信息 ContentTypeAt = 8 //@ 消息 + + //门店im状态 + ImStatusOpen = 1 //开启 + ImStatusClose = -1 //关闭 + ) // BusinessSendMsgReq im发送消息 @@ -33,7 +38,7 @@ type BusinessMsgPayload struct { ContentType string `json:"contentType"` // 内容类型,目前只支持文本消息。枚举值: 1-普通文本 } -// BusinessSendMsg 门店老板发送消息 主要用这个 +// BusinessSendMsg 门店老板发送消息 func (a *API) BusinessSendMsg(param *BusinessSendMsgReq) error { result, err := a.AccessAPI("im.message.send", utils.Struct2MapByJson(param)) if err != nil { @@ -46,52 +51,22 @@ func (a *API) BusinessSendMsg(param *BusinessSendMsgReq) error { return nil } -// SettingStoreMsgRead 设置消息已读 -func (a *API) SettingStoreMsgRead(platformShopId string, msgId string) error { - result, err := a.AccessAPI("im.message.read", map[string]interface{}{ - "platformShopId": platformShopId, - "bizType": IMType, - "subBizType": ReadIMType, - "payload": map[string]string{"msgId": msgId}, - }) - if err != nil { - return err - } - if result.ErrNo != 0 { - return errors.New(result.Error) - } - return nil -} - -// GetStoreIMStatus 获取门店的im状态(这个应该不怎么用) -func (a *API) GetStoreIMStatus(platformShopId string) (int, error) { +// GetStoreIMStatus 获取门店的im状态 1:开启,-1:关闭 +func (a *API) GetStoreIMStatus(platformShopId string) (string, error) { result, err := a.AccessAPI("im.getIMStatus", map[string]interface{}{"platformShopId": platformShopId}) if err != nil { - return 0, err + return "0", err } if result.ErrNo != 0 { - return 0, errors.New(result.Error) + return "0", errors.New(result.Error) } - return result.Data.(map[string]interface{})["imStatus"].(int), nil + return result.Data.(map[string]interface{})["imStatus"].(string), nil } -// GetImOnlineStatus 获取门店IM线上状态 -func (a *API) GetImOnlineStatus(platformShopId string) (int, error) { - result, err := a.AccessAPI("im.getIMOnlineStatus", map[string]interface{}{"platformShopId": platformShopId}) - if err != nil { - return 0, err - } - if result.ErrNo != 0 { - return 0, errors.New(result.Error) - } - - return result.Data.(map[string]interface{})["status"].(int), nil -} - -// SetImOnlineStatus 设置im线上状态 ONLINE - 在线 BUSY - 忙碌 -func (a *API) SetImOnlineStatus(platformShopId string, status string) error { - result, err := a.AccessAPI("im.updateIMOnlineStatus", map[string]interface{}{"platformShopId": platformShopId, "status": status}) +// UpdateIMStatus 更新店铺IM开关状态 1-开启,-1-关闭 +func (a *API) UpdateIMStatus(platformShopId string, status int) error { + result, err := a.AccessAPI("im.updateIMStatus", map[string]interface{}{"platformShopId": platformShopId, "status": status}) if err != nil { return err } @@ -101,3 +76,46 @@ func (a *API) SetImOnlineStatus(platformShopId string, status string) error { return nil } + +// SettingStoreMsgRead 设置消息已读 +//func (a *API) SettingStoreMsgRead(platformShopId string, msgId string) error { +// result, err := a.AccessAPI("im.message.read", map[string]interface{}{ +// "platformShopId": platformShopId, +// "bizType": IMType, +// "subBizType": ReadIMType, +// "payload": map[string]string{"msgId": msgId}, +// }) +// if err != nil { +// return err +// } +// if result.ErrNo != 0 { +// return errors.New(result.Error) +// } +// return nil +//} + +// GetImOnlineStatus 获取门店IM线上状态 +//func (a *API) GetImOnlineStatus(platformShopId string) (int, error) { +// result, err := a.AccessAPI("im.getIMOnlineStatus", map[string]interface{}{"platformShopId": platformShopId}) +// if err != nil { +// return 0, err +// } +// if result.ErrNo != 0 { +// return 0, errors.New(result.Error) +// } +// +// return result.Data.(map[string]interface{})["status"].(int), nil +//} + +// SetImOnlineStatus 设置im线上状态 ONLINE - 在线 BUSY - 忙碌 +//func (a *API) SetImOnlineStatus(platformShopId string, status string) error { +// result, err := a.AccessAPI("im.updateIMOnlineStatus", map[string]interface{}{"platformShopId": platformShopId, "status": status}) +// if err != nil { +// return err +// } +// if result.ErrNo != 0 { +// return errors.New(result.Error) +// } +// +// return nil +//} diff --git a/platformapi/ebaiapi/elm_im_test.go b/platformapi/ebaiapi/im_test.go similarity index 89% rename from platformapi/ebaiapi/elm_im_test.go rename to platformapi/ebaiapi/im_test.go index 9ccb6797..741eaa73 100644 --- a/platformapi/ebaiapi/elm_im_test.go +++ b/platformapi/ebaiapi/im_test.go @@ -1,20 +1,21 @@ package ebaiapi import ( + "fmt" "testing" ) func TestGetStoreImStatus(t *testing.T) { - data, err := api.GetStoreIMStatus("1139781155") + data, err := api.GetStoreIMStatus("511696051") if err != nil { t.Errorf("%v", err) } t.Log(data) } -//获取门店线上IM状态 -func TestAPI_GetImOnlineStatus(t *testing.T) { - +func TestAPI_UpdateIMStatus(t *testing.T) { + err := api.UpdateIMStatus("511696051", ImStatusOpen) + fmt.Printf("err=%v", err) } func TestParseMultilayerJson(t *testing.T) { diff --git a/platformapi/mtwmapi/retail_test.go b/platformapi/mtwmapi/retail_test.go index 0f51bf43..b9607b93 100644 --- a/platformapi/mtwmapi/retail_test.go +++ b/platformapi/mtwmapi/retail_test.go @@ -378,7 +378,7 @@ func TestRetailSellStatus2(t *testing.T) { //根据分类id查询属性列表 func TestCategoryAttrList(t *testing.T) { //result, err := api.CategoryAttrList(200002680) - result, err := api.CategoryAttrList(200002685) + result, err := api.CategoryAttrList(200005790) if err != nil { t.Fatal(err) } @@ -399,7 +399,7 @@ func TestCategoryAttrValueList(t *testing.T) { } func TestRetailRecommendTag(t *testing.T) { - result, err := api.RetailRecommendTag("飞利浦电吹风", "", 0, 1) + result, err := api.RetailRecommendTag("长豆角", "", 0, 1) if err != nil { t.Fatal(err) }