/// <summary> /// 刷新购买限制 /// </summary> /// <param name="shopId"></param> /// <param name="buyAmount"></param> /// <param name="curStoreDefine"></param> public void RefreshBuyLimit(int shopId, int buyAmount, StoreDefine curStoreDefine) { var curLimitInfo = listGoodsInfoStruct.Find((elem) => elem.ShopId == shopId); if (curLimitInfo != null) { if (curStoreDefine.PurchaseNumLimit > 0) { curLimitInfo.PermanentBuyNum += buyAmount; } if (curStoreDefine.DailyPurchaseNum > 0) { curLimitInfo.TodayBuyNum += buyAmount; } } else { GoodsInfoStruct newGoodsInfoStruct = new GoodsInfoStruct() { ShopId = shopId }; if (curStoreDefine.PurchaseNumLimit > 0) { newGoodsInfoStruct.PermanentBuyNum += buyAmount; } if (curStoreDefine.DailyPurchaseNum > 0) { newGoodsInfoStruct.TodayBuyNum += buyAmount; } listGoodsInfoStruct.Add(newGoodsInfoStruct); } }
private List <string> GetDailyBuyLimitInfo(GoodsInfoStruct curLimitInfo) { List <string> listStr = new List <string>(); //"今日限购"的多语言; listStr.Add(LocalizationDefineHelper.GetStringNameById(120073)); if (curLimitInfo != null) { if (curLimitInfo.TodayBuyNum >= curStoreDefine.DailyPurchaseNum) { listStr.Add(curStoreDefine.DailyPurchaseNum.ToString()); } else { listStr.Add(curLimitInfo.TodayBuyNum.ToString()); } } else { listStr.Add("0"); } listStr.Add(curStoreDefine.DailyPurchaseNum.ToString()); return(listStr); }
private void GetGoodLimitStr() { //判定全局限购 GoodsInfoStruct curLimitInfo = uiShopComponent.listGoodsInfoStruct.Find((elem) => elem.ShopId == curStoreDefine.ShopId); string limitStrStart = ""; string limitStrCurNum = ""; string limitStrTotalNum = ""; do { //既有每日限购又有全局限购 if (curStoreDefine.PurchaseNumLimit > 0 && curStoreDefine.DailyPurchaseNum > 0) { //全局限购已满 if (curLimitInfo != null && curLimitInfo.PermanentBuyNum >= curStoreDefine.PurchaseNumLimit) { //"限购"的多语言; limitStrStart = LocalizationDefineHelper.GetStringNameById(120072); limitStrCurNum = curStoreDefine.PurchaseNumLimit.ToString(); limitStrTotalNum = curStoreDefine.PurchaseNumLimit.ToString(); break; } List <string> listStr = GetDailyBuyLimitInfo(curLimitInfo); limitStrStart = listStr[0]; limitStrCurNum = listStr[1]; limitStrTotalNum = listStr[2]; } //只有每日限购 if (curStoreDefine.PurchaseNumLimit == 0 && curStoreDefine.DailyPurchaseNum > 0) { //"今日限购"的多语言; limitStrStart = LocalizationDefineHelper.GetStringNameById(120073); List <string> listStr = GetDailyBuyLimitInfo(curLimitInfo); limitStrStart = listStr[0]; limitStrCurNum = listStr[1]; limitStrTotalNum = listStr[2]; break; } //只有全局限购 if (curStoreDefine.PurchaseNumLimit > 0 && curStoreDefine.DailyPurchaseNum == 0) { //"限购"的多语言; limitStrStart = LocalizationDefineHelper.GetStringNameById(120072); limitStrTotalNum = curStoreDefine.PurchaseNumLimit.ToString(); if (curLimitInfo != null) { if (curLimitInfo.PermanentBuyNum >= curStoreDefine.PurchaseNumLimit) { limitStrCurNum = curStoreDefine.PurchaseNumLimit.ToString(); } else { limitStrCurNum = curLimitInfo.PermanentBuyNum.ToString(); } } else { limitStrCurNum = "0"; } } } while (false); int.TryParse(limitStrCurNum, out int limitStrCurNumInt); int.TryParse(limitStrTotalNum, out int limitStrTotalNumInt); limitStr = limitStrStart + limitStrCurNum + "/" + limitStrTotalNum; if (limitStr.Length > 1) { todayBuyLimit = limitStrTotalNumInt - limitStrCurNumInt; } else { todayBuyLimit = 99; } }