package jd import ( "git.rosy.net.cn/baseapi/utils" "git.rosy.net.cn/jx-callback/business/model" "git.rosy.net.cn/jx-callback/globals/api" ) func (p *PurchaseHandler) GetAllStoreIDsFromRemote() ([]string, error) { result, err := api.JdAPI.GetStationsByVenderId() return result, err } func (p *PurchaseHandler) GetAllStoresFromRemote() ([]*model.Store, error) { ids, err := p.GetAllStoreIDsFromRemote() if err == nil { retVal := make([]*model.Store, len(ids)) for index, id := range ids { store, err2 := p.GetStoreFromRemote(id) if err2 == nil { retVal[index] = store } else { return nil, err2 } } return retVal, nil } return nil, err } func (p *PurchaseHandler) GetStoreFromRemote(vendorStoreID string) (*model.Store, error) { result, err := api.JdAPI.GetStoreInfoByStationNo(vendorStoreID) if err == nil { retVal := &model.Store{ Name: utils.Interface2String(result["stationName"]), Address: utils.Interface2String(result["stationAddress"]), OpenTime1: JdOperationTime2JxOperationTime(result["serviceTimeStart1"]), CloseTime1: JdOperationTime2JxOperationTime(result["serviceTimeEnd1"]), OpenTime2: JdOperationTime2JxOperationTime(result["serviceTimeStart2"]), CloseTime2: JdOperationTime2JxOperationTime(result["serviceTimeEnd2"]), Status: JdStoreStatus2JxStatus(result["yn"], result["closeStatus"]), } retVal.ID = uint(utils.Str2Int64WithDefault(utils.Interface2String(result["outSystemId"]), 0)) return retVal, nil } return nil, err } func (p *PurchaseHandler) SaveStore2Remote(vendorStoreID string, store *model.Store) error { params := map[string]interface{}{ "outSystemId": utils.Int2Str(int(store.ID)), "stationName": store.Name, "stationAddress": store.Address, "serviceTimeStart1": JxOperationTime2JdOperationTime(store.OpenTime1), "serviceTimeEnd1": JxOperationTime2JdOperationTime(store.CloseTime1), "serviceTimeStart2": JxOperationTime2JdOperationTime(store.OpenTime2), "serviceTimeEnd2": JxOperationTime2JdOperationTime(store.CloseTime2), } params["yn"], params["closeStatus"] = JxStoreStatus2JdStatus(store.Status) _, err := api.JdAPI.UpdateStoreInfo4Open(vendorStoreID, "", params) return err } func (p *PurchaseHandler) EnableAutoAcceptOrder(vendorStoreID string, isEnabled bool) error { _, err := api.JdAPI.UpdateStoreConfig4Open(vendorStoreID, isEnabled) return err }