Commit ab708c10 by guanzhenshan

增加记录每日采购在途服务

parent d1b4779f
<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="Microsoft.Extensions.Hosting" Version="3.1.6" />
<PackageReference Include="MySql.Data" Version="8.0.21" />
</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.DailyPurchaseOnWay/Bailun.DC.DailyPurchaseOnWay.csproj Bailun.DC.DailyPurchaseOnWay/
COPY Bailun.DC.Common/Bailun.DC.Common.csproj Bailun.DC.Common/
RUN dotnet restore Bailun.DC.DailyPurchaseOnWay/Bailun.DC.DailyPurchaseOnWay.csproj
COPY . .
WORKDIR /src/Bailun.DC.DailyPurchaseOnWay
RUN dotnet build Bailun.DC.DailyPurchaseOnWay.csproj -c Release -o /app
FROM build AS publish
RUN dotnet publish Bailun.DC.DailyPurchaseOnWay.csproj -c Release -o /app
FROM base AS final
WORKDIR /app
COPY --from=publish /app .
ENTRYPOINT ["dotnet", "Bailun.DC.DailyPurchaseOnWay.dll"]
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Hosting;
using System;
using System.Threading.Tasks;
namespace Bailun.DC.DailyPurchaseOnWay
{
/// <summary>
/// 采购每日在途明细
/// </summary>
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>();
});
await builder.RunConsoleAsync();
}
//static void Main(string[] args)
//{
// var _services = new Services();
// var start = DateTime.Now;
// start = DateTime.Parse(start.AddDays(-1).ToShortDateString());
// _services.Init(start);
//}
}
}
using Microsoft.Extensions.Hosting;
using MySql.Data.MySqlClient;
using System;
using System.Collections.Generic;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using Dapper;
namespace Bailun.DC.DailyPurchaseOnWay
{
public class Services : BackgroundService
{
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 == 59) //凌晨23:59分启动
{
Console.WriteLine("开始启动 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
var start = DateTime.Parse(now.ToShortDateString());
Init(start);
Console.WriteLine("任务运行完成 " + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss"));
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
public void Init(DateTime day)
{
using (var cn = new MySqlConnection(Common.GlobalConfig.ConnectionString))
{
if (cn.State == System.Data.ConnectionState.Closed)
{
cn.Open();
}
cn.Execute("delete from dc_daily_purchase_detail_onway where day='" + day.ToString("yyyy-MM-dd") + "'");
var sql = $@"insert dc_daily_purchase_detail_onway(purchase_id, bailun_sku, warehouse_from_code, warehouse_from_name, create_time, quantity_purchase, quantity_inbound,
status, createusername, isaims, day)
select t1.purchase_id,t1.bailun_sku,t1.warehouse_from_code,t1.warehouse_from_name,t1.create_time,t1.quantity_purchase,t1.quantity_inbound,t1.`status`,t1.createusername,t1.isaims,'{day.ToString("yyyy-MM-dd")}' from dc_base_purchase_details t1 where t1.`status`>=0 and t1.quantity_inbound<t1.quantity_purchase and t1.`status`!=4";
cn.Execute(sql);
var count = cn.QueryFirstOrDefault<int?>("select count(id) from dc_daily_purchase_detail_onway where day='" + day.ToString("yyyy-MM-dd") + "'");
Console.WriteLine("采购单SKU在途数量:" + (count ?? 0));
}
}
}
}
......@@ -59,6 +59,8 @@ Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Bailun.DC.DailyBorrowFee",
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "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}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
......@@ -173,6 +175,10 @@ Global
{6559BFAB-3A8F-47B6-89CC-8E9FB4F89EF1}.Debug|Any CPU.Build.0 = Debug|Any CPU
{6559BFAB-3A8F-47B6-89CC-8E9FB4F89EF1}.Release|Any CPU.ActiveCfg = Release|Any CPU
{6559BFAB-3A8F-47B6-89CC-8E9FB4F89EF1}.Release|Any CPU.Build.0 = Release|Any CPU
{6B9F7624-DE1C-4A54-9947-19124022DEE1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{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
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
......@@ -199,6 +205,7 @@ Global
{70BEDA08-20D6-4EDF-8653-72595618E3CE} = {AE2CE86A-8538-4142-920F-684DCF47C064}
{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}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {6E53AF28-A282-4FB0-A769-EAEA9769C02A}
......
......@@ -146,3 +146,10 @@ services:
context: .
dockerfile: Bailun.DC.SyncWarehouseInfo/Dockerfile
bailun.dc.dailypurchaseonway:
image: ${DOCKER_REGISTRY}bailundcdailypurchaseonway
build:
context: .
dockerfile: Bailun.DC.DailyPurchaseOnWay/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