|
@@ -61,9 +61,11 @@ namespace MySystem
|
|
|
ChkIds.Add(78);
|
|
|
ChkIds.Add(79);
|
|
|
ChkIds.Add(92);
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "条件:商品id是(10,11,77,78,79,91);当前订单商品Id:" + order.ProductId + "");
|
|
|
//判断是否是指定商品
|
|
|
if(ChkIds.Contains(order.ProductId))
|
|
|
{
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "满足条件");
|
|
|
int Kind = 0;
|
|
|
if (order.ProductId == 10)
|
|
|
{
|
|
@@ -98,30 +100,49 @@ namespace MySystem
|
|
|
bool BackAccountFlag = false; //备用金返余额标识
|
|
|
bool BigLeaderFlag = false; //大盟主标记
|
|
|
decimal BuyPrize = 0; //购机奖励
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "开始向上递归查找");
|
|
|
foreach(string ParentId in ParentNavList)
|
|
|
{
|
|
|
UserRankItem parentUser = GetUserLevel(int.Parse(ParentId));
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "创客编号:" + parentUser.MakerCode + ";创客姓名:" + parentUser.RealName + ";");
|
|
|
index += 1;
|
|
|
+ if(index == 1)
|
|
|
+ {
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "条件:下单人是盟主;下单人盟主等级:" + orderUser.LeaderLevel + "");
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "条件:下单人是运营中心或合伙人;下单人合伙人等级:" + orderUser.OperateLevel + "");
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "条件:推荐奖励是否已发放;当前状态:" + DirectPrizeFlag + "");
|
|
|
+ }
|
|
|
if(index == 1 && (orderUser.LeaderLevel > 0 || orderUser.OperateLevel > 0) && !DirectPrizeFlag)
|
|
|
{
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "满足条件,发放推荐奖励给下单人");
|
|
|
DirectPrize(db, order.Id, order.UserId, order.BuyCount);
|
|
|
DirectPrizeFlag = true;
|
|
|
}
|
|
|
if(index > 1)
|
|
|
{
|
|
|
- if(Utils.Instance.IsStandardUser(parentUser.Id) && !DirectPrizeFlag)
|
|
|
+ bool IsStandardUser = Utils.Instance.IsStandardUser(parentUser.Id);
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "条件:上级是有效创客;是否有效创客:" + IsStandardUser + "");
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "条件:推荐奖励是否已发放;当前状态:" + DirectPrizeFlag + "");
|
|
|
+ if(IsStandardUser && !DirectPrizeFlag)
|
|
|
{
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "满足条件,发放推荐奖励给上级");
|
|
|
DirectPrize(db, order.Id, parentUser.Id, order.BuyCount);
|
|
|
DirectPrizeFlag = true;
|
|
|
}
|
|
|
}
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "条件:创客是盟主;创客盟主等级:" + parentUser.AgoLeaderLevel + "");
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "条件:盟主储备金是否充足;");
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "条件:创客是运营中心或合伙人;合伙人等级:" + parentUser.AgoLeaderLevel + "");
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "条件:合伙人未使用额度是否充足;");
|
|
|
if(parentUser.AgoLeaderLevel > 0 && CheckLeaderReserve(db, order.BuyCount, parentUser.Id))
|
|
|
{
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "满足条件,发放购机奖");
|
|
|
//购机奖
|
|
|
if(parentUser.LeaderLevel > 0)
|
|
|
{
|
|
|
decimal CurBuyPrize = GetBuyPrize(parentUser, order.UserId);
|
|
|
decimal GetPrize = CurBuyPrize - BuyPrize;
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "发放金额:" + GetPrize);
|
|
|
if(GetPrize > 0)
|
|
|
{
|
|
|
bool PrizeFlag = true;
|
|
@@ -156,12 +177,21 @@ namespace MySystem
|
|
|
}
|
|
|
|
|
|
//给券打大盟主标记
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "条件:创客是盟主;创客盟主等级:" + parentUser.LeaderLevel + "");
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "条件:盟主储备金是否充足;");
|
|
|
if(parentUser.LeaderLevel == 1 && CheckLeaderReserve(db, order.BuyCount, parentUser.Id) && !BigLeaderFlag)
|
|
|
{
|
|
|
- BigLeaderFlag = CheckPosCouponLeaderFlag(db, parentUser.Id, order.BuyCount, codes);
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "满足小盟主条件,开始检查大盟主关联的额度");
|
|
|
+ int LeaderId = CheckPosCouponLeaderFlag(db, parentUser.Id, order.BuyCount, codes);
|
|
|
+ if(LeaderId > 0)
|
|
|
+ {
|
|
|
+ BigLeaderFlag = true;
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "满足条件,大盟主标记打给" + LeaderId);
|
|
|
+ }
|
|
|
}
|
|
|
else if(parentUser.LeaderLevel == 2 && !BigLeaderFlag)
|
|
|
{
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "满足大盟主条件,大盟主标记打给" + parentUser.Id);
|
|
|
BigLeaderFlag = true;
|
|
|
if(!string.IsNullOrEmpty(order.SnNos))
|
|
|
{
|
|
@@ -172,9 +202,11 @@ namespace MySystem
|
|
|
}
|
|
|
else if(parentUser.OperateLevel > 0 && CheckOpReserve(opdb, order.BuyCount, parentUser.Id))
|
|
|
{
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "满足条件,发放购机奖");
|
|
|
//购机奖
|
|
|
decimal CurBuyPrize = GetBuyPrize(parentUser, order.UserId);
|
|
|
decimal GetPrize = CurBuyPrize - BuyPrize;
|
|
|
+ Utils.Instance.PrizeRecord(2, order.OrderNo, "发放金额:" + GetPrize);
|
|
|
if(GetPrize > 0)
|
|
|
{
|
|
|
int ChangeType = 120;
|
|
@@ -228,85 +260,7 @@ namespace MySystem
|
|
|
public void tmpuse()
|
|
|
{
|
|
|
List<string> OrderNos = new List<string>();
|
|
|
- OrderNos.Add("BM2024060113545453402672795");
|
|
|
- OrderNos.Add("BM2024060120184311880104432");
|
|
|
- OrderNos.Add("BM2024060217481333220082372");
|
|
|
- OrderNos.Add("BM2024060321463465032424067");
|
|
|
- OrderNos.Add("BM2024060322545274296859914");
|
|
|
- OrderNos.Add("BM2024060411201262916896764");
|
|
|
- OrderNos.Add("BM2024060412004350540058006");
|
|
|
- OrderNos.Add("BM2024060413465972197564202");
|
|
|
- OrderNos.Add("BM2024060415033573916503519");
|
|
|
- OrderNos.Add("BM2024060415272140626450020");
|
|
|
- OrderNos.Add("BM2024060419341007900312976");
|
|
|
- OrderNos.Add("BM2024060614271376167991548");
|
|
|
- OrderNos.Add("BM2024060713063585137278426");
|
|
|
- OrderNos.Add("BM2024060717481892176601326");
|
|
|
- OrderNos.Add("BM2024060722154132572630240");
|
|
|
- OrderNos.Add("BM2024060813372270460352780");
|
|
|
- OrderNos.Add("BM2024060817212502065186555");
|
|
|
- OrderNos.Add("BM2024060913094607695535841");
|
|
|
- OrderNos.Add("BM2024060915283860183390573");
|
|
|
- OrderNos.Add("BM2024061021073127270148815");
|
|
|
- OrderNos.Add("BM2024061110512897200373083");
|
|
|
- OrderNos.Add("BM2024061116381172563321539");
|
|
|
- OrderNos.Add("BM2024061116403970848033016");
|
|
|
- OrderNos.Add("BM2024061116420698468544752");
|
|
|
- OrderNos.Add("BM2024061116454791337410830");
|
|
|
- OrderNos.Add("BM2024061618114602891640591");
|
|
|
- OrderNos.Add("BM2024061710231575090504019");
|
|
|
- OrderNos.Add("BM2024061712491667073449209");
|
|
|
- OrderNos.Add("BM2024061713313725279985341");
|
|
|
- OrderNos.Add("BM2024061715305004310220168");
|
|
|
- OrderNos.Add("BM2024061814570516374344008");
|
|
|
- OrderNos.Add("BM2024061816284293452540567");
|
|
|
- OrderNos.Add("BM2024061817303141188725776");
|
|
|
- OrderNos.Add("BM2024061817514466570015777");
|
|
|
- OrderNos.Add("BM2024061819320454306899315");
|
|
|
- OrderNos.Add("BM2024061819550591038658501");
|
|
|
- OrderNos.Add("BM2024061820083870519829511");
|
|
|
- OrderNos.Add("BM2024061913174251376166374");
|
|
|
- OrderNos.Add("BM2024061914133532158425064");
|
|
|
- OrderNos.Add("BM2024062011520571122591493");
|
|
|
- OrderNos.Add("BM2024062019282462603171101");
|
|
|
- OrderNos.Add("BM2024062110361269396743921");
|
|
|
- OrderNos.Add("BM2024062111013322637815281");
|
|
|
- OrderNos.Add("BM2024062116123310729459180");
|
|
|
- OrderNos.Add("BM2024062123360881972979017");
|
|
|
- OrderNos.Add("BM2024062215145819732048432");
|
|
|
- OrderNos.Add("BM2024062309550206498202108");
|
|
|
- OrderNos.Add("BM2024062313551537076726382");
|
|
|
- OrderNos.Add("BM2024062314521368797769848");
|
|
|
- OrderNos.Add("BM2024062315021947328572858");
|
|
|
- OrderNos.Add("BM2024062315505914062923147");
|
|
|
- OrderNos.Add("BM2024062316493189795239698");
|
|
|
- OrderNos.Add("BM2024062317220672507255078");
|
|
|
- OrderNos.Add("BM2024062317362079359724475");
|
|
|
- OrderNos.Add("BM2024062319362607330797044");
|
|
|
- OrderNos.Add("BM2024062409194399607625868");
|
|
|
- OrderNos.Add("BM2024062409354075093191999");
|
|
|
- OrderNos.Add("BM2024062409572417250788279");
|
|
|
- OrderNos.Add("BM2024062410130055103569254");
|
|
|
- OrderNos.Add("BM2024062410370404316989426");
|
|
|
- OrderNos.Add("BM2024062410494036054821444");
|
|
|
- OrderNos.Add("BM2024062410510214237120993");
|
|
|
- OrderNos.Add("BM2024062410540774395766768");
|
|
|
- OrderNos.Add("BM2024062412054969363623909");
|
|
|
- OrderNos.Add("BM2024062412063365014595845");
|
|
|
- OrderNos.Add("BM2024062412564810567150827");
|
|
|
- OrderNos.Add("BM2024062413361660963905320");
|
|
|
- OrderNos.Add("BM2024062413533005598503044");
|
|
|
- OrderNos.Add("BM2024062414034742067611108");
|
|
|
- OrderNos.Add("BM2024062414221160454950118");
|
|
|
- OrderNos.Add("BM2024062414221586262761671");
|
|
|
- OrderNos.Add("BM2024062414283991832971690");
|
|
|
- OrderNos.Add("BM2024062415020644801374214");
|
|
|
- OrderNos.Add("BM2024062416342211628125048");
|
|
|
- OrderNos.Add("BM2024062419040634390593367");
|
|
|
- OrderNos.Add("BM2024062420031688020592643");
|
|
|
- OrderNos.Add("BM2024062420595935667404632");
|
|
|
- OrderNos.Add("BM2024062421545516534666451");
|
|
|
- OrderNos.Add("BM2024062422060766623021093");
|
|
|
+ // OrderNos.Add("BM2024060113545453402672795");
|
|
|
|
|
|
List<int> ChkIds = new List<int>(); //机具券商品Id集合
|
|
|
ChkIds.Add(10);
|
|
@@ -1016,15 +970,15 @@ namespace MySystem
|
|
|
return SetCount;
|
|
|
}
|
|
|
|
|
|
- public bool CheckPosCouponLeaderFlag(WebCMSEntities db, int UserId, int Count, List<string> codes)
|
|
|
+ public int CheckPosCouponLeaderFlag(WebCMSEntities db, int UserId, int Count, List<string> codes)
|
|
|
{
|
|
|
- int SetCount = 0;
|
|
|
+ int LeaderUserId = 0;
|
|
|
decimal CheckReserve = 400 * Count;
|
|
|
// decimal LeaderReserve = 0;
|
|
|
LeaderReserveRecord ReserveRecord = db.LeaderReserveRecord.FirstOrDefault(m => m.SourceUserId == UserId && m.Remark == "推荐小盟主" && m.ChangeAmt - m.UsedReserve > CheckReserve);
|
|
|
if(ReserveRecord != null)
|
|
|
{
|
|
|
- int LeaderUserId = ReserveRecord.UserId;
|
|
|
+ LeaderUserId = ReserveRecord.UserId;
|
|
|
// if(ReserveRecord.ChangeAmt - ReserveRecord.UsedReserve >= CheckReserve)
|
|
|
// {
|
|
|
// LeaderReserve = CheckReserve;
|
|
@@ -1057,12 +1011,11 @@ namespace MySystem
|
|
|
if(coupon != null)
|
|
|
{
|
|
|
coupon.LeaderUserId = LeaderUserId;
|
|
|
- SetCount += 1;
|
|
|
}
|
|
|
}
|
|
|
db.SaveChanges();
|
|
|
}
|
|
|
- return SetCount > 0;
|
|
|
+ return LeaderUserId;
|
|
|
}
|
|
|
|
|
|
/// <summary>
|