|
@@ -28,7 +28,7 @@ namespace MySystem
|
|
|
{
|
|
|
try
|
|
|
{
|
|
|
- if(DateTime.Now.Hour > 3 && DateTime.Now.Hour < 19)
|
|
|
+ if(DateTime.Now.Hour > 3 && DateTime.Now.Hour < 20 && DateTime.Now >= DateTime.Parse("2023-09-20 11:00:00"))
|
|
|
{
|
|
|
string chk = function.ReadInstance("/PrePosWithhold/" + DateTime.Now.ToString("yyyyMMdd") + ".txt");
|
|
|
if(string.IsNullOrEmpty(chk))
|
|
@@ -51,37 +51,41 @@ namespace MySystem
|
|
|
{
|
|
|
WebCMSEntities db = new WebCMSEntities();
|
|
|
DateTime end = DateTime.Parse(DateTime.Now.AddDays(-29).ToString("yyyy-MM-dd") + " 00:00:00");
|
|
|
+ int Id = 0;
|
|
|
bool op = true;
|
|
|
while(op)
|
|
|
{
|
|
|
- var PrePosList = db.PreSendStockDetail.Where(m => m.ApplyFlag == 0 && m.CreateDate < end && m.Status >= 0 && m.Status <= 1 && m.WithholdFlag == 0).OrderBy(m => m.Id).Take(20).ToList();
|
|
|
+ var PrePosList = db.PreSendStockDetail.Where(m => m.Id > Id && m.ApplyFlag == 0 && m.CreateDate < end && m.Status >= 0 && m.Status <= 1 && m.WithholdFlag == 0).OrderBy(m => m.Id).Take(20).ToList();
|
|
|
if(PrePosList.Count > 0)
|
|
|
{
|
|
|
foreach(var Pos in PrePosList)
|
|
|
{
|
|
|
- KqProducts brand = db.KqProducts.FirstOrDefault(m => m.Id == Pos.BrandId) ?? new KqProducts();
|
|
|
- decimal ChargeAmount = brand.Kind == 2 ? 300 : 200;
|
|
|
- db.ToChargeBackRecord.Add(new ToChargeBackRecord
|
|
|
- {
|
|
|
- CreateDate = DateTime.Now,
|
|
|
- SeoTitle = "系统",
|
|
|
- SeoDescription = "预发机超时未申请扣款",
|
|
|
- Remark = "预发机超时未申请扣款",
|
|
|
- ChargeType = 1,
|
|
|
- ChargeAmount = ChargeAmount,
|
|
|
- UserId = Pos.ToUserId,
|
|
|
- Field1 = Pos.SnNo,
|
|
|
- });
|
|
|
- PosMachinesTwo pos = db.PosMachinesTwo.FirstOrDefault(m => m.Id == Pos.SnId);
|
|
|
+ PosMachinesTwo pos = db.PosMachinesTwo.FirstOrDefault(m => m.Id == Pos.SnId && m.BuyUserId == 0 && m.PreUserId > 0);
|
|
|
if(pos != null)
|
|
|
{
|
|
|
+ KqProducts brand = db.KqProducts.FirstOrDefault(m => m.Id == Pos.BrandId) ?? new KqProducts();
|
|
|
+ decimal ChargeAmount = brand.Kind == 2 ? 300 : 200;
|
|
|
+ db.ToChargeBackRecord.Add(new ToChargeBackRecord
|
|
|
+ {
|
|
|
+ CreateDate = DateTime.Now,
|
|
|
+ SeoTitle = "系统",
|
|
|
+ SeoDescription = "预发机超时未申请扣款",
|
|
|
+ Remark = "预发机超时未申请扣款",
|
|
|
+ ChargeType = 1,
|
|
|
+ ChargeAmount = ChargeAmount,
|
|
|
+ UserId = Pos.ToUserId,
|
|
|
+ Field1 = Pos.SnNo,
|
|
|
+ });
|
|
|
pos.WithholdFlag = 1;
|
|
|
+ PreSendStockDetail pre = db.PreSendStockDetail.FirstOrDefault(m => m.Id == Pos.Id);
|
|
|
+ if(pre != null)
|
|
|
+ {
|
|
|
+ pre.WithholdFlag = 1;
|
|
|
+ }
|
|
|
+ //增加账户预扣总额
|
|
|
+ Utils.Instance.ToChargeAmount(Pos.ToUserId, ChargeAmount);
|
|
|
}
|
|
|
- PreSendStockDetail pre = db.PreSendStockDetail.FirstOrDefault(m => m.Id == Pos.Id);
|
|
|
- if(pre != null)
|
|
|
- {
|
|
|
- pre.WithholdFlag = 1;
|
|
|
- }
|
|
|
+ Id = Pos.Id;
|
|
|
}
|
|
|
db.SaveChanges();
|
|
|
}
|
|
@@ -121,24 +125,35 @@ namespace MySystem
|
|
|
int UserId = int.Parse(function.CheckInt(jsonObj["UserId"].ToString()));
|
|
|
string SnNo = jsonObj["SnNo"].ToString();
|
|
|
WebCMSEntities db = new WebCMSEntities();
|
|
|
+ decimal ChargeAmount = 0;
|
|
|
ToChargeBackRecord back = db.ToChargeBackRecord.FirstOrDefault(m => m.UserId == UserId && m.Field1 == SnNo && m.Remark == "预发机超时未申请扣款");
|
|
|
if(back != null)
|
|
|
{
|
|
|
+ ChargeAmount = back.ChargeAmount;
|
|
|
if(back.Status == 1)
|
|
|
{
|
|
|
- Utils.Instance.OpAccount(back.UserId, back.ChargeAmount, 134);
|
|
|
+ Utils.Instance.OpAccount(back.UserId, ChargeAmount, 134);
|
|
|
}
|
|
|
db.ToChargeBackRecord.Remove(back);
|
|
|
db.SaveChanges();
|
|
|
}
|
|
|
db.Dispose();
|
|
|
+
|
|
|
+ //减少账户预扣总额
|
|
|
+ Utils.Instance.ToChargeAmount(UserId, -ChargeAmount);
|
|
|
+
|
|
|
+ Thread.Sleep(500);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ Thread.Sleep(30000);
|
|
|
}
|
|
|
}
|
|
|
catch (Exception ex)
|
|
|
{
|
|
|
function.WriteLog(DateTime.Now.ToString() + "\r\n" + ex.ToString(), "预发扣款机具申请异常");
|
|
|
+ Thread.Sleep(300000);
|
|
|
}
|
|
|
- Thread.Sleep(300000);
|
|
|
}
|
|
|
}
|
|
|
}
|