public async Task <APIResult> ThirdAddOrder([FromBody] Models.ThirdPartyModel.ThirdShopAddOrderModel model) { var parametermodel = new ThirdPartyDistributionParameterModel(); // parametermodel.source_id = GetMerchant(model.ShopId).DaDaShopId.ToString(); parametermodel.source_id = "73753"; model.origin_id = "THIRD" + DateTime.Now.Ticks + CommonUtil.CreateNoncestr(5); var Data = JsonConvert.SerializeObject(model); parametermodel.body = Data; var data = parameter.ExThirdPartyDistributionParameterAction(parametermodel); var result = await httpClient.Post <Models.ThirdPartyModel.ThirdAddOrderResult>($"{thirdConfig.Url}/api/order/addOrder", data); if (result.errorCode != 0 || result.status != "success") { throw new Exception(result.msg); } shopDb.ThirdApiData.Add(new ThirdApiData() { ShopId = model.ShopId, DaDaShopId = 73753, AddTime = DateTime.Now, JsonData = Data, ResultData = JsonConvert.SerializeObject(result), OrderId = model.origin_id }); shopDb.SaveChanges(); return(Success(result)); }
public async Task <APIResult> ThirdFormalCancel([FromBody] FormalCancel model) { var parametermodel = new ThirdPartyDistributionParameterModel(); parametermodel.source_id = GetMerchant(model.ShopId).DaDaShopId.ToString(); // parametermodel.source_id = "73753";//测试 var Data = JsonConvert.SerializeObject(model); parametermodel.body = Data; var data = parameter.ExThirdPartyDistributionParameterAction(parametermodel); var result = await httpClient.Post <ThirdCancelResult>($"{thirdConfig.Url}/api/order/formalCancel", data); if (result.errorCode != 0 || result.status != "success") { throw new Exception(result.msg); } shopDb.ThirdMoneyReport.Add(new Data.ThirdMoneyReport() { ShopId = model.ShopId, OrderNumber = model.order_id, Amount = result.result.deduct_fee, AddTime = DateTime.Now, ProduceType = ProduceType.取消订单 }); shopDb.SaveChanges(); return(Success(result)); }
public async Task <APIResult> ThirdShopRecharge([FromBody] ThirdShopRechargeModel model) { if (model == null) { throw new Exception("参数有误"); } if (model.amount <= 0) { throw new Exception("充值金额必须大于0"); } var RCode = "RCODE" + DateTime.Now.Ticks + CommonUtil.CreateNoncestr(5); var parametermodel = new ThirdPartyDistributionParameterModel(); parametermodel.source_id = GetMerchant(model.ShopId).DaDaShopId.ToString(); model.notify_url = string.Format(thirdConfig.RechargeUrl, model.ShopId, parametermodel.source_id, model.amount, RCode); var Data = JsonConvert.SerializeObject(model); parametermodel.body = Data; var data = parameter.ExThirdPartyDistributionParameterAction(parametermodel); var result = await httpClient.Post <ThirdRechargeResult>($"{thirdConfig.Url}/api/recharge", data); if (result.errorCode != 0 || result.status != "success") { throw new Exception(result.msg); } return(Success(result)); }
public async Task <ThirdAddOrderResult> ThirdAddOrder(ThirdShopAddOrderModel model, ShopOrder order) { try { var parametermodel = new ThirdPartyDistributionParameterModel(); parametermodel.source_id = GetMerchant(model.ShopId).DaDaShopId.ToString(); shopDb.ThirdApiData.Add(new ThirdApiData() { ShopId = model.ShopId, DaDaShopId = Convert.ToInt32(parametermodel.source_id), AddTime = DateTime.Now, JsonData = JsonConvert.SerializeObject(order), ResultData = "ThirdAddOrder-Info", OrderId = model.origin_id }); //parametermodel.source_id = "73753"; // model.origin_id = "THIRD" + DateTime.Now.Ticks + CommonUtil.CreateNoncestr(5); var Data = JsonConvert.SerializeObject(model); parametermodel.body = Data; var data = parameter.ExThirdPartyDistributionParameterAction(parametermodel); var result = await httpClient.Post <ThirdAddOrderResult>($"{thirdoptions.Url}/api/order/addOrder", data); if (result.errorCode == 0 || result.status == "success") { shopDb.ThirdOrder.Add(new Data.ThirdOrder() { OrderNumber = order.OrderNumber, ShopId = model.ShopId, ThirdType = ThirdType.达达配送, OrderStatus = OrderStatus.待接单 }); shopDb.ThirdMoneyReport.Add(new Data.ThirdMoneyReport() { ShopId = model.ShopId, OrderNumber = order.OrderNumber, Amount = result.result.fee, AddTime = DateTime.Now, ProduceType = ProduceType.发起订单 }); } shopDb.ThirdApiData.Add(new ThirdApiData() { ShopId = model.ShopId, DaDaShopId = Convert.ToInt32(parametermodel.source_id), AddTime = DateTime.Now, JsonData = Data, ResultData = JsonConvert.SerializeObject(result), OrderId = model.origin_id }); shopDb.SaveChanges(); return(result); } catch (Exception ex) { throw new Exception(ex.Message); } }
public async Task <APIResult> ThirdShopAdd([FromBody] ThirdShopArgs model) { if (model.ThirdShopModel == null) { throw new Exception("请输入门店信息"); } double lat = model.ThirdShopModel.FirstOrDefault().lat; double lng = model.ThirdShopModel.FirstOrDefault().lng; var converResult = BaiduMapUtil.GetBdToGd(model.ThirdShopModel.FirstOrDefault().lng, model.ThirdShopModel.FirstOrDefault().lat); model.ThirdShopModel.FirstOrDefault().lng = converResult.x; model.ThirdShopModel.FirstOrDefault().lat = converResult.y; var thirdshopcount = shopDb.ThirdShop.Where(r => r.ShopId == model.ShopId && r.Status == ThirdShop.ShopStatus.门店激活).Count(); if (thirdshopcount > 0) { throw new Exception("暂不支持多门店"); } var parametermodel = new ThirdPartyDistributionParameterModel(); parametermodel.source_id = GetMerchant(model.ShopId).DaDaShopId.ToString(); //"73753";// var Data = JsonConvert.SerializeObject(model.ThirdShopModel); parametermodel.body = Data; var data = parameter.ExThirdPartyDistributionParameterAction(parametermodel); var result = await httpClient.Post <ThirdShopResultModel>($"{thirdConfig.Url}/api/shop/add", data); if (result.code != 0 || result.status != "success") { throw new Exception(result.msg + "错误信息:" + result.result.failedList.FirstOrDefault().msg); } foreach (var item in model.ThirdShopModel) { shopDb.ThirdShop.Add(new ThirdShop() { ShopId = model.ShopId, AreaName = item.area_name, Business = item.business, CityName = item.city_name, ContactName = item.contact_name, IdCard = item.id_card, Lat = lat, Lng = lng, OriginShopId = item.origin_shop_id == null ? result.result.successList.FirstOrDefault().originShopId : item.origin_shop_id, Phone = item.phone, StationAddress = item.station_address, StationName = item.station_name, PassWord = item.password, UserName = item.username, Status = ThirdShop.ShopStatus.门店激活 }); shopDb.SaveChanges(); } return(Success(result)); }
public async Task <APIResult> ThirdShopDetile([FromBody] ThirdShopDetail model) { var parametermodel = new ThirdPartyDistributionParameterModel(); parametermodel.source_id = GetMerchant(model.ShopId).DaDaShopId.ToString(); var Data = JsonConvert.SerializeObject(model); parametermodel.body = Data; var data = parameter.ExThirdPartyDistributionParameterAction(parametermodel); var result = await httpClient.Post <ThirdShopInfoResult>($"{thirdConfig.Url}/api/shop/detail", data); return(Success(result)); }
public async Task <APIResult> ThirdFormalCancel() { var parametermodel = new ThirdPartyDistributionParameterModel(); parametermodel.source_id = "10264";//测试 parametermodel.body = "{}"; var data = parameter.ExThirdPartyDistributionParameterAction(parametermodel); var result = await httpClient.Post <ThirdCancelReasonsResult>($"{thirdConfig.Url}/api/order/cancel/reasons", data); if (result.errorCode != 0 || result.status != "success") { throw new Exception(result.msg); } return(Success(result)); }
/// <summary> /// 查询运费预发布订单 /// </summary> /// <param name="model"></param> /// <param name="order"></param> /// <returns></returns> public PreThirdAddOrderResult PreThirdAddOrder(ThirdShopAddOrderModel model) { try { var parametermodel = new ThirdPartyDistributionParameterModel(); parametermodel.source_id = GetMerchant(model.ShopId).DaDaShopId.ToString(); var Data = JsonConvert.SerializeObject(model); parametermodel.body = Data; var data = parameter.ExThirdPartyDistributionParameterAction(parametermodel); var result = httpClient.Post <PreThirdAddOrderResult>($"{thirdoptions.Url}/api/order/queryDeliverFee", data).Result; if (result.errorCode == 0 || result.status == "success") { var queryfee = shopDb.ThirdApiData.Where(r => r.OrderId == model.origin_id && r.JsonData == "QueryFee"); if (queryfee.Count() <= 0) { shopDb.ThirdApiData.Add(new ThirdApiData() { ShopId = model.ShopId, DaDaShopId = Convert.ToInt32(parametermodel.source_id), AddTime = DateTime.Now, JsonData = "QueryFee", ResultData = JsonConvert.SerializeObject(result), OrderId = model.origin_id }); } //发起预订单成功后处理发起订单 //var afterresult = AddAfterQuery(new Servers.AddAfterQuery() { deliveryNo = result.result.deliveryNo, OrderNumber = model.origin_id, ShopId = model.ShopId, Fee = result.result.fee }); } shopDb.ThirdApiData.Add(new ThirdApiData() { ShopId = model.ShopId, DaDaShopId = Convert.ToInt32(parametermodel.source_id), AddTime = DateTime.Now, JsonData = Data, ResultData = JsonConvert.SerializeObject(result), OrderId = model.origin_id }); shopDb.SaveChanges(); return(result); } catch (Exception ex) { throw new Exception(ex.Message); } }
/// <summary> /// 回调处理预订单发单 /// </summary> /// <param name="model"></param> /// <returns></returns> public AddAfterResult CallbackAfter(AddAfterQuery model) { try { var parametermodel = new ThirdPartyDistributionParameterModel(); parametermodel.source_id = GetMerchant(model.ShopId).DaDaShopId.ToString(); var Data = JsonConvert.SerializeObject(model); parametermodel.body = Data; var data = parameter.ExThirdPartyDistributionParameterAction(parametermodel); var result = httpClient.Post <AddAfterResult>($"{thirdoptions.Url}/api/order/addAfterQuery", data).Result; if (result.errorCode == 0 || result.status == "success") { shopDb.ThirdApiData.Add(new ThirdApiData() { ShopId = model.ShopId, DaDaShopId = Convert.ToInt32(parametermodel.source_id), AddTime = DateTime.Now, JsonData = "CallbackAfter", ResultData = JsonConvert.SerializeObject(result), OrderId = model.OrderNumber }); //第三方配送订单记录 shopDb.ThirdOrder.Add(new Data.ThirdOrder() { OrderNumber = model.OrderNumber, ShopId = model.ShopId, ThirdType = ThirdType.达达配送, OrderStatus = OrderStatus.待接单 }); //发起订单报表记录 shopDb.ThirdMoneyReport.Add(new Data.ThirdMoneyReport() { ShopId = model.ShopId, OrderNumber = model.OrderNumber, Amount = model.Fee, AddTime = DateTime.Now, ProduceType = ProduceType.发起订单 }); } shopDb.SaveChanges(); return(result); } catch (Exception ex) { throw new Exception(ex.Message); } }
public async Task <APIResult> ThirdShopRechargeQuery([FromBody] ThirdShopRechargeQueryModel model) { var parametermodel = new ThirdPartyDistributionParameterModel(); parametermodel.source_id = GetMerchant(model.ShopId).DaDaShopId.ToString(); var Data = JsonConvert.SerializeObject(model); parametermodel.body = Data; var data = parameter.ExThirdPartyDistributionParameterAction(parametermodel); var result = await httpClient.Post <ThirdRechargeQueryResult>($"{thirdConfig.Url}/api/balance/query", data); if (result.errorCode != 0 || result.status != "success") { throw new Exception(result.msg); } return(Success(result.result)); }
public async Task <APIResult> ThirdShopUpdate([FromBody] ThirdShopUpdateModel model) { double lat = model.lat; double lng = model.lng; var converResult = BaiduMapUtil.GetBdToGd(model.lng, model.lat); var parametermodel = new ThirdPartyDistributionParameterModel(); parametermodel.source_id = GetMerchant(model.ShopId).DaDaShopId.ToString(); model.lng = converResult.x; model.lat = converResult.y; var Data = JsonConvert.SerializeObject(model); parametermodel.body = Data; var data = parameter.ExThirdPartyDistributionParameterAction(parametermodel); var result = await httpClient.Post <ThirdResultModel>($"{thirdConfig.Url}/api/shop/update", data); if (result.errorCode != 0 || result.status != "success") { throw new Exception(result.msg); } var thirdshop = shopDb.ThirdShop.FirstOrDefault(r => r.OriginShopId == model.origin_shop_id); if (thirdshop == null) { throw new Exception("找不到该门店"); } thirdshop.ShopId = model.ShopId; thirdshop.AreaName = model.area_name; thirdshop.Business = model.business; thirdshop.CityName = model.city_name; thirdshop.ContactName = model.contact_name; thirdshop.Lat = lat; thirdshop.Lng = lng; thirdshop.OriginShopId = model.new_shop_id == null ? model.origin_shop_id : model.new_shop_id; thirdshop.Phone = model.phone; thirdshop.StationAddress = model.station_address; thirdshop.StationName = model.station_name; // thirdshop.Status = model.status; shopDb.SaveChanges(); return(Success(result)); }
public async Task <APIResult> OrderAccept([FromBody] OrderInfoQueryModel model) { var parametermodel = new ThirdPartyDistributionParameterModel(); parametermodel.source_id = GetMerchant(model.ShopId).DaDaShopId.ToString(); parametermodel.source_id = "73753";//测试 var Data = JsonConvert.SerializeObject(model); parametermodel.body = Data; var data = parameter.ExThirdPartyDistributionParameterAction(parametermodel); var result = await httpClient.Post <ThirdObjectResult>($"{thirdConfig.Url}/api/order/accept", data);//模拟接单 //var result = await httpClient.Post<ThirdObjectResult>($"{thirdConfig.Url}/api/order/fetch", data);//模拟取货 // var result = await httpClient.Post<ThirdObjectResult>($"{thirdConfig.Url}/api/order/finish", data);//模拟完成订单 //var result = await httpClient.Post<ThirdObjectResult>($"{thirdConfig.Url}/api/order/cancel", data);//模拟取消订单 //var result = await httpClient.Post<ThirdObjectResult>($"{thirdConfig.Url}/api/order/expire", data);//模拟订单过期 return(Success(result)); }
public async Task <CThirdInfoQuery> ThirdOrderQuery(COrderInfoQueryModel model) { var parametermodel = new ThirdPartyDistributionParameterModel(); parametermodel.source_id = GetMerchant(model.ShopId).DaDaShopId.ToString(); //parametermodel.source_id = "73753";//测试 var Data = JsonConvert.SerializeObject(model); parametermodel.body = Data; var data = parameter.ExThirdPartyDistributionParameterAction(parametermodel); var result = await httpClient.Post <CThirdInfoQueryResult>($"{thirdoptions.Url}/api/order/status/query", data); if (result.errorCode != 0 || result.status != "success") { // throw new Exception(result.msg); return(new CThirdInfoQuery()); } return(result.result); }
public APIResult TestThird([FromBody] ThirdPartyDistributionModel model) { // RechargeModel rechargeModel = new RechargeModel() { amount = 10, category = "pc", notify_url = "" }; var parametermodel = new ThirdPartyDistributionParameterModel(); switch (model.ApiUrl) { case "/merchantApi/merchant/add": parametermodel.source_id = ""; var merchant = new MerchantModel() { mobile = "15812808736", city_name = "东莞", contact_name = "万卓", contact_phone = "15812808736", email = "*****@*****.**", enterprise_address = "百安中心A栋1006", enterprise_name = "惠吃惠喝" }; model.Data = JsonConvert.SerializeObject(merchant); break; case "/api/shop/add": parametermodel.source_id = GetMerchant(model.ShopId).DaDaShopId.ToString(); parametermodel.body = model.Data; break; case "/api/cityCode/list": parametermodel.source_id = "73753"; parametermodel.body = model.Data; break; } parametermodel.body = model.Data; var data = parameter.ExThirdPartyDistributionParameterAction(parametermodel); var result = httpClient.Post <object>($"{thirdConfig.Url + model.ApiUrl}", data); return(Success(result)); }
public async Task <APIResult> ThirdMerchantAdd([FromBody] MerchantModel model) { var shop = shopDb.Shops.FirstOrDefault(r => r.Id == model.ShopId && !r.IsDel); if (shop == null) { throw new Exception("未找到商户"); } var parametermodel = new ThirdPartyDistributionParameterModel(); parametermodel.source_id = ""; var Data = JsonConvert.SerializeObject(model); parametermodel.body = Data; var data = parameter.ExThirdPartyDistributionParameterAction(parametermodel); var result = await httpClient.Post <ThirdResultModel>($"{thirdConfig.Url}/merchantApi/merchant/add", data); if (result.errorCode != 0 || result.status != "success") { throw new Exception(result.msg); } Merchant merchant = new Merchant(); merchant.CityName = model.city_name; merchant.ContactName = model.contact_name; merchant.ContactPhone = model.contact_phone; merchant.DaDaShopId = result.result; merchant.Email = model.email; merchant.EnterpriseAddress = model.enterprise_address; merchant.EnterpriseName = model.enterprise_name; merchant.Mobile = model.mobile; merchant.ShopId = shop.Id; shopDb.Merchant.Add(merchant); shopDb.SaveChanges(); return(Success(result)); }