From 29d65712434a78838e48ad4e625de9863705fc3a Mon Sep 17 00:00:00 2001 From: gazebo Date: Wed, 27 Nov 2019 11:41:27 +0800 Subject: [PATCH] =?UTF-8?q?+PrivilegeSearchUser=20AccessStorePage2?= =?UTF-8?q?=E6=94=AF=E6=8C=81=E8=BF=94=E5=9B=9E=E9=9D=9Ejson?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- platformapi/jdapi/jdapi_test.go | 3 +- platformapi/jdapi/store.go | 67 +++++++++++++++++++++++++++++++++ platformapi/jdapi/store_page.go | 4 ++ platformapi/jdapi/store_test.go | 10 +++++ 4 files changed, 83 insertions(+), 1 deletion(-) diff --git a/platformapi/jdapi/jdapi_test.go b/platformapi/jdapi/jdapi_test.go index f3ff6efe..56c37e25 100644 --- a/platformapi/jdapi/jdapi_test.go +++ b/platformapi/jdapi/jdapi_test.go @@ -27,7 +27,8 @@ func init() { // 天天果园 // api = New("84541069-fbe2-424b-b625-9b2ba1d4c9e6", "5d5577a2506f41b8b4ec520ba83490f5", "0b01b9eeb15b41dab1c3d05d95c17a26") - const cookieValue = "YYJV3NHVBPHLD36FWP6F3EM5PTXJ2XZQS7U4HWRIDPP4IWGUKUIB4XG5N26CZRDLDF7PKOXBPD6BNTUAJLETLZOIWMCVFI3K6MYZIY4QBIXIMXYDJNUKFGJVQTN5356SAD6WPCIHWNQAG7DDMF7L7S3SHCT3RM3CQG7IJIPUQ3THS5UIUYWMKINM7ETUOQB7OBPOPZVCT3ZJY55243TDVXLO25PP4UYSPTTPMNQ7HPMWOJKJ3BJWGVHD243MXH7NZWW264TKN5UOCJBSSSOKD2QQII" + // const cookieValue = "YYJV3NHVBPHLD36FWP6F3EM5PTXJ2XZQS7U4HWRIDPP4IWGUKUIB4XG5N26CZRDLDF7PKOXBPD6BNTUAJLETLZOIWMCVFI3K6MYZIY4QBIXIMXYDJNUKFGJVQTN5356SAD6WPCIHWNQAG7DDMF7L7S3SHCT3RM3CQG7IJIPUQ3THS5UIUYWMKINM7ETUOQB7OBPOPZVCT3ZJY55243TDVXLO25PP4UYSPTTPMNQ7HPMWOJKJ3BJWGVHD243MXH7NZWW264TKN5UOCJBSSSOKD2QQII" + const cookieValue = "OPJQMA7B3FTKCAUGO7FHCH5NMBGAWGGXYRNLEHYYZNGNPNIBCAM4IOEPG3NT3RIA44G5C3535Q5LGG4F4SR4AZVLGYKYTKFJJKEAOXENVBL5VXNILRP3GLNVVWA26XZ3VGSYOHA72RICMVZS3G53DTEH3KT7YNE5MGHU5WW5LDCHTOOO5R6GWEZMJRYHHF6BVS34XSSAHTZF3ZDGLFDYP6VTY3ASMV4YHJEA7RWCAHAMXKJ2VBGHTZYRL2DHR3BMXAHCTBAHYQLL24K5YI2PULRJL2UGAVD7VFRMEYTOXYHWCYVDXJ6HYFIPWIN3ULLXDDLN2ICON4GRK" api.SetCookie(accessStorePageCookieName, cookieValue) api.SetCookie(accessStorePageCookieName2, cookieValue) } diff --git a/platformapi/jdapi/store.go b/platformapi/jdapi/store.go index 06aff9d7..55478000 100644 --- a/platformapi/jdapi/store.go +++ b/platformapi/jdapi/store.go @@ -256,6 +256,39 @@ type UpdateStoreFreightParam struct { FreeFreightInfoList []*FreeFreightInfo `json:"freeFreightInfoList,omitempty"` } +type StoreUserInfo struct { + Cn string `json:"cn"` + CreateApp string `json:"createApp"` + CreatePin string `json:"createPin"` + CreateTime *utils.JavaDate `json:"createTime"` + DefaultPwdType interface{} `json:"defaultPwdType"` + Email interface{} `json:"email"` + ErpAccount interface{} `json:"erpAccount"` + ExtFields struct { + OrgName string `json:"orgName"` + } `json:"extFields"` + ID int `json:"id"` + JdPin interface{} `json:"jdPin"` + LastLoginTime interface{} `json:"lastLoginTime"` + LockStatus int `json:"lockStatus"` + LoginCredentials interface{} `json:"loginCredentials"` + LoginFailCount int `json:"loginFailCount"` + LoginName string `json:"loginName"` + OrgCode string `json:"orgCode"` + OrgID int `json:"orgId"` + PartTimeOrgIds interface{} `json:"partTimeOrgIds"` + Phone string `json:"phone"` + Remark interface{} `json:"remark"` + RoleNameStr interface{} `json:"roleNameStr"` + Roles interface{} `json:"roles"` + SortNo int `json:"sortNo"` + Status int `json:"status"` + SysVersion int `json:"sysVersion"` + UpdatePin interface{} `json:"updatePin"` + UpdateTime interface{} `json:"updateTime"` + UserCode string `json:"userCode"` +} + func (a *API) GetAllCities() (cities []*CityInfo, err error) { result, err := a.AccessAPINoPage("address/allcities", nil, nil, nil, genNoPageResultParser("code", "msg", "result", "0")) if err == nil { @@ -440,3 +473,37 @@ func (a *API) UpdateStoreFreightConfigNew(upateParam *UpdateStoreFreightParam) ( _, err = a.AccessAPINoPage("freight/updateStoreFreightConfigNew", jdParams, nil, nil, genNoPageResultParser("code", "detail", "", "0")) return err } + +func parsePrivilegeSearchUser(data map[string]interface{}) (innerData interface{}, err error) { + status, ok := data["status"] + if !ok { + panic("parsePrivilegeSearchUser") + } + statusMap := status.(map[string]interface{}) + innerCode := utils.Interface2String(statusMap["result"]) + innerData, _ = data["result"] + + if innerCode != "success" { + errMsg := formatErrorMsg(statusMap["message"]) + err = utils.NewErrorCode(errMsg, innerCode, 1) + } + return innerData, err +} + +// 查询商家中心账号信息接口 +// https://openo2o.jddj.com/staticnew/widgets/resources.html?groupid=194&apiid=67a5cd92e9704612b77064401a696144 +func (a *API) PrivilegeSearchUser(pageNo, pageSize int) (storeUserList []*StoreUserInfo, err error) { + jdParams := map[string]interface{}{ + "pageNo": utils.Int2Str(pageNo), + "pageSize": utils.Int2Str(pageSize), + } + result, err := a.AccessAPINoPage("privilege/searchUser", jdParams, nil, nil, parsePrivilegeSearchUser) + if err == nil { + err = utils.Map2StructByJson(result, &storeUserList, false) + } + return storeUserList, err +} + +func (a *API) PrivilegeSearchUserAll() (storeUserList []*StoreUserInfo, err error) { + return a.PrivilegeSearchUser(1, 1) +} diff --git a/platformapi/jdapi/store_page.go b/platformapi/jdapi/store_page.go index 27f5a35a..f534da7f 100644 --- a/platformapi/jdapi/store_page.go +++ b/platformapi/jdapi/store_page.go @@ -281,6 +281,10 @@ func (a *API) AccessStorePage2(fullURL string, params map[string]interface{}, is if jsonResult1 == nil { return platformapi.ErrLevelRecoverableErr, fmt.Errorf("mapData is nil") } + if jsonResult1[platformapi.KeyData] != nil { + retVal = bodyStr + return platformapi.ErrLevelSuccess, nil + } retVal = jsonResult1 code, ok := jsonResult1["code"].(string) if !ok { diff --git a/platformapi/jdapi/store_test.go b/platformapi/jdapi/store_test.go index e15d614d..0c809544 100644 --- a/platformapi/jdapi/store_test.go +++ b/platformapi/jdapi/store_test.go @@ -151,3 +151,13 @@ func TestUpdateStoreFreightConfigNew(t *testing.T) { t.Fatal(err) } } + +func TestPrivilegeSearchUser(t *testing.T) { + result, err := api.PrivilegeSearchUser(1, 1) + if err != nil { + t.Fatal(err) + } + if true { + t.Log(utils.Format4Output(result, false)) + } +}