using System;

namespace ChuPiao.AutoPrint.Machine.TjJingCaiV1.MacLotPlayMode
{
    public class MacLotPlayModeServiceFactory
    {
        public IMacLotPlayModeService GetLotPlayService(int modeId)
        {
            TjJingCaiV1ModeType modeType = (TjJingCaiV1ModeType) modeId;
            IMacLotPlayModeService service = null;
            switch (modeType)
            {
                //7星彩
                case TjJingCaiV1ModeType.QxDs:
                    service = new MacLotPlayModeQxDsService();
                    break;
                case TjJingCaiV1ModeType.QxFs:
                    service = new MacLotPlayModeQxFsService();
                    break;

                //排列5
                case TjJingCaiV1ModeType.PwDs:
                    service = new MacLotPlayModePwDsService();
                    break;
                case TjJingCaiV1ModeType.PwFs:
                    service = new MacLotPlayModePwFsService();
                    break;
                //排列3
                case TjJingCaiV1ModeType.PsDs:
                    service = new MacLotPlayModePsDsService();
                    break;
                case TjJingCaiV1ModeType.PsZxDs:
                    service = new MacLotPlayModePsZxDsService();
                    break;
                case TjJingCaiV1ModeType.PsFs:
                    service = new MacLotPlayModePsFsService();
                    break;
                case TjJingCaiV1ModeType.PsZ3Fs:
                    service = new MacLotPlayModePsZ3FsService();
                    break;
                case TjJingCaiV1ModeType.PsZ6Fs:
                    service = new MacLotPlayModePsZ6FsService();
                    break;
                case TjJingCaiV1ModeType.PsHz:
                    service = new MacLotPlayModePsHzService();
                    break;
                case TjJingCaiV1ModeType.PsZxHz:
                    service = new MacLotPlayModePsZxHzService();
                    break;
                case TjJingCaiV1ModeType.PsZhfs:
                    service = new MacLotPlayModePsZhfsService();
                    break;
                case TjJingCaiV1ModeType.PsZhdt:
                    service = new MacLotPlayModePsZhdtService();
                    break;
                case TjJingCaiV1ModeType.PsZ3Dt:
                    service = new MacLotPlayModePsZ3DtService();
                    break;
                case TjJingCaiV1ModeType.PsZ6Dt:
                    service = new MacLotPlayModePsZ6DtService();
                    break;
                case TjJingCaiV1ModeType.PsKdfs:
                    service = new MacLotPlayModePsKdfsService();
                    break;
                case TjJingCaiV1ModeType.PsZ3Kdfs:
                    service = new MacLotPlayModePsZ3KdfsService();
                    break;
                case TjJingCaiV1ModeType.PsZ6Kdfs:
                    service = new MacLotPlayModePsZ6KdfsService();
                    break;

               

                //胜负彩
                case TjJingCaiV1ModeType.SfDs:
                    service = new MacLotPlayModeSfDsService();
                    break;
                case TjJingCaiV1ModeType.SfFs:
                    service = new MacLotPlayModeSfFsService();
                    break;
                case TjJingCaiV1ModeType.SfR9Ds:
                    service = new MacLotPlayModeSfR9DsService();
                    break;
                case TjJingCaiV1ModeType.SfR9Fs:
                    service = new MacLotPlayModeSfR9FsService();
                    break;

                //大乐透
                case TjJingCaiV1ModeType.LtDs:
                    service = new MacLotPlayModeLtDsService();
                    break;
                case TjJingCaiV1ModeType.LtFs:
                    service = new MacLotPlayModeLtFsService();
                    break;
                case TjJingCaiV1ModeType.LtDt:
                    service = new MacLotPlayModeLtDtService();
                    break;
                case TjJingCaiV1ModeType.LtZjDs:
                    service = new MacLotPlayModeLtZjDsService();
                    break;
                case TjJingCaiV1ModeType.LtZjFs:
                    service = new MacLotPlayModeLtZjFsService();
                    break;
                case TjJingCaiV1ModeType.LtZjDt:
                    service = new MacLotPlayModeLtZjDtService();
                    break;

                //竟彩足球胜平负
                case TjJingCaiV1ModeType.JzSpf:
                    service = new MacLotPlayModeJzSpfService();
                    break;
                //竟彩足球胜平负
                case TjJingCaiV1ModeType.JzSpfn:
                    service = new MacLotPlayModeJzSpfnService();
                    break;
                //竟彩足球比分
                case TjJingCaiV1ModeType.JzBf:
                    service = new MacLotPlayModeJzBfService();
                    break;
                //竟彩足球总进球
                case TjJingCaiV1ModeType.JzZjq:
                    service = new MacLotPlayModeJzZjqService();
                    break;
                //竟彩足球半全场
                case TjJingCaiV1ModeType.JzBqc:
                    service = new MacLotPlayModeJzBqcService();
                    break;
                //竟彩篮球让分胜负
                case TjJingCaiV1ModeType.JlRfsf:
                    service = new MacLotPlayModeJlRfsfService();
                    break;
                //竟彩篮球胜负
                case TjJingCaiV1ModeType.JlSf:
                    service = new MacLotPlayModeJlSfService();
                    break;
                //竟彩篮球胜分差
                case TjJingCaiV1ModeType.JlSfc:
                    service = new MacLotPlayModeJlSfcService();
                    break;
                //竟彩篮球大小分
                case TjJingCaiV1ModeType.JlDxf:
                    service = new MacLotPlayModeJlDxfService();
                    break;
                //竟彩名次冠军
                case TjJingCaiV1ModeType.JmGj:
                    service = new MacLotPlayModeJmGjService();
                    break;
                //竟彩名次冠亚军
                case TjJingCaiV1ModeType.JmGyj:
                    service = new MacLotPlayModeJmGyjService();
                    break;
                //竟彩足球混合过关
                case TjJingCaiV1ModeType.JzHhgg:
                    service = new MacLotPlayModeJzHhggService();
                    break;
                //竟彩篮球混合过关
                case TjJingCaiV1ModeType.JlHhgg:
                    service = new MacLotPlayModeJlHhggService();
                    break;

                default:
                    throw new Exception(string.Concat("彩票机投注模式未定义：", modeId));
            }
            return service;
        }
    }
}
