Browse Source

Merge branch 'master' of http://code.qiyue666.com/pengcong001/bbwy

AddValidOverTime
彭聪 2 years ago
parent
commit
b81df2812e
  1. 6
      BBWY.Client/App.xaml.cs
  2. 2
      BBWY.Client/GlobalContext.cs
  3. 32
      BBWY.Client/ViewModels/MainViewModel.cs
  4. 258
      BBWY.JDSDK/Request/AdsIbgUniversalJosServiceOrderQueryRequest.cs
  5. 21
      BBWY.JDSDK/Request/SellerDeliverySendPromiseTemplateJsfServiceQuerySendTemplateByCategoryRequest.cs
  6. 11
      BBWY.JDSDK/Response/SellerDeliverySendPromiseTemplateJsfServiceQuerySendTemplateByCategoryResponse.cs
  7. 2
      BBWY.Server.Business/EvaluationAssistant/EvaluationAssistantBusiness.cs
  8. 32
      BBWY.Server.Business/PlatformSDK/JDBusiness.cs
  9. 40
      BBWY.Server.Business/PurchaseOrderV2/BatchPurchase/BatchPurchaseBusiness.cs

6
BBWY.Client/App.xaml.cs

@ -53,14 +53,14 @@ namespace BBWY.Client
//userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxNjM1OTMyMDAyMjcwMDU2NDQ4IiwidGVhbUlkIjoiMTU0MDg4NTU3MDYyNzA0NzQyNCIsInNvblRlYW1JZHMiOiIxNTQwODg1NTcwNjI3MDQ3NDI0IiwiZXhwIjoxNzEwNDk2NTQ1fQ.Sx2vGJcYGf98x99slQLU3vt7yWdjspptSpbUCcZgWek";
//齐越梧桐
//userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxNjY1ODk1OTgzMzc4MDc1NjQ4IiwidGVhbUlkIjoiMTUxNjcxNTM3MjQ0NTcwMDA5NiIsInNvblRlYW1JZHMiOiIxNTQwODg1NTcwNjI3MDQ3NDI0LDE1MTY3MTUzNzI0NDU3MDAwOTYiLCJleHAiOjE3MjQyOTE2MDZ9.NG6wDqHJ5ozmEDcAt2duJ50IcGarygrQ2bmiP4TGNRE";
userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxNjY1ODk1OTgzMzc4MDc1NjQ4IiwidGVhbUlkIjoiMTUxNjcxNTM3MjQ0NTcwMDA5NiIsInNvblRlYW1JZHMiOiIxNTQwODg1NTcwNjI3MDQ3NDI0LDE1MTY3MTUzNzI0NDU3MDAwOTYiLCJleHAiOjE3MjQyOTE2MDZ9.NG6wDqHJ5ozmEDcAt2duJ50IcGarygrQ2bmiP4TGNRE";
//齐越山鸡
userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxNTM1MzMwMzI4ODkyMTQ5NzYwIiwidGVhbUlkIjoiMTUxNjk3NDI1MDU0MjUwMTg4OCIsInNvblRlYW1JZHMiOiIxNDM2Mjg4NTAwMjM1MjQzNTIwIiwiZXhwIjoxNjk0NjY5NjkxfQ.cSwro-7bGwOu92YejH9JhMenTai7Mvf99i2paQCmxIw";
// userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxNTM1MzMwMzI4ODkyMTQ5NzYwIiwidGVhbUlkIjoiMTUxNjk3NDI1MDU0MjUwMTg4OCIsInNvblRlYW1JZHMiOiIxNDM2Mjg4NTAwMjM1MjQzNTIwIiwiZXhwIjoxNjk0NjY5NjkxfQ.cSwro-7bGwOu92YejH9JhMenTai7Mvf99i2paQCmxIw";
//齐越陈默
//userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxNjI0OTUxNjgzNTc2NTAwMjI0IiwidGVhbUlkIjoiMTYyMDM0MjAxNDcwNjk3ODgxNiIsInNvblRlYW1JZHMiOiIxNjIwMzQyMDE0NzA2OTc4ODE2LDE2MjAzNDQxNDA4NTAwMDgwNjQsMTQxMDk1NTYwNDYxMjA5MTkwNCIsImV4cCI6MTcyNDkxNDM5M30.tIgo70tzRxZyUQkX1Jsh9I4ySciX0VC9HMMOoTnwVtM";
userToken = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1c2VySWQiOiIxNjI0OTUxNjgzNTc2NTAwMjI0IiwidGVhbUlkIjoiMTYyMDM0MjAxNDcwNjk3ODgxNiIsInNvblRlYW1JZHMiOiIxNjIwMzQyMDE0NzA2OTc4ODE2LDE2MjAzNDQxNDA4NTAwMDgwNjQsMTQxMDk1NTYwNDYxMjA5MTkwNCIsImV4cCI6MTcyNDkxNDM5M30.tIgo70tzRxZyUQkX1Jsh9I4ySciX0VC9HMMOoTnwVtM";
#else
//var uid = e.Args.Count() > 0 ? e.Args.LastOrDefault(args => args.StartsWith("uid:")) : string.Empty;

2
BBWY.Client/GlobalContext.cs

@ -13,7 +13,7 @@ namespace BBWY.Client
{
ShopServiceGroupList = new List<string>();
ShopServiceGroupLowerList = new List<string>();
ClientVersion = "10181";
ClientVersion = "10182";
}
private User user;

32
BBWY.Client/ViewModels/MainViewModel.cs

@ -92,7 +92,7 @@ namespace BBWY.Client.ViewModels
{
this.w2m = w2m;
this.managerDepartment = new List<string>() { "董事办", "财务部", "技术部", "总经办" };
this.packDepartment = new List<string>() { "打包组", "发货组", "仓储部" };
this.packDepartment = new List<string>() { "打包组", "发货组", "仓储部", "供应链部" };
this.httpClientFactory = httpClientFactory;
@ -310,23 +310,32 @@ namespace BBWY.Client.ViewModels
CreateMenu();
IList<Department> departmentList = null;
var response1 = shopService.GetDepartmentList();
if (!response1.Success)
throw new Exception(response1.Msg);
departmentList = response1.Data.Map<IList<Department>>();
//if (GlobalContext.User.TeamName == "刷单组")
//{
var shopList = new List<Shop>();
foreach (var d in departmentList)
shopList.AddRange(d.ShopList);
GlobalContext.User.ShopList = shopList;
if (GlobalContext.User.TeamName == "刷单组" || this.packDepartment.Contains(GlobalContext.User.TeamName) || packDepartment.Any(m => GlobalContext.User.SonDepartmentNames.Contains(m)) ||
managerDepartment.Contains(GlobalContext.User.TeamName) ||
managerDepartment.Any(m => GlobalContext.User.SonDepartmentNames.Contains(m)))
{
ShowShopChoosePanel = true;
var response = shopService.GetDepartmentList();
if (!response.Success)
throw new Exception(response.Msg);
departmentList = response.Data.Map<IList<Department>>();
//if (GlobalContext.User.TeamName == "刷单组")
//{
var shopList = new List<Shop>();
foreach (var d in departmentList)
shopList.AddRange(d.ShopList);
GlobalContext.User.ShopList = shopList;
//}
}
else
@ -337,7 +346,6 @@ namespace BBWY.Client.ViewModels
departmentList = response.Data;
if (departmentList.Count == 0)
throw new Exception("缺少有效的部门数据");
var shopIds = new List<string>();
foreach (var d in departmentList)
{

258
BBWY.JDSDK/Request/AdsIbgUniversalJosServiceOrderQueryRequest.cs

@ -6,193 +6,193 @@ namespace Jd.Api.Request
{
public class AdsIbgUniversalJosServiceOrderQueryRequest : JdRequestBase<AdsIbgUniversalJosServiceOrderQueryResponse>
{
public string
clickStartDay
{get; set;}
public string
clickStartDay
{ get; set; }
public string
orderType
{get; set;}
public string
orderType
{ get; set; }
public string
orderStartDay
{get; set;}
public string
orderStartDay
{ get; set; }
public string
orderStatus
{get; set;}
public string
orderStatus
{ get; set; }
public string
pageSize
{get; set;}
public string
pageSize
{ get; set; }
public string
platform
{get; set;}
public string
adGroupId
{get; set;}
public string
paymentType
{get; set;}
public string
platform
{ get; set; }
public string
adGroupId
{ get; set; }
public string
paymentType
{ get; set; }
public string
activityId
{get; set;}
public string
activityId
{ get; set; }
public string
mediaGroupId
{get; set;}
public string
mediaGroupId
{ get; set; }
public string
province
{get; set;}
public string
province
{ get; set; }
public string
clickOrOrderDay
{get; set;}
public string
clickOrOrderDay
{ get; set; }
public string
clickOrOrderCaliber
{get; set;}
public string
clickOrOrderCaliber
{ get; set; }
public string
orderEndDay
{get; set;}
public string
orderEndDay
{ get; set; }
public string
clickEndDay
{get; set;}
public string
clickEndDay
{ get; set; }
public string
giftFlag
{get; set;}
public string
giftFlag
{ get; set; }
public string
campaignId
{get; set;}
public string
campaignId
{ get; set; }
public string
deliveryType
{get; set;}
public string
deliveryType
{ get; set; }
public string
mediaType
{get; set;}
public string
mediaType
{ get; set; }
public string
impressionOrClickEffect
{get; set;}
public string
impressionOrClickEffect
{ get; set; }
public string
posPackageId
{get; set;}
public string
posPackageId
{ get; set; }
public string
page
{get; set;}
public string
page
{ get; set; }
public string
startDay
{get; set;}
public string
startDay
{ get; set; }
public string
endDay
{get; set;}
public string
endDay
{ get; set; }
public string
myself
{get; set;}
public string
myself
{ get; set; }
public string
businessType
{get; set;}
public string
businessType
{ get; set; }
public string
accessPin
{get; set;}
public string
accessPin
{ get; set; }
public string
authType
{get; set;}
public string
authType
{ get; set; }
public string
deliverySystemType
{get; set;}
public string
deliverySystemType
{ get; set; }
public string
jdMediaUserId
{get; set;}
public string
jdMediaUserId
{ get; set; }
public override string ApiName
{
get{return "jingdong.ads.ibg.UniversalJosService.order.query";}
}
protected override void PrepareParam(IDictionary<String, Object> parameters)
{
parameters.Add("clickStartDay", this. clickStartDay
public override string ApiName
{
get { return "jingdong.ads.ibg.UniversalJosService.order.query"; }
}
protected override void PrepareParam(IDictionary<String, Object> parameters)
{
parameters.Add("clickStartDay", this.clickStartDay
);
parameters.Add("orderType", this. orderType
parameters.Add("orderType", this.orderType
);
parameters.Add("orderStartDay", this. orderStartDay
parameters.Add("orderStartDay", this.orderStartDay
);
parameters.Add("orderStatus", this. orderStatus
parameters.Add("orderStatus", this.orderStatus
);
parameters.Add("pageSize", this. pageSize
parameters.Add("pageSize", this.pageSize
);
parameters.Add("platform", this. platform
parameters.Add("platform", this.platform
);
parameters.Add("adGroupId", this. adGroupId
parameters.Add("adGroupId", this.adGroupId
);
parameters.Add("paymentType", this. paymentType
parameters.Add("paymentType", this.paymentType
);
parameters.Add("activityId", this. activityId
parameters.Add("activityId", this.activityId
);
parameters.Add("mediaGroupId", this. mediaGroupId
parameters.Add("mediaGroupId", this.mediaGroupId
);
parameters.Add("province", this. province
parameters.Add("province", this.province
);
parameters.Add("clickOrOrderDay", this. clickOrOrderDay
parameters.Add("clickOrOrderDay", this.clickOrOrderDay
);
parameters.Add("clickOrOrderCaliber", this. clickOrOrderCaliber
parameters.Add("clickOrOrderCaliber", this.clickOrOrderCaliber
);
parameters.Add("orderEndDay", this. orderEndDay
parameters.Add("orderEndDay", this.orderEndDay
);
parameters.Add("clickEndDay", this. clickEndDay
parameters.Add("clickEndDay", this.clickEndDay
);
parameters.Add("giftFlag", this. giftFlag
parameters.Add("giftFlag", this.giftFlag
);
parameters.Add("campaignId", this. campaignId
parameters.Add("campaignId", this.campaignId
);
parameters.Add("deliveryType", this. deliveryType
parameters.Add("deliveryType", this.deliveryType
);
parameters.Add("mediaType", this. mediaType
parameters.Add("mediaType", this.mediaType
);
parameters.Add("impressionOrClickEffect", this. impressionOrClickEffect
parameters.Add("impressionOrClickEffect", this.impressionOrClickEffect
);
parameters.Add("posPackageId", this. posPackageId
parameters.Add("posPackageId", this.posPackageId
);
parameters.Add("page", this. page
parameters.Add("page", this.page
);
parameters.Add("startDay", this. startDay
parameters.Add("startDay", this.startDay
);
parameters.Add("endDay", this. endDay
parameters.Add("endDay", this.endDay
);
parameters.Add("myself", this. myself
parameters.Add("myself", this.myself
);
parameters.Add("businessType", this. businessType
parameters.Add("businessType", this.businessType
);
parameters.Add("accessPin", this. accessPin
parameters.Add("accessPin", this.accessPin
);
parameters.Add("authType", this. authType
parameters.Add("authType", this.authType
);
parameters.Add("deliverySystemType", this. deliverySystemType
parameters.Add("deliverySystemType", this.deliverySystemType
);
parameters.Add("jdMediaUserId", this. jdMediaUserId
parameters.Add("jdMediaUserId", this.jdMediaUserId
);
}
}
}
}

21
BBWY.JDSDK/Request/SellerDeliverySendPromiseTemplateJsfServiceQuerySendTemplateByCategoryRequest.cs

@ -0,0 +1,21 @@
using BBWY.JDSDK.Response;
using Jd.Api;
using System.Collections.Generic;
namespace BBWY.JDSDK.Request
{
public class SellerDeliverySendPromiseTemplateJsfServiceQuerySendTemplateByCategoryRequest : JdRequestBase<SellerDeliverySendPromiseTemplateJsfServiceQuerySendTemplateByCategoryResponse>
{
public override string ApiName => "jingdong.seller.delivery.SendPromiseTemplateJsfService.querySendTemplateByCategory";
public int categoryId { get; set; }
public bool dzSku { get; set; }
protected override void PrepareParam(IDictionary<string, object> paramters)
{
paramters.Add("categoryId", this.categoryId);
paramters.Add("dzSku", this.dzSku);
}
}
}

11
BBWY.JDSDK/Response/SellerDeliverySendPromiseTemplateJsfServiceQuerySendTemplateByCategoryResponse.cs

@ -0,0 +1,11 @@
using Jd.Api;
using System;
using System.Collections.Generic;
using System.Text;
namespace BBWY.JDSDK.Response
{
public class SellerDeliverySendPromiseTemplateJsfServiceQuerySendTemplateByCategoryResponse: JdResponse
{
}
}

2
BBWY.Server.Business/EvaluationAssistant/EvaluationAssistantBusiness.cs

@ -654,7 +654,7 @@ namespace BBWY.Server.Business
MainProductSpu = promotionTask.MainProductSpu,
HaveGiftTemplate = promotionTask.GiftTemplateId != null && promotionTask.GiftTemplateId != 0,
DeleteGiftSkuList = startResponse.DeleteGiftSkuList
}, GetYunDingRequestHeader(), HttpMethod.Post, timeOutSeconds: 150);
}, GetYunDingRequestHeader(), HttpMethod.Post, timeOutSeconds: 300);
var errorBack = new Action<long, string>((id, errorMsg) =>
{

32
BBWY.Server.Business/PlatformSDK/JDBusiness.cs

@ -1,5 +1,6 @@
using BBWY.Common.Extensions;
using BBWY.Common.Models;
using BBWY.JDSDK.Request;
using BBWY.Server.Model;
using BBWY.Server.Model.Dto;
using Jd.ACES;
@ -967,6 +968,9 @@ namespace BBWY.Server.Business
var response = jdClient.Execute(req, request.AppToken, DateTime.Now.ToLocalTime());
if (response.Json == null)
response.Json = JObject.Parse(response.Body);
nLogManager.Default().Info($"获取销售属性 任务Id {request.Id} 返回内容 {response.Body} 模板sku数量 {request.GiftTemplateSkuList.Count()}");
var colorProperty = response.Json["jingdong_category_read_findAttrsByCategoryIdUnlimitCate_responce"]["findattrsbycategoryidunlimitcate_result"].FirstOrDefault(j => j["attrValueList"] != null && j["attrValueList"].Count() > 0);
if (colorProperty == null)
{
@ -1071,8 +1075,32 @@ namespace BBWY.Server.Business
(string.IsNullOrEmpty(res.ErrorMsg) ? res.ErrMsg : res.ErrorMsg);
if (errorMsg.Contains("此类目发货时效必填"))
{
int? promiseId = null;
#region 查询时效模板
{
var shixiaoReq = new SellerDeliverySendPromiseTemplateJsfServiceQuerySendTemplateByCategoryRequest();
shixiaoReq.categoryId = int.Parse(request.MainProductCategoryId);
shixiaoReq.dzSku = true;
var shixiaoRes = jdClient.Execute(shixiaoReq, request.AppToken, DateTime.Now.ToLocalTime());
if (shixiaoRes.IsError)
{
RollBackWhenStartPromotionError(request.AppKey, request.AppSecret, request.AppToken, null, request.MainProductSpu, request.FullTitle, brandName, false);
throw new BusinessException($"查询时效模板失败-{(string.IsNullOrEmpty(shixiaoRes.ErrorMsg) ? shixiaoRes.ErrMsg : shixiaoRes.ErrorMsg)}");
}
if (shixiaoRes.Json == null)
shixiaoRes.Json = JObject.Parse(shixiaoRes.Body);
var shixiaoJToken = shixiaoRes.Json["jingdong_seller_delivery_SendPromiseTemplateJsfService_querySendTemplateByCategory_responce"]["returnType"]["bizResponse"]["promiseTemplateDtoList"].Children().FirstOrDefault();
if (shixiaoJToken == null)
{
RollBackWhenStartPromotionError(request.AppKey, request.AppSecret, request.AppToken, null, request.MainProductSpu, request.FullTitle, brandName, false);
throw new BusinessException($"查询时效模板失败-未查询到时效模板");
}
promiseId = shixiaoJToken.Value<int>("templateId");
}
#endregion
foreach (var skuParam in req.skus)
skuParam.promiseId = 30603710;
skuParam.promiseId = promiseId;
res = jdClient.Execute(req, request.AppToken, DateTime.Now.ToLocalTime());
if (res.IsError)
{
@ -1264,7 +1292,7 @@ namespace BBWY.Server.Business
public override void StartJDPromotionDelayTask(StartPromotionTaskDelayRequest request)
{
Thread.Sleep(30 * 1000);
Thread.Sleep(60 * 1000);
try
{
CheckJDPromotionTask(request.JDPromotionId, request.AppKey, request.AppSecret, request.AppToken);

40
BBWY.Server.Business/PurchaseOrderV2/BatchPurchase/BatchPurchaseBusiness.cs

@ -1047,27 +1047,29 @@ namespace BBWY.Server.Business
var platformSDKBusiness = platformSDKBusinessList.FirstOrDefault(p => p.Platform == request.Platform);
var payOrderResponse = platformSDKBusiness.CancelPurchaseOrder(request);
if (payOrderResponse.Success)//取消成功
if (!payOrderResponse.Success)//取消成功
{
//var order = fsql.Select<PurchaseOrderV2>().Where(p => p.Id == request.OrderId).ToOne();
fsql.Update<PurchaseOrderV2>(request.OrderId)
.Set(po => po.OrderState, Enums.PurchaseOrderState.)
.ExecuteAffrows();
try
{
var qikuResponse = restApiService.SendRequest("http://qiku.qiyue666.com/",
$"/api/PackPurchaseTask/CancelOrderPackTask?orderId={request.OrderId}",
null,
null,
HttpMethod.Post);
if (qikuResponse.StatusCode != System.Net.HttpStatusCode.OK)
throw new Exception(qikuResponse.Content);
}
catch (Exception ex)
{
nLogManager.GetLogger($"取消打包任务-{request.OrderId}").Error(ex, JsonConvert.SerializeObject(request));
}
if (!payOrderResponse.Msg.Contains("订单已删除"))
throw new BusinessException(payOrderResponse.Msg);
}
//var order = fsql.Select<PurchaseOrderV2>().Where(p => p.Id == request.OrderId).ToOne();
fsql.Update<PurchaseOrderV2>(request.OrderId)
.Set(po => po.OrderState, Enums.PurchaseOrderState.)
.ExecuteAffrows();
try
{
var qikuResponse = restApiService.SendRequest("http://qiku.qiyue666.com/",
$"/api/PackPurchaseTask/CancelOrderPackTask?orderId={request.OrderId}",
null,
null,
HttpMethod.Post);
if (qikuResponse.StatusCode != System.Net.HttpStatusCode.OK)
throw new Exception(qikuResponse.Content);
}
catch (Exception ex)
{
nLogManager.GetLogger($"取消打包任务-{request.OrderId}").Error(ex, JsonConvert.SerializeObject(request));
}
}

Loading…
Cancel
Save