using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Text;
|
|
using BWP.B3ClientService.BO;
|
|
using Forks.EnterpriseServices.BusinessInterfaces;
|
|
using Forks.JsonRpc.Client;
|
|
using Forks.JsonRpc.Client.Data;
|
|
using Newtonsoft.Json;
|
|
using TSingSoft.WebPluginFramework.TimerTasks;
|
|
|
|
namespace BWP.B3ClientService.Tasks
|
|
{
|
|
public class SyncBillFromServer : ITimerTask
|
|
{
|
|
public void Execute()
|
|
{
|
|
var serverUri = ServerHost.GetServerUrl();
|
|
if (string.IsNullOrEmpty(serverUri))
|
|
throw new Exception("请配置服务器地址");
|
|
//try
|
|
{
|
|
try
|
|
{
|
|
RpcFacade.Init(serverUri, "B3ClientServer");
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
if (ex.Message != "Can only start once")
|
|
throw;
|
|
}
|
|
|
|
//SyncSaleOutStore();
|
|
//SyncProductTask();
|
|
|
|
|
|
}
|
|
}
|
|
|
|
private void SyncProductTask()
|
|
{
|
|
var json = RpcFacade.Call<string>("/MainSystem/B3ButcherManage/Rpcs/TouchScreenRpcs/SyncProductTask");
|
|
var list = JsonConvert.DeserializeObject<List<ProductTask>>(json);
|
|
|
|
using (var context = new TransactionContext())
|
|
{
|
|
var sql1 = @"truncate table [B3ClientService_ProductTask];";
|
|
context.Session.ExecuteSqlNonQuery(sql1);
|
|
foreach (ProductTask dmo in list)
|
|
{
|
|
context.Session.Insert(dmo);
|
|
}
|
|
context.Commit();
|
|
}
|
|
}
|
|
|
|
private void SyncSaleOutStore()
|
|
{
|
|
//只更新一个星期的
|
|
var minDate = DateTime.Today.AddDays(-7);
|
|
var json = RpcFacade.Call<string>("/MainSystem/B3Sale/Rpcs/OffLineRpc/OffLineSaleOutStore/OffLineSaleOutStoreRpc/GetSaleOutStoreList", minDate);
|
|
var list = JsonConvert.DeserializeObject<List<SaleOutStore>>(json);
|
|
using (var context = new TransactionContext())
|
|
{
|
|
var sql1 = @"truncate table [B3ClientService_SaleOutStore];";
|
|
context.Session.ExecuteSqlNonQuery(sql1);
|
|
foreach (SaleOutStore dmo in list)
|
|
{
|
|
context.Session.Insert(dmo);
|
|
}
|
|
context.Commit();
|
|
}
|
|
}
|
|
|
|
public string Name { get { return "从B3同步单据到Server服务器"; }}
|
|
}
|
|
}
|