using BBWYB.Common.Http; using BBWYB.Common.Models; using Newtonsoft.Json.Linq; using WebTest.Models; using System; using System.Collections.Generic; using System.Net.Http; namespace WebTest.APIServices { public class MdsApiService : BaseApiService, IDenpendency { public MdsApiService(RestApiService restApiService, GlobalContext globalContext) : base(restApiService, globalContext) { } public ApiResponse<MDSUserResponse> GetUserInfo(string userToken) { return SendRequest<MDSUserResponse>(globalContext.MDSApiHost, "/TaskList/User/GetUserInfo", null, new Dictionary<string, string>() { { "Authorization", $"Bearer {userToken}" } }, HttpMethod.Get); } //public ApiResponse<IList<ShopResponse>> GetShopsByUserTeam(long userId) //{ // return SendRequest<IList<ShopResponse>>(globalContext.MDSApiHost, "TaskList/Shop/GetShopsByUserTeam", $"userId={userId}", null, System.Net.Http.HttpMethod.Get); //} public ApiResponse<IList<Department>> GetShopDetailList() { var response = new ApiResponse<IList<Department>>(); var response2 = SendRequest<JArray>(globalContext.MDSApiHost, "TaskList/UserDepartment/GetShopDetailList", null, null, HttpMethod.Get); if (!response.Success) { response.Code = response2.Code; response.Msg = response2.Msg; return response; } response.Data = new List<Department>(); foreach (var jDepartment in response2.Data) { var jayShops = jDepartment.Value<JArray>("ShopList"); if (jayShops == null || !jayShops.HasValues) continue; //排除空店部门 var d = new Department() { Id = jDepartment.Value<string>("Id"), Name = jDepartment.Value<string>("DepartmentName") }; response.Data.Add(d); foreach (var jShop in jayShops) { if (jShop.Value<long?>("ShopId") == null || string.IsNullOrEmpty(jShop.Value<string>("AppToken"))) continue; //排除未授权 try { var shop = new Shop() { ShopId = jShop.Value<long>("ShopId"), AppKey = jShop.Value<string>("AppKey"), AppSecret = jShop.Value<string>("AppSecret"), AppToken = jShop.Value<string>("AppToken"), ManagePwd = jShop.Value<string>("ManagePwd"), Platform = (Platform)jShop.Value<int>("PlatformId"), PlatformCommissionRatio = jShop.Value<decimal?>("PlatformCommissionRatio") ?? 0.05M, ShopName = jShop.Value<string>("ShopName"), VenderType = jShop.Value<string>("ShopType"), TeamId = jShop.Value<string>("TeamId") }; d.ShopList.Add(shop); //var jayAccounts = jShop.Value<JArray>("AccountList"); //if (jayAccounts == null || !jayAccounts.HasValues) // continue; //shop.PurchaseAccountList = new List<PurchaseAccount>(); //foreach (var jPurchaseAccount in jayAccounts) //{ // shop.PurchaseAccountList.Add(new PurchaseAccount() // { // Id = jPurchaseAccount.Value<long>("Id"), // AccountName = jPurchaseAccount.Value<string>("AccountName"), // AppKey = jPurchaseAccount.Value<string>("AppKey"), // AppSecret = jPurchaseAccount.Value<string>("AppSecret"), // AppToken = jPurchaseAccount.Value<string>("AppToken"), // ShopId = shop.ShopId // //PurchasePlatformId = jPurchaseAccount.Value<long>() // }); //} } catch (Exception ex) { Console.WriteLine(jShop.ToString()); throw; } } } return response; } } }