增加同步物流模块

修改现有架构,改为分模块( 简易版)
This commit is contained in:
chfei committed 2026-09-22 17:52:42 +08:00
1 parent 15e11618c9
commit fa03add754
120 files changed
+9438 -299

No files matched your search

+2 -2
View File
@@ -5,9 +5,9 @@
-->
<configuration>
<connectionStrings>
<!--<add name="ConnKJD" connectionString="Max Pool Size=512;Database='kjd';Data Source='nj-cynosdbmysql-grp-hl51pkfr.sql.tencentcdb.com';Port=27660;User Id='kjd';Password='Temukjd0625';Charset=utf8mb4;"/>-->
<add name="ConnKJD" connectionString="Max Pool Size=512;Database='kjd';Data Source='nj-cynosdbmysql-grp-hl51pkfr.sql.tencentcdb.com';Port=27660;User Id='kjd';Password='Temukjd0625';Charset=utf8mb4;"/>
<add name="ConnKJD" connectionString="Server=192.168.0.200;Port=3306;Database=mysql;Uid=root;Pwd=123456;"/>
<!--<add name="ConnKJD" connectionString="Server=192.168.0.200;Port=3306;Database=mysql;Uid=root;Pwd=123456;"/>-->
<add name="ConnKJDBAK" connectionString="Max Pool Size=512;Database='kjd';Data Source='nj-cynosdbmysql-grp-9s7x16mt.sql.tencentcdb.com';Port=24049;User Id='kjdbak';Password='Temukjd0126';Charset=utf8mb4;"/>
<add name="UpdateVersion" connectionString="525"/>
+153
View File
@@ -0,0 +1,153 @@
using Autofac;
using Autofac.Integration.WebApi;
using KJD_Web;
using KJD_Web.Services.Users;
using MAX.Core.Cryptography;
using MAX.Core.Helpers;
using Store.Framework.DependencyInjection;
using Store.VirtualLogistics.Apis;
using Store.VirtualLogistics.Models;
using Store.VirtualLogistics.Services;
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Security.Cryptography;
using System.Text;
using System.Threading.Tasks;
using System.Web.Http;
namespace WebServiceTest;
internal class GiftLogisticsTest
{
private static NUnitDebugListener? _listener;
private IContainer _container;
private VirtualLogisticsApi logisticsApi;
[SetUp]
public void Setup()
{
_listener = new NUnitDebugListener();
Debug.Listeners.Add(_listener);
var config = new HttpConfiguration();
_container = ContainerConfig.BuildContainer();
config.DependencyResolver = new AutofacWebApiDependencyResolver(_container);
WebApiConfig.Register(config);
logisticsApi = _container.Resolve<VirtualLogisticsApi>();
}
[TearDown]
public void TearDown()
{
_container?.Dispose();
_listener.Dispose();
}
[Test]
public void TestSign()
{
//new GiftLogisticsApi().GetSign();
long sid = 1574769204;
string UserName = "liang";
string Passworkd = "123456";
string pwd = MD5Helper.Md5_Lower32(MD5Helper.Md5_Lower32(Passworkd));
string s = $"{UserName}{pwd}{sid}";
string sign = MD5Helper.Md5_Lower32(s);
Console.Write(sign);
}
[Test]
public void GetUserMoneyTest()
{
var user = logisticsApi.GetUserMoney();
Console.WriteLine(user.Money);
}
[Test]
public void GetExpressListTest()
{
var user = logisticsApi.GetExpressList();
Console.WriteLine(string.Join(" ", user.Select(a => a.Name)));
}
[Test]
public void GetCangListTest()
{
var list = logisticsApi.GetCangList();
Console.WriteLine(string.Join(" ", list.Select(a => $"{a.CangId}:{a.SendProvince}{a.SendCity}{a.SendDistrict}{a.SendAddress}")));
}
[Test]
public void GetGoodsListTest()
{
var list = logisticsApi.GetGoodsList();
Console.WriteLine(string.Join(" ", list.Select(a => $"{a.GoodsId}:{a.GoodsName}({a.Price})")));
}
[Test]
public void QueryOrderStatus()
{
try
{
var ret = logisticsApi.QueryOrderStatus(["260705-168736857712823"]);
Console.WriteLine(string.Join(" ", ret.Data.Select(a => $"{a.OrderSn}:{a.KuaidiSn}({a.Status})")));
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
[Test]
public void BuyTest()
{
//var request = new BuyRequest
//{
// KuaidiId = "874",
// GoodsId = "8473",
// CangId = "914",
// Platform = 6,
// Auth = 1,
// SendName = "张三",
// SendMobile = "18255185853",
// SendProvince = "辽宁省",
// SendCity = "大连市",
// SendDistrict = "甘井子区",
// SendAddress = "革镇堡幸福家园2栋",
// RecList = new List<RecItem>
// {
// new RecItem
// {
// OrderSn = "3739252814971847936",
// RecName = "李四",
// RecMobile = "18255185853",
// RecProvince = "湖南省",
// RecCity = "衡阳市",
// RecDistrict = "雁峰区",
// RecAddress = "和谐小区 1栋",
// OtherKuaidiSn="315097997688420"
// }
// }
//};
//var ret = logisticsApi.Buy(request);
var userService = _container.Resolve<VirtualLogisticsService>();
var ret = userService.Buy("260705-168736857712823", "4439341152678214144");
if (ret != null)
{
Console.WriteLine(string.Join(" ", ret.Select(a => $"{a.OrderId}:{a.TrackingNumber}")));
}
}
[Test]
public void UploadPickupTest()
{
var data = new List<PickupItem>
{
new PickupItem
{
BufaSn = "SF1234567890",
PickupCode = "1-2-3",
Address = "菜鸟驿站"
}
};
var ret = logisticsApi.UploadPickup(data);
Console.WriteLine($"{ret.Code} {ret.Msg}");
if (ret.Data != null)
{
Console.WriteLine(string.Join(" ", ret.Data.Select(a => $"{a.BufaSn}:{a.Success}")));
}
}
}
+18 -18
View File
@@ -45,25 +45,25 @@ namespace WebServiceTest
}
[Test]
[TestCase("15266666666")]
[TestCase("15698175212")]
[TestCase("18238114231")]
[TestCase("15870095938")]
[TestCase("13388889999")]
[TestCase("13860701921")]
[TestCase("15907090308")]
[TestCase("17837688880")]
[TestCase("13682525364")]
[TestCase("13048056467")]
[TestCase("18317672222")]
[TestCase("18500143331")]
//[TestCase("15266666666")]
//[TestCase("15698175212")]
//[TestCase("18238114231")]
//[TestCase("15870095938")]
//[TestCase("13388889999")]
//[TestCase("13860701921")]
//[TestCase("15907090308")]
//[TestCase("17837688880")]
//[TestCase("13682525364")]
//[TestCase("13048056467")]
//[TestCase("18317672222")]
//[TestCase("18500143331")]
[TestCase("17318585555")]
[TestCase("13459139999")]
[TestCase("15206200631")]
[TestCase("18737568536")]
[TestCase("18949822610")]
[TestCase("18165955361")]
[TestCase("18556577919")]
//[TestCase("13459139999")]
//[TestCase("15206200631")]
//[TestCase("18737568536")]
//[TestCase("18949822610")]
//[TestCase("18165955361")]
//[TestCase("18556577919")]
public void ApplyOemWithdrawalTest(string name)
{
WXOemManage manage = new WXOemManage();
+28 -2
View File
@@ -3,6 +3,7 @@ using Autofac.Integration.WebApi;
using KJD_Web;
using KJD_Web.Services.Users;
using Newtonsoft.Json;
using Store.Framework.DependencyInjection;
using System;
using System.Collections.Generic;
using System.Diagnostics;
@@ -48,10 +49,29 @@ internal class UserTest
}
[Test]
public void SettleOEM()
//[TestCase("15698175212")]
//[TestCase("18238114231")]
//[TestCase("15870095938")]
//[TestCase("13388889999")]
//[TestCase("15907090308")]
//[TestCase("17837688880")]
//[TestCase("13048056467")]
[TestCase("17318585555")]
//[TestCase("13459139999")]
//[TestCase("18737568536")]
//[TestCase("18949822610")]
//[TestCase("18165955361")]
//[TestCase("18556577919")]
//[TestCase("18317672222")]
//[TestCase("17153959999")]
//[TestCase("15056001263")]
//[TestCase("17737544938")]
//[TestCase("13306583931")]
//[TestCase("13938677077")]
public void SettleOEM(string userName)
{
var userService = _container.Resolve<UserService>();
var oem = userService.SettleOemFlows("13938677077");
var oem = userService.SettleOemFlows(userName);
Console.WriteLine(new
{
oem.AvailableBalance,
@@ -77,4 +97,10 @@ internal class UserTest
var data = userService.GetUserAmountSummary("15395107196");
Console.WriteLine(JsonConvert.SerializeObject(data));
}
//[Test]
//public void Fill()
//{
// var userService = _container.Resolve<UserService>();
// userService.FillHistoryOemAmount();
//}
}
@@ -21,6 +21,7 @@
<ItemGroup>
<ProjectReference Include="..\..\KJD_WebService\KJD_WebService.csproj" />
<ProjectReference Include="..\..\Store.SyncLogistics\Store.SyncLogistics.csproj" />
</ItemGroup>
<ItemGroup>