|
@@ -111,6 +111,39 @@ namespace MySystem
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
+
|
|
|
+ public void StartListenOne()
|
|
|
+ {
|
|
|
+ //每天凌晨执行获取好哒FTP昨日交易数据
|
|
|
+ Thread th = new Thread(ListenDepositOne);
|
|
|
+ th.IsBackground = true;
|
|
|
+ th.Start();
|
|
|
+ }
|
|
|
+ /// <summary>
|
|
|
+ /// 获取好哒FTP昨日交易数据
|
|
|
+ /// </summary>
|
|
|
+ public void ListenDepositOne()
|
|
|
+ {
|
|
|
+ while (true)
|
|
|
+ {
|
|
|
+ string content = RedisDbconn.Instance.RPop<string>("ListenDepositOneQueue");
|
|
|
+ if (!string.IsNullOrEmpty(content))
|
|
|
+ {
|
|
|
+ string[] data = content.Split('|');
|
|
|
+ WebCMSEntities db = new WebCMSEntities();
|
|
|
+ MpMainModels2.WebCMSEntities mpdb2 = new MpMainModels2.WebCMSEntities();
|
|
|
+ DataInDatabase(db, mpdb2, data[0], data[1]);
|
|
|
+ db.Dispose();
|
|
|
+ mpdb2.Dispose();
|
|
|
+ Thread.Sleep(2000);
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ Thread.Sleep(60000);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
public void GetDepositData(string Date)
|
|
|
{
|
|
|
// 要下载的文件路径
|
|
@@ -141,127 +174,7 @@ namespace MySystem
|
|
|
var DataList = DataInfo[1].Split('\n');
|
|
|
foreach (var DataListItem in DataList)
|
|
|
{
|
|
|
- var DataListInfo = DataListItem.Split(',');
|
|
|
-
|
|
|
- string SnNo = DataListInfo[0]; //sn
|
|
|
- string MerNo = DataListInfo[1]; //商户编号
|
|
|
- string PosKind = DataListInfo[2]; //机具型号
|
|
|
- string ActDate = DataListInfo[3]; //激活时间
|
|
|
- string Deposit = DataListInfo[4]; //押金金额
|
|
|
- string PrizeAmt = "0"; //奖励金额
|
|
|
- string PrizeDate = "None"; //奖励发放时间
|
|
|
- string Name = ""; //发放人姓名
|
|
|
- string MerName = ""; //商户名称
|
|
|
- string PassDate = ""; //审核通过时期
|
|
|
- string MerKind = ""; //商户类型
|
|
|
- if(Date.StartsWith("d_"))
|
|
|
- {
|
|
|
- MerName = DataListInfo[5]; //商户名称
|
|
|
- PassDate = DataListInfo[6]; //审核通过时期
|
|
|
- MerKind = DataListInfo[7]; //商户类型
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- PrizeAmt = DataListInfo[5]; //奖励金额
|
|
|
- PrizeDate = DataListInfo[6]; //奖励发放时间
|
|
|
- Name = DataListInfo[7]; //发放人姓名
|
|
|
- MerName = DataListInfo[8]; //商户名称
|
|
|
- PassDate = DataListInfo[9]; //审核通过时期
|
|
|
- }
|
|
|
-
|
|
|
- string ActDateString = ActDate.Substring(0, 4) + "-" + ActDate.Substring(4, 2) + "-" + ActDate.Substring(6, 2);
|
|
|
- if(DateTime.Parse(ActDateString) >= DateTime.Parse(DateTime.Now.AddDays(-2).ToString("yyyy-MM-dd")))
|
|
|
- {
|
|
|
- string PrizeDateString = "";
|
|
|
- if(PrizeDate == "None")
|
|
|
- {
|
|
|
- PrizeDate = Date.Replace("d_", "");
|
|
|
- }
|
|
|
- else
|
|
|
- {
|
|
|
- PrizeDateString = PrizeDate.Substring(0, 4) + "-" + PrizeDate.Substring(4, 2) + "-" + PrizeDate.Substring(6, 2);
|
|
|
- }
|
|
|
-
|
|
|
- if(!db.BindRecord.Any(m => m.MerSnNo == SnNo))
|
|
|
- {
|
|
|
- string ProductType = "0";
|
|
|
- if(PosKind == "好哒语音王Y512") ProductType = "18";
|
|
|
- if(PosKind == "4G收款王M820") ProductType = "19";
|
|
|
- if(PosKind == "4G收款王M826") ProductType = "20";
|
|
|
- if(PosKind == "好哒S312") ProductType = "21";
|
|
|
- if(PosKind == "好哒扫码通M837") ProductType = "29";
|
|
|
-
|
|
|
- BindRecord mer = db.BindRecord.Add(new BindRecord()
|
|
|
- {
|
|
|
- CreateDate = DateTime.Now,
|
|
|
- UpdateTime = DateTime.Now, //机具绑定、解绑时间
|
|
|
- CreateTime = DateTime.Now, //商户操作时间
|
|
|
- MerSnNo = SnNo, //序列号
|
|
|
- MerNo = MerNo, //商户编号
|
|
|
- MerName = MerName,
|
|
|
- SeoTitle = PrizeAmt,
|
|
|
- SeoKeyword = ActDateString,
|
|
|
- ProductType = ProductType,
|
|
|
- Field1 = Deposit,
|
|
|
- Field2 = PrizeDate,
|
|
|
- Field3 = Name,
|
|
|
- Field4 = PassDate,
|
|
|
- Field5 = MerKind,
|
|
|
- Status = 1,
|
|
|
- }).Entity;
|
|
|
-
|
|
|
- db.Merchants.Add(new Merchants()
|
|
|
- {
|
|
|
- SnNo = SnNo,
|
|
|
- CreateTime = DateTime.Now,
|
|
|
- UpdateTime = DateTime.Now,
|
|
|
- AgentName = Name,
|
|
|
- MerRealName = Name,
|
|
|
- MerNo = MerNo,
|
|
|
- MerName = Name,
|
|
|
- ProductType = ProductType,
|
|
|
- Status = 1,
|
|
|
- });
|
|
|
- db.SaveChanges();
|
|
|
-
|
|
|
- Thread.Sleep(1000);
|
|
|
-
|
|
|
- ActivateRecord act = db.ActivateRecord.Add(new ActivateRecord()
|
|
|
- {
|
|
|
- SnNo = SnNo,
|
|
|
- CreateDate = DateTime.Now,
|
|
|
- SeoTitle = Deposit,
|
|
|
- ActivateDate = DateTime.Now,
|
|
|
- AgentNo = MerNo,
|
|
|
- MerRealName = Name,
|
|
|
- MerNo = MerNo,
|
|
|
- MerName = Name,
|
|
|
- ProductType = ProductType,
|
|
|
- ChannelSerial = DateTime.Now.ToString("yyyyMMddHHmmssfff") + function.get_Random(8),
|
|
|
- Status = 1,
|
|
|
- Field1 = PassDate,
|
|
|
- Field2 = MerKind,
|
|
|
- }).Entity;
|
|
|
- db.SaveChanges();
|
|
|
-
|
|
|
- //推送MQ给创业帮
|
|
|
- var merchantAddInfo = mpdb2.MerchantAddInfo.FirstOrDefault(m => m.MchtNo == MerNo) ?? new MpMainModels2.MerchantAddInfo();
|
|
|
- if (merchantAddInfo.BrandId == 1 && !string.IsNullOrEmpty(merchantAddInfo.CybMakerCode))
|
|
|
- {
|
|
|
- SortedList<string, string> obj = new SortedList<string, string>();
|
|
|
- obj.Add("create_time", ActDateString);
|
|
|
- obj.Add("sn", SnNo);
|
|
|
- obj.Add("deposit", Deposit);
|
|
|
- obj.Add("subject_type", merchantAddInfo.SubjectType);
|
|
|
- obj.Add("merch_no", merchantAddInfo.MchtNo);
|
|
|
- obj.Add("maker_code", merchantAddInfo.CybMakerCode);
|
|
|
- PushHelper.Instance.Do(obj, "cashNotify");
|
|
|
-
|
|
|
- PosPushDataNewHelper.Bind(mer);
|
|
|
- PosPushDataNewHelper.Deposit(act);
|
|
|
- }
|
|
|
- }
|
|
|
- }
|
|
|
+ DataInDatabase(db, mpdb2, DataListItem, Date);
|
|
|
}
|
|
|
}
|
|
|
db.Dispose();
|
|
@@ -279,6 +192,131 @@ namespace MySystem
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ public void DataInDatabase(WebCMSEntities db, MpMainModels2.WebCMSEntities mpdb2, string DataListItem, string Date)
|
|
|
+ {
|
|
|
+ var DataListInfo = DataListItem.Split(',');
|
|
|
+
|
|
|
+ string SnNo = DataListInfo[0]; //sn
|
|
|
+ string MerNo = DataListInfo[1]; //商户编号
|
|
|
+ string PosKind = DataListInfo[2]; //机具型号
|
|
|
+ string ActDate = DataListInfo[3]; //激活时间
|
|
|
+ string Deposit = DataListInfo[4]; //押金金额
|
|
|
+ string PrizeAmt = "0"; //奖励金额
|
|
|
+ string PrizeDate = "None"; //奖励发放时间
|
|
|
+ string Name = ""; //发放人姓名
|
|
|
+ string MerName = ""; //商户名称
|
|
|
+ string PassDate = ""; //审核通过时期
|
|
|
+ string MerKind = ""; //商户类型
|
|
|
+ if(Date.StartsWith("d_"))
|
|
|
+ {
|
|
|
+ MerName = DataListInfo[5]; //商户名称
|
|
|
+ PassDate = DataListInfo[6]; //审核通过时期
|
|
|
+ MerKind = DataListInfo[7]; //商户类型
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ PrizeAmt = DataListInfo[5]; //奖励金额
|
|
|
+ PrizeDate = DataListInfo[6]; //奖励发放时间
|
|
|
+ Name = DataListInfo[7]; //发放人姓名
|
|
|
+ MerName = DataListInfo[8]; //商户名称
|
|
|
+ PassDate = DataListInfo[9]; //审核通过时期
|
|
|
+ }
|
|
|
+
|
|
|
+ string ActDateString = ActDate.Substring(0, 4) + "-" + ActDate.Substring(4, 2) + "-" + ActDate.Substring(6, 2);
|
|
|
+ if(DateTime.Parse(ActDateString) >= DateTime.Parse(DateTime.Now.AddDays(-2).ToString("yyyy-MM-dd")))
|
|
|
+ {
|
|
|
+ string PrizeDateString = "";
|
|
|
+ if(PrizeDate == "None")
|
|
|
+ {
|
|
|
+ PrizeDate = Date.Replace("d_", "");
|
|
|
+ }
|
|
|
+ else
|
|
|
+ {
|
|
|
+ PrizeDateString = PrizeDate.Substring(0, 4) + "-" + PrizeDate.Substring(4, 2) + "-" + PrizeDate.Substring(6, 2);
|
|
|
+ }
|
|
|
+
|
|
|
+ if(!db.BindRecord.Any(m => m.MerSnNo == SnNo))
|
|
|
+ {
|
|
|
+ string ProductType = "0";
|
|
|
+ if(PosKind == "好哒语音王Y512") ProductType = "18";
|
|
|
+ if(PosKind == "4G收款王M820") ProductType = "19";
|
|
|
+ if(PosKind == "4G收款王M826") ProductType = "20";
|
|
|
+ if(PosKind == "好哒S312") ProductType = "21";
|
|
|
+ if(PosKind == "好哒扫码通M837") ProductType = "29";
|
|
|
+
|
|
|
+ BindRecord mer = db.BindRecord.Add(new BindRecord()
|
|
|
+ {
|
|
|
+ CreateDate = DateTime.Now,
|
|
|
+ UpdateTime = DateTime.Now, //机具绑定、解绑时间
|
|
|
+ CreateTime = DateTime.Now, //商户操作时间
|
|
|
+ MerSnNo = SnNo, //序列号
|
|
|
+ MerNo = MerNo, //商户编号
|
|
|
+ MerName = MerName,
|
|
|
+ SeoTitle = PrizeAmt,
|
|
|
+ SeoKeyword = ActDateString,
|
|
|
+ ProductType = ProductType,
|
|
|
+ Field1 = Deposit,
|
|
|
+ Field2 = PrizeDate,
|
|
|
+ Field3 = Name,
|
|
|
+ Field4 = PassDate,
|
|
|
+ Field5 = MerKind,
|
|
|
+ Status = 1,
|
|
|
+ }).Entity;
|
|
|
+
|
|
|
+ db.Merchants.Add(new Merchants()
|
|
|
+ {
|
|
|
+ SnNo = SnNo,
|
|
|
+ CreateTime = DateTime.Now,
|
|
|
+ UpdateTime = DateTime.Now,
|
|
|
+ AgentName = Name,
|
|
|
+ MerRealName = Name,
|
|
|
+ MerNo = MerNo,
|
|
|
+ MerName = Name,
|
|
|
+ ProductType = ProductType,
|
|
|
+ Status = 1,
|
|
|
+ });
|
|
|
+ db.SaveChanges();
|
|
|
+
|
|
|
+ Thread.Sleep(1000);
|
|
|
+
|
|
|
+ ActivateRecord act = db.ActivateRecord.Add(new ActivateRecord()
|
|
|
+ {
|
|
|
+ SnNo = SnNo,
|
|
|
+ CreateDate = DateTime.Now,
|
|
|
+ SeoTitle = Deposit,
|
|
|
+ ActivateDate = DateTime.Now,
|
|
|
+ AgentNo = MerNo,
|
|
|
+ MerRealName = Name,
|
|
|
+ MerNo = MerNo,
|
|
|
+ MerName = Name,
|
|
|
+ ProductType = ProductType,
|
|
|
+ ChannelSerial = DateTime.Now.ToString("yyyyMMddHHmmssfff") + function.get_Random(8),
|
|
|
+ Status = 1,
|
|
|
+ Field1 = PassDate,
|
|
|
+ Field2 = MerKind,
|
|
|
+ }).Entity;
|
|
|
+ db.SaveChanges();
|
|
|
+
|
|
|
+ //推送MQ给创业帮
|
|
|
+ var merchantAddInfo = mpdb2.MerchantAddInfo.FirstOrDefault(m => m.MchtNo == MerNo) ?? new MpMainModels2.MerchantAddInfo();
|
|
|
+ if (merchantAddInfo.BrandId == 1 && !string.IsNullOrEmpty(merchantAddInfo.CybMakerCode))
|
|
|
+ {
|
|
|
+ SortedList<string, string> obj = new SortedList<string, string>();
|
|
|
+ obj.Add("create_time", ActDateString);
|
|
|
+ obj.Add("sn", SnNo);
|
|
|
+ obj.Add("deposit", Deposit);
|
|
|
+ obj.Add("subject_type", merchantAddInfo.SubjectType);
|
|
|
+ obj.Add("merch_no", merchantAddInfo.MchtNo);
|
|
|
+ obj.Add("maker_code", merchantAddInfo.CybMakerCode);
|
|
|
+ PushHelper.Instance.Do(obj, "cashNotify");
|
|
|
+
|
|
|
+ PosPushDataNewHelper.Bind(mer);
|
|
|
+ PosPushDataNewHelper.Deposit(act);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
public void GetDepositData2(string Date)
|
|
|
{
|
|
|
// 要下载的文件路径
|