Commit f36239db by guanzhenshan

增加同步sku财务分类服务

parent 524491de
......@@ -7,22 +7,22 @@ namespace Bailun.DC.AllotOrderDetail
{
class Program
{
static async Task Main(string[] args)
{
Console.WriteLine("启动服务 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
var builder = new HostBuilder().ConfigureServices((hostContext, services) =>
{
services.AddHostedService<Services>();
});
//static async Task Main(string[] args)
//{
// Console.WriteLine("启动服务 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
// var builder = new HostBuilder().ConfigureServices((hostContext, services) =>
// {
// services.AddHostedService<Services>();
// });
await builder.RunConsoleAsync();
}
// await builder.RunConsoleAsync();
//}
//static void Main(string[] args)
//{
// var service = new Services();
// service.Init();
//}
static void Main(string[] args)
{
var service = new Services();
service.Init();
}
}
}
......@@ -75,7 +75,7 @@ namespace Bailun.DC.AllotOrderDetail
var total = -1;
//测试
//starttime = DateTime.Parse("2018-12-05");
starttime = DateTime.Parse("2020-07-01");
while (total == -1 || total > ((page-1) * rows))
{
......@@ -88,8 +88,8 @@ namespace Bailun.DC.AllotOrderDetail
page = page,
rows = rows
},
StartTime = starttime.ToString("yyyy-MM-dd HH:mm:ss"),
EndTime = endtime.ToString("yyyy-MM-dd HH:mm:ss"),
StartTime = "2020-07-29 17:15",//starttime.ToString("yyyy-MM-dd HH:mm:ss"),
EndTime = "2020-07-29 17:16"//endtime.ToString("yyyy-MM-dd HH:mm:ss"),
},
};
......
using System;
using System.Collections.Generic;
using System.Text;
namespace Bailun.DC.Models
{
/// <summary>
/// 财务分类
/// </summary>
public class dc_base_sku_finance_category
{
public int id { get; set; }
public int bailuncategoryid { get; set; }
public string bailuncategoryname { get; set; }
public int financecategoryid { get; set; }
public string financecategoryname { get; set; }
public string site { get; set; }
public DateTime createtime { get; set; }
}
}
......@@ -68,7 +68,7 @@ namespace Bailun.DC.Services
}
else
{
sqlwhere += " order by oneday_total_sales desc";
sqlwhere += " order by oneday_total_sales desc";
}
......
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp2.1</TargetFramework>
<LangVersion>latest</LangVersion>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Dapper" Version="2.0.35" />
<PackageReference Include="Dapper.SimpleCRUD" Version="2.2.0.1" />
<PackageReference Include="Microsoft.Extensions.Hosting" Version="3.1.7" />
<PackageReference Include="MySql.Data" Version="8.0.21" />
<PackageReference Include="Newtonsoft.Json" Version="10.0.1" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Bailun.DC.Common\Bailun.DC.Common.csproj" />
</ItemGroup>
</Project>
FROM microsoft/dotnet:2.1-runtime AS base
WORKDIR /app
RUN /bin/cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && echo 'Asia/Shanghai' >/etc/timezone
FROM microsoft/dotnet:2.1-sdk AS build
WORKDIR /src
COPY Bailun.DC.SyncSkuFinanceCategory/Bailun.DC.SyncSkuFinanceCategory.csproj Bailun.DC.SyncSkuFinanceCategory/
COPY Bailun.DC.Common/Bailun.DC.Common.csproj Bailun.DC.Common/
RUN dotnet restore Bailun.DC.SyncSkuFinanceCategory/Bailun.DC.SyncSkuFinanceCategory.csproj
COPY . .
WORKDIR /src/Bailun.DC.SyncSkuFinanceCategory
RUN dotnet build Bailun.DC.SyncSkuFinanceCategory.csproj -c Release -o /app
FROM build AS publish
RUN dotnet publish Bailun.DC.SyncSkuFinanceCategory.csproj -c Release -o /app
FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "Bailun.DC.SyncSkuFinanceCategory.dll"]
using System;
using System.Collections.Generic;
using System.Text;
namespace Bailun.DC.SyncSkuFinanceCategory.Models
{
public class dc_base_sku_finance_category
{
public int id { get; set; }
public int bailuncategoryid { get; set; }
public string bailuncategoryname { get; set; }
public int financecategoryid { get; set; }
public string financecategoryname { get; set; }
public string site { get; set; }
public DateTime createtime { get; set; }
}
}
using System;
using System.Collections.Generic;
using System.Text;
namespace Bailun.DC.SyncSkuFinanceCategory.Models
{
public class mCategory
{
public int bailunCategoryId { get; set; }
public string bailunCateFullName { get; set; }
public int platCateoryId { get; set; }
public string platCateFullName { get; set; }
public string site { get; set; }
}
}
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using System;
using System.Threading.Tasks;
namespace Bailun.DC.SyncSkuFinanceCategory
{
class Program
{
/// <summary>
/// 同步sku财务分类
/// </summary>
/// <param name="args"></param>
static async Task Main(string[] args)
{
Console.WriteLine("启动服务 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
var builder = new HostBuilder().ConfigureServices((hostContext, services) =>
{
services.AddHostedService<Services>();
});
await builder.RunConsoleAsync();
}
//static void Main(string[] args)
//{
// //Console.WriteLine("Hello World!");
// new Services().init();
//}
}
}
using System;
using System.Collections.Generic;
using System.Text;
using MySql.Data.MySqlClient;
using Dapper;
using Microsoft.Extensions.Hosting;
using System.Threading;
using System.Threading.Tasks;
namespace Bailun.DC.SyncSkuFinanceCategory
{
public class Services : BackgroundService
{
string url = "http://api.skums.bailuntec.com/api/category/CategoryBailun/getcategorymappinglist?Plat=financecate"; // Index=1 Num=20
private Timer _timer;
protected override Task ExecuteAsync(CancellationToken stoppingToken)
{
_timer = new Timer(DoWork, null, TimeSpan.Zero, TimeSpan.FromMinutes(1));
return Task.CompletedTask;
}
private void DoWork(object state)
{
try
{
var now = DateTime.Now;
if (now.Hour == 23 && now.Minute==10) //每晚23:10同步一次
{
Console.WriteLine("开始启动 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
Init();
Console.WriteLine("任务运行完成 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
public Services() {
Dapper.SimpleCRUD.SetDialect(SimpleCRUD.Dialect.MySQL);
}
public void Init()
{
var page = 1;
var pagesize = 1000;
var count = 0;
while (count == 0 || count == pagesize)
{
var result = Bailun.DC.Common.HttpHelper.NetHelper.Request(url + "&Index=" + page + "&Num=" + pagesize);
if (!string.IsNullOrEmpty(result))
{
var json = Newtonsoft.Json.JsonConvert.DeserializeObject<mResponseResult>(result);
if (json.statusCode == 200)
{
count = json.result.Count;
//保存数据
Save(json.result);
page++;
}
}
}
}
public void Save(List<Models.mCategory> list)
{
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
foreach (var item in list)
{
cn.Execute("delete from dc_base_sku_finance_category where bailuncategoryid=" + item.bailunCategoryId + " and financecategoryid=" + item.platCateoryId);
var m = new Models.dc_base_sku_finance_category {
bailuncategoryid = item.bailunCategoryId,
bailuncategoryname = item.bailunCateFullName,
financecategoryid = item.platCateoryId,
financecategoryname = item.platCateFullName,
createtime =DateTime.Now,
site = item.site,
};
cn.Insert(m);
}
}
}
}
public class mResponseResult
{
public int statusCode { get; set; }
public string message { get; set; }
public List<Models.mCategory> result { get; set; }
}
}
......@@ -77,7 +77,7 @@ namespace Bailun.DC.Web.Controllers
public ActionResult Main()
{
#if DEBUG
var cookie = "Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IjdhZDA5MjQ5ZDk0ZDgxN2VhNmI5ZThhMTc1MzlmNmY3IiwidHlwIjoiSldUIn0.eyJuYmYiOjE1OTc4MDQxMjUsImV4cCI6MTU5Nzg0MDEyNSwiaXNzIjoiaHR0cDovL2xvY2FsaG9zdDo1MDAxIiwiYXVkIjpbImh0dHA6Ly9sb2NhbGhvc3Q6NTAwMS9yZXNvdXJjZXMiLCJiYWlsdW5BcGkiXSwiY2xpZW50X2lkIjoiYmFpbHVuQ2xpZW50Iiwic3ViIjoi5YWz5oyv5bGxIiwiYXV0aF90aW1lIjoxNTk3ODA0MTI1LCJpZHAiOiJsb2NhbCIsIlVzZXJJZCI6IjIzNDYiLCJzdWNlc3NzIjoidHJ1ZSIsIkNvbXBhbnkiOiJ7XCJJZFwiOjEsXCJDb21wYW55Q29kZVwiOlwiYmFpbHVuXCIsXCJDb21wYW55TmFtZVwiOlwi5bm_5bee55m-5Lym5L6b5bqU6ZO-5pyJ6ZmQ5YWs5Y-4XCJ9IiwiQWxsQ29tcGFueSI6IkZhbHNlIiwiVXNlckNvZGVOZXciOiJCTDExNjkiLCJVc2VyQ29kZSI6IkJMMTE3MCIsIk9hVXNlcklkIjoiMjM0NiIsIkRlcGFydG1lbnQiOiJ7XCJEZXBhcnRtZW50SWRcIjoyNTgsXCJOYW1lXCI6XCLmlbDmja7kuK3lv4NcIixcIkNvZGVcIjpcIlwifSIsInNjb3BlIjpbIm9wZW5pZCIsInByb2ZpbGUiLCJiYWlsdW5BcGkiXSwiYW1yIjpbImN1c3RvbSJdfQ.BuFlJ8EMbhyW1TPfp9J8JblY4A_uOi5r1iY1ogAX5g-5sITK3RfNzSk2YssIgGddUf57uWX0z8eJWfHaNK3Fh9CJOKKyt8z52oPKRj1uFzhJNvMkiIV2zGogYbb8e4X7yVdRYzwcKp8d8Xk0pxOEfZQujYzuZaxtWhyyX0diRZt5tQGjxRazNsPAefC0Kn4joX_czf7gViMp0Ev2xteCOBJPcR5hb9AnCi9MslAqeT0Kbd-zW8PJzHRfs44MKOsI8Mj__4QKiyKiCHFikcF2UfwNjmhFCKU7kVvlz2jJ4DJYRuMEq9DV1CQKJJBhXP6qCtNIVFn-3l867Uj1mgQgtQ";
var cookie = "Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IjdhZDA5MjQ5ZDk0ZDgxN2VhNmI5ZThhMTc1MzlmNmY3IiwidHlwIjoiSldUIn0.eyJuYmYiOjE1OTc4OTA0NzQsImV4cCI6MTU5NzkyNjQ3NCwiaXNzIjoiaHR0cDovL2xvY2FsaG9zdDo1MDAxIiwiYXVkIjpbImh0dHA6Ly9sb2NhbGhvc3Q6NTAwMS9yZXNvdXJjZXMiLCJiYWlsdW5BcGkiXSwiY2xpZW50X2lkIjoiYmFpbHVuQ2xpZW50Iiwic3ViIjoi5YWz5oyv5bGxIiwiYXV0aF90aW1lIjoxNTk3ODkwNDc0LCJpZHAiOiJsb2NhbCIsIlVzZXJJZCI6IjIzNDYiLCJzdWNlc3NzIjoidHJ1ZSIsIkNvbXBhbnkiOiJ7XCJJZFwiOjEsXCJDb21wYW55Q29kZVwiOlwiYmFpbHVuXCIsXCJDb21wYW55TmFtZVwiOlwi5bm_5bee55m-5Lym5L6b5bqU6ZO-5pyJ6ZmQ5YWs5Y-4XCJ9IiwiQWxsQ29tcGFueSI6IkZhbHNlIiwiVXNlckNvZGVOZXciOiJCTDExNjkiLCJVc2VyQ29kZSI6IkJMMTE3MCIsIk9hVXNlcklkIjoiMjM0NiIsIkRlcGFydG1lbnQiOiJ7XCJEZXBhcnRtZW50SWRcIjoyNTgsXCJOYW1lXCI6XCLmlbDmja7kuK3lv4NcIixcIkNvZGVcIjpcIlwifSIsInNjb3BlIjpbIm9wZW5pZCIsInByb2ZpbGUiLCJiYWlsdW5BcGkiXSwiYW1yIjpbImN1c3RvbSJdfQ.hA2gIRObI33GmnmYxjAHTA-ApBJGixkElB80mtI75LAjP6rXqeNtNkbD1MoHQLlSrSIg4FiP1HMlSawhr6lRZxaNX4jcoD5Cu4FNGcku-OyUslpmT2LyPbQayuBPNqmQZ0suNHxyyJJkRwouI5wZ13c_elVDzD9g-l5NYxjQZ8JzhN9DqtRcvJGwByIa5xx35QMsMv3-MG2tPqqKEf-L8cnjtXqVk0qBlHWaS46-SkmLQZSlTVx7Si4i8NNZL6Bf-MnLdWZVjPpW7cMQ5EWWGVcEu-BUUepJSGVpk5qmuJ1NsK40f_If4Oqjg1_zbwG24W-BUaJbZ_i5Rv63esjBow";
#else
//var user = Common.HttpHelper.NetHelper.Request("http://sso.bailuntec.com/GetUserResource");
var cookie = HttpContext.Request.Cookies["BailunToken"];
......
......@@ -53,13 +53,15 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bailun.DC.DailyPlatformAcco
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bailun.DC.AllotOrderDetail", "Bailun.DC.AllotOrderDetail\Bailun.DC.AllotOrderDetail.csproj", "{9FE5546F-871B-4A06-90A3-2B1567EA3E26}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Bailun.DC.SyncLogisticInfo", "Bailun.DC.SyncLogisticInfo\Bailun.DC.SyncLogisticInfo.csproj", "{70BEDA08-20D6-4EDF-8653-72595618E3CE}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bailun.DC.SyncLogisticInfo", "Bailun.DC.SyncLogisticInfo\Bailun.DC.SyncLogisticInfo.csproj", "{70BEDA08-20D6-4EDF-8653-72595618E3CE}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Bailun.DC.DailyBorrowFee", "Bailun.DC.DailyBorrowFee\Bailun.DC.DailyBorrowFee.csproj", "{BABF8256-64D9-42F4-8008-B8AC51F3692E}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bailun.DC.DailyBorrowFee", "Bailun.DC.DailyBorrowFee\Bailun.DC.DailyBorrowFee.csproj", "{BABF8256-64D9-42F4-8008-B8AC51F3692E}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Bailun.DC.SyncWarehouseInfo", "Bailun.DC.SyncWarehouseInfo\Bailun.DC.SyncWarehouseInfo.csproj", "{6559BFAB-3A8F-47B6-89CC-8E9FB4F89EF1}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bailun.DC.SyncWarehouseInfo", "Bailun.DC.SyncWarehouseInfo\Bailun.DC.SyncWarehouseInfo.csproj", "{6559BFAB-3A8F-47B6-89CC-8E9FB4F89EF1}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Bailun.DC.DailyPurchaseOnWay", "Bailun.DC.DailyPurchaseOnWay\Bailun.DC.DailyPurchaseOnWay.csproj", "{6B9F7624-DE1C-4A54-9947-19124022DEE1}"
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Bailun.DC.DailyPurchaseOnWay", "Bailun.DC.DailyPurchaseOnWay\Bailun.DC.DailyPurchaseOnWay.csproj", "{6B9F7624-DE1C-4A54-9947-19124022DEE1}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Bailun.DC.SyncSkuFinanceCategory", "Bailun.DC.SyncSkuFinanceCategory\Bailun.DC.SyncSkuFinanceCategory.csproj", "{47F8A4B4-D549-4E93-80F7-1B6B8035F7F9}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
......@@ -179,6 +181,10 @@ Global
{6B9F7624-DE1C-4A54-9947-19124022DEE1}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6B9F7624-DE1C-4A54-9947-19124022DEE1}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6B9F7624-DE1C-4A54-9947-19124022DEE1}.Release|Any CPU.Build.0 = Release|Any CPU
{47F8A4B4-D549-4E93-80F7-1B6B8035F7F9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{47F8A4B4-D549-4E93-80F7-1B6B8035F7F9}.Debug|Any CPU.Build.0 = Debug|Any CPU
{47F8A4B4-D549-4E93-80F7-1B6B8035F7F9}.Release|Any CPU.ActiveCfg = Release|Any CPU
{47F8A4B4-D549-4E93-80F7-1B6B8035F7F9}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
......@@ -206,6 +212,7 @@ Global
{BABF8256-64D9-42F4-8008-B8AC51F3692E} = {AE2CE86A-8538-4142-920F-684DCF47C064}
{6559BFAB-3A8F-47B6-89CC-8E9FB4F89EF1} = {AE2CE86A-8538-4142-920F-684DCF47C064}
{6B9F7624-DE1C-4A54-9947-19124022DEE1} = {AE2CE86A-8538-4142-920F-684DCF47C064}
{47F8A4B4-D549-4E93-80F7-1B6B8035F7F9} = {AE2CE86A-8538-4142-920F-684DCF47C064}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {6E53AF28-A282-4FB0-A769-EAEA9769C02A}
......
......@@ -153,3 +153,10 @@ services:
context: .
dockerfile: Bailun.DC.DailyPurchaseOnWay/Dockerfile
bailun.dc.syncskufinancecategory:
image: ${DOCKER_REGISTRY}bailundcsyncskufinancecategory
build:
context: .
dockerfile: Bailun.DC.SyncSkuFinanceCategory/Dockerfile
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment