package jdapi

import (
	"git.rosy.net.cn/baseapi/utils"
	"git.rosy.net.cn/jx-callback/globals"
	"strings"
	"testing"
	"time"
)

var list = "1-外卖订单；2-订单退款；3-配送费用；4-餐损赔付；5-服务费返还；6-订单部分退款；7-部分退款冲抵；9-商服赔付；10-保险；11-推广花费；12-配送小费；15-赔付账单；16-调整项；18-推广花费；19-推广花费；20-推广花费；21-推广账户充值；22-代金券售卖佣金；23-代金券售卖佣金；24-商品券售卖佣金；25-商品券售卖佣金；26-订单部分退款；27-部分退款冲抵；28-客服赔付费用；29-津贴联盟；30-津贴联盟；31-订单款；32-订单款-退款；33-调账；34-调账；35-订单奖励；36-订单奖励退款；37-交易额转推广费；38-小美果园订单款；39-小美果园订单款-退款；40-商家补贴；41-补贴节省转推广账户；42-补贴节省转推广账户退款；43-返还金额；44-完成；45-退款；46-换电服务商订单；47-订单；48-退款；49-站点激励；50-大额补贴；51-大额补贴退款；52-补贴节省转推广账户；53-补贴节省转推广账户退款；54-智能折扣菜返还金额；55-活动返利；56-活动返利退款；57-推广奖励；58-订单；59-订单退款；60-品牌会员；62-服务费返还激励；63-服务费返还激励退款；64-美联渠道商佣金；65-美联渠道商奖励；66-美联渠道商佣金退款；67-美联渠道商奖励退款；68-广平渠道商佣金；69-广平渠道商佣金退款；70-广平渠道商奖励；71-广平渠道商奖励退款；72-渠道商调账；73-骑手商城订单款；74-骑手商城订单款-退款；75-美天赚佣金；76-美天赚佣金_退款；77-医保报销；78-企客配送返款；79-游戏内购订单；80-游戏内购订单退款；81-代运营服务；82-代运营服务；83-代运营服务；84-代运营服务；85-赏金联盟服务费；86-赏金联盟服务费退款；87-代运营服务退款；88-代运营服务退款；89-品牌会员退款；90-美天赚渠道商奖励；91-美天赚渠道商奖励退款；92-推广奖励-反冲；93-门店运营服务；94-门店运营服务；95-门店运营服务；96-门店运营服务；97-订单退款；98-保险赔付；99-雇主险保费；100-领航商家服务费返还；101-领航商家服务费返还退款；103-代付奖励；104-代付奖励；105-代运营服务；106-代运营服务；107-代运营服务；108-代运营服务；110-违约金；111-赏金联盟服务费；112-赏金联盟服务费退款；113-团销宝推广费；114-团销宝推广费-退款；115-美联渠道商佣金；116-美联渠道商佣金退款；117-聚合配送商罚款；118-服务商调账；119-服务商调账；120-团好药扣款；121-联盟神券；124-服务市场代运营平台服务费；125-服务市场代运营平台服务费-退款；127-代运营激励-进店补贴；128-代运营激励-下单补贴；129-引流CPA奖励金；130-成单CPA奖励金；131-成单CPA奖励金退款；132-医药治理；133-医药治理退款；134-智能账户自动充值；135-美天赚渠道商佣金；136-美天赚渠道商佣金-退款；137-风控扣款；138-美团代运营售卖模式-基础服务费；139-美团代运营售卖模式-增量流水抽佣；140-美团代运营售卖模式-推广激励；141-美团代运营售卖模式-进店转化激励；142-美团代运营售卖模式-下单转化激励；143-门店运营服务；144-门店运营服务；147-订单款；148-订单退款；149-订单部分退款；150-订单部分退款冲抵；151-调账；152-商家资金账户调减；153-商家资金账户调增；154-合作商售后赔付；155-商家全球购账户余额调增；156-商家全球购账户余额调减；157-用户投诉赔付；158-分单退配送费；159-分单退配送费退款；160-广平渠道商券包佣金；161-广平渠道商券包佣金退款；162-美联渠道商券包佣金；163-美联渠道商券包佣金退款；164-美天赚渠道商券包佣金；165-美天赚渠道商券包佣金退款；166-商家增收费；167-商家增收费；168-系统服务费；169-违约金退还；170-跑腿费用；171-跑腿费用退款；172-订单取消跑腿罚款；173-订单取消跑腿罚款退款；174-跑腿小费；175-跑腿小费退款；176-订单佣金返还；177-逆向配送费；178-逆向配送费-赔付；179-配送服务费返还；180-全站推广；181-神抢手佣金优惠；182-商增站外渠道商佣金；183-商增站外渠道商佣金_退款；184-商增站外渠道商账户调增；185-商增站外渠道商账户调减；186-用户红包发放；187-补贴节省转推广账户；188-补贴节省转推广账户退款；189-售后折扣差异赔偿；190-售后折扣差异扣款；191-商家贴息；192-商家贴息退款；193-美天赚CPS成单奖励金；194-美天赚CPS成单奖励金退款；195-极速达餐损赔付；196-拼好饭餐车预售单；197-技术服务费；198-青云聚信返佣；199-商家直播-直播服务商佣金；200-直播商平台服务费；201-春节服务费；203-拼好饭推广服务费；204-拼好饭推广服务费_退款；205-引流爆品CPS奖励金；206-引流爆品CPS奖励金退款；207-随单返推广费转出；208-随单返推广费转出_退款；209-商家会员；210-会员退款；211-先用后付技术服务费；212-先用后付技术服务费退款；213-先用后付技术服务费部分退；214-先用后付技术服务费部分退反冲；215-推广费先花后付还款；216-商家承担返货费用；217-集合店外卖订单；218-集合店外卖订单退款；219-处方类佣金；220-处方类佣金退款；221-牵牛花服务费；222-牵牛花服务费退款；223-门店运营服务；224-接力邮资；225-购买广告产品；226-购买广告产品-退款；227-拼单宝费用；228-拼单宝费用退款；229-拼团平台补贴；230-拼团平台补贴-退款；231-拼团平台补贴-部分退；232-拼团平台补贴-部分退反冲；233-用户修改地址支付费用；234-商责取消配送服务费；235-汽车送配送费；236-合伙人激励；237-合伙人激励退款；266-国家补贴垫资款；267-国家补贴垫资款退款"

func Test12(t *testing.T) {
	data := make(map[string]string, 0)
	for _, v := range strings.Split(list, "；") {
		data[strings.Split(v, "-")[0]] = strings.Split(v, "-")[1]
	}
	globals.SugarLogger.Debugf("--:%s", utils.Format4Output(data, false))
}

// TestImStatusModify 开启关闭门店im
func TestImStatusModify(t *testing.T) {
	api.ImStatusModify("19854102+320406", 0, true)
}

// TestImWaiterStatusModify 设置门店im在想状态
func TestImWaiterStatusModify(t *testing.T) {
	api.ImWaiterStatusModify(1, "19854102", 1)
}

func Test(t *testing.T) {
	api.MessagePushService(&ContextMsg{
		Id:   "1766037788592184572_Q12",
		Lang: "zh_CN",
		Type: "chat_message",
		From: ContextFrom{
			Pin:        "liyang12345ly",
			App:        "im.waiter",
			ClientType: "android",
		},
		To: ContextTo{
			Pin: "jd_52db6569f724f",
			App: "im.customer",
		},
		Body: ContextBody{
			Type:    "text",
			Content: "nihao",
			Chatinfo: ContextBodyChatInfo{
				VenderId:        "store_10352814_1000051632",
				AskAllocateType: "multiChat",
				Sid:             "fd74f3a6db8d224e7f9a4566c6c60601",
				Source:          "jimitwo_service_smart_sdk",
			},
			Template: struct {
				Source string `json:"source"`
			}{
				Source: "dd_msg_583984a984834b1889f853be6e449f39_e66c448b9fbe4704901925d3217081a3",
			},
			Mt: 60,
		},
		Timestamp:  time.Now().Unix(),
		ClientTime: time.Now().Unix(),
	})
}
