MultiValueItem.cs 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. using System;
  2. using System.Collections.Generic;
  3. using CB.Common;
  4. using CB.Entity;
  5. using CB.Interface;
  6. namespace CB.TrendMiss
  7. {
  8. /// <summary>
  9. /// 多值项遗漏
  10. /// </summary>
  11. /// <typeparam name="TEntity"></typeparam>
  12. public class MultiValueItem<TEntity> : MissRepository<TEntity>, IMissItem<TEntity> where TEntity : LotteryOpenCode
  13. {
  14. public override void Init(TrendMissItemInfo itemConfig, IList<TrendMissDataInfo> missData)
  15. {
  16. DefaultInit(itemConfig, missData);
  17. }
  18. public override bool SetItemValue(TEntity entity)
  19. {
  20. Tuple<bool, string> t;
  21. switch (this._itemConfig.FuntionType)
  22. {
  23. case MissItemType.MultiValue_OpenCodeItem:
  24. t = MissItemFunction.SetOpenCodeItemValue(entity, this._itemConfig.IndexStart, this._itemConfig.IndexEnd,
  25. this._itemConfig.ItemMinValue, this._itemConfig.ItemMaxValue, this.IsFirst, this._itemConfig.ItemCount, ref this._missData);
  26. break;
  27. default :
  28. t = new Tuple<bool, string>(false, "");
  29. break;
  30. }
  31. this.Completed = t.Item1;
  32. if (!t.Item1)
  33. return false;
  34. if (this.Completed)
  35. {
  36. ComputMissData(entity.Term);
  37. }
  38. return true;
  39. }
  40. public override bool SaveData()
  41. {
  42. return DefaultSaveData();
  43. }
  44. public override IList<TrendMissDataInfo> GetMissDataList()
  45. {
  46. return this._missData;
  47. }
  48. }
  49. }