|
@@ -2137,19 +2137,55 @@ namespace MySystem
|
|
|
string start = date + " 00:00:00";
|
|
|
string end = DateTime.Parse(date).AddDays(1).ToString("yyyy-MM-dd") + " 00:00:00";
|
|
|
CustomerSqlConn.op("insert into PosMerchantTradeSummay (MerchantId,BrandId,TradeDate,TradeMonth,TradeAmount,CreateDate) select *,now() from (select MerchantId,BrandId,DATE_FORMAT(CreateDate,'%Y%m%d') as TradeDate,DATE_FORMAT(CreateDate,'%Y%m') as TradeMonth,sum(TradeAmount) as TradeAmount from TradeRecord where Id>=13000000 and CreateDate>='" + start + "' and CreateDate<'" + end + "' and ActStatus=1 and BrandId!=14 group by MerchantId,BrandId,DATE_FORMAT(CreateDate,'%Y%m%d'),TradeDate,DATE_FORMAT(CreateDate,'%Y%m') order by MerchantId,BrandId,DATE_FORMAT(CreateDate,'%Y%m%d')) tb", MysqlConn.SqlConnStr);
|
|
|
+ }
|
|
|
+ catch (Exception ex)
|
|
|
+ {
|
|
|
+ function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString(), "统计商户的交易额");
|
|
|
+ }
|
|
|
+
|
|
|
+ WebCMSEntities db = new WebCMSEntities();
|
|
|
+ var tran = db.Database.BeginTransaction();
|
|
|
+ try
|
|
|
+ {
|
|
|
SpModels.WebCMSEntities spdb = new SpModels.WebCMSEntities();
|
|
|
- WebCMSEntities db = new WebCMSEntities();
|
|
|
- DateTime s = DateTime.Parse(DateTime.Now.AddDays(-1).ToString("yyyy-MM-dd") + " 00:00:00");
|
|
|
- DateTime e = DateTime.Parse(DateTime.Now.ToString("yyyy-MM-dd") + " 00:00:00");
|
|
|
+ DateTime s = DateTime.Parse(date + " 00:00:00");
|
|
|
+ DateTime e = s.AddDays(1);
|
|
|
int StartId = int.Parse(function.CheckInt(function.ReadInstance("/SycnSp/TradeRecordId.txt")));
|
|
|
- IQueryable<SpModels.TradeRecord> trades = spdb.TradeRecord.Where(m => m.Id >= StartId && m.ProductType == "23" && m.CreateDate >= s && m.Status == 1).OrderBy(m => m.CreateDate).Take(20);
|
|
|
+ IQueryable<SpModels.TradeRecord> trades = spdb.TradeRecord.Where(m => m.Id >= StartId && m.ProductType == "23" && m.CreateDate >= s && m.CreateDate < e).OrderBy(m => m.CreateDate);
|
|
|
foreach (SpModels.TradeRecord trade in trades.ToList())
|
|
|
- {}
|
|
|
+ {
|
|
|
+ string MerNo = trade.MerNo;
|
|
|
+ string TradeDate = trade.CreateDate.Value.ToString("yyyyMMdd");
|
|
|
+ string TradeMonth = TradeDate.Substring(0, 6);
|
|
|
+ PosMerchantInfo merchant = db.PosMerchantInfo.FirstOrDefault(m => m.KqMerNo == MerNo);
|
|
|
+ if(merchant != null)
|
|
|
+ {
|
|
|
+ PosMerchantTradeSummay stat = db.PosMerchantTradeSummay.FirstOrDefault(m => m.MerchantId == merchant.Id && m.TradeMonth == TradeMonth && m.TradeDate == TradeDate && m.BrandId == merchant.BrandId);
|
|
|
+ if (stat == null)
|
|
|
+ {
|
|
|
+ stat = db.PosMerchantTradeSummay.Add(new PosMerchantTradeSummay()
|
|
|
+ {
|
|
|
+ MerchantId = merchant.Id,
|
|
|
+ TradeMonth = TradeMonth,
|
|
|
+ TradeDate = TradeDate,
|
|
|
+ BrandId = merchant.BrandId,
|
|
|
+ }).Entity;
|
|
|
+ db.SaveChanges();
|
|
|
+ }
|
|
|
+ stat.TradeAmount += trade.TradeAmount / 100;
|
|
|
+ db.SaveChanges();
|
|
|
+ }
|
|
|
+ }
|
|
|
+ spdb.Dispose();
|
|
|
+ tran.Commit();
|
|
|
}
|
|
|
catch (Exception ex)
|
|
|
{
|
|
|
- function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString(), "统计商户的交易额");
|
|
|
+ tran.Rollback();
|
|
|
+ function.WriteLog(DateTime.Now.ToString() + "\n" + ex.ToString(), "统计WIFI商户的交易额");
|
|
|
}
|
|
|
+ tran.Dispose();
|
|
|
+ db.Dispose();
|
|
|
function.WriteLog(DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss.fff") + "\n\n", "执行商户交易额日志");
|
|
|
}
|
|
|
|