Esempio n. 1
0
        /// <summary>
        /// 引数に指定したMtEquipmentTypeをMT_EQUIPMENT_TYPEテーブルへ登録する
        /// </summary>
        /// <param name="inData">登録するデータ</param>
        /// <returns>処理結果</returns>
        public MtEquipmentType CreateMtEquipmentType(MtEquipmentType inData)
        {
            MtEquipmentType model = null;

            try
            {
                _logger.EnterJson("{0}", inData);

                Rms.Server.Core.DBAccessor.Models.MtEquipmentType entity = new Rms.Server.Core.DBAccessor.Models.MtEquipmentType(inData);

                _dbPolly.Execute(() =>
                {
                    entity.CreateDatetime = _timePrivder.UtcNow;

                    using (Rms.Server.Core.DBAccessor.Models.RmsDbContext db = new Rms.Server.Core.DBAccessor.Models.RmsDbContext(_appSettings))
                    {
                        var dbdata = db.MtEquipmentType.Add(entity).Entity;
                        db.SaveChanges();
                        model = dbdata.ToModel();
                    }
                });

                return(model);
            }
            catch (ValidationException e)
            {
                throw new RmsParameterException(e.ValidationResult.ErrorMessage, e);
            }
            catch (Exception e)
            {
                throw new RmsException("MT_EQUIPMENT_TYPEテーブルへのInsertに失敗しました。", e);
            }
            finally
            {
                _logger.LeaveJson("{0}", model);
            }
        }
Esempio n. 2
0
        public static InstancesOnDb CreateMasterTables(InstancesOnDb list = null)
        {
            if (list == null)
            {
                list = new InstancesOnDb();
            }

            var builder = new TestDiProviderBuilder();

            builder.ServiceCollection.AddTransient <IMtDeliveryFileTypeRepository, MtDeliveryFileTypeRepository>();
            var provider = builder.Build();

            // 配信ファイル種別マスタテーブル
            {
                var repository = provider.GetRequiredService <IMtDeliveryFileTypeRepository>();

                // A / Lソフト
                var newdata = new MtDeliveryFileType()
                {
                    Code = Rms.Server.Core.Utility.Const.DeliveryFileType.AlSoft
                };
                var result = repository.CreateMtDeliveryFileType(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                // コンソールのHotfix
                newdata = new MtDeliveryFileType()
                {
                    Code = Rms.Server.Core.Utility.Const.DeliveryFileType.HotFixConsole
                };
                result = repository.CreateMtDeliveryFileType(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                // HobbitのHotfix
                newdata = new MtDeliveryFileType()
                {
                    Code = Rms.Server.Core.Utility.Const.DeliveryFileType.HotFixHobbit
                };
                result = repository.CreateMtDeliveryFileType(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                // パッケージ
                newdata = new MtDeliveryFileType()
                {
                    Code = Rms.Server.Core.Utility.Const.DeliveryFileType.Package
                };
                result = repository.CreateMtDeliveryFileType(newdata);
                Assert.IsNotNull(result);
                list.Add(result);
            }

            // 接続ステータスマスタテーブル
            {
                var repository = provider.GetRequiredService <IMtConnectStatusRepository>();

                // 未接続(接続歴なし)
                var connectStatusNewData = new MtConnectStatus()
                {
                    Code = Rms.Server.Core.Utility.Const.ConnectStatus.Unconnected
                };
                var result = repository.CreateMtConnectStatus(connectStatusNewData);
                Assert.IsNotNull(result);
                list.Add(result);

                // 接続中
                connectStatusNewData = new MtConnectStatus()
                {
                    Code = Rms.Server.Core.Utility.Const.ConnectStatus.Connected
                };
                result = repository.CreateMtConnectStatus(connectStatusNewData);
                Assert.IsNotNull(result);
                list.Add(result);

                // 切断
                connectStatusNewData = new MtConnectStatus()
                {
                    Code = Rms.Server.Core.Utility.Const.ConnectStatus.Disconnected
                };
                result = repository.CreateMtConnectStatus(connectStatusNewData);
                Assert.IsNotNull(result);
                list.Add(result);
            }

            // 配信グループステータスマスタテーブル
            {
                var repository = provider.GetRequiredService <IMtDeliveryGroupStatusRepository>();

                // 未開始(開始前)
                var newdata = new MtDeliveryGroupStatus()
                {
                    Code = Rms.Server.Core.Utility.Const.DeliveryGroupStatus.NotStarted
                };
                var result = repository.CreateMtDeliveryGroupStatus(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                // 開始済み
                newdata = new MtDeliveryGroupStatus()
                {
                    Code = Rms.Server.Core.Utility.Const.DeliveryGroupStatus.Started
                };
                result = repository.CreateMtDeliveryGroupStatus(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                // 完了
                newdata = new MtDeliveryGroupStatus()
                {
                    Code = Rms.Server.Core.Utility.Const.DeliveryGroupStatus.Completed
                };
                result = repository.CreateMtDeliveryGroupStatus(newdata);
                Assert.IsNotNull(result);
                list.Add(result);
            }

            // 適用結果ステータスマスタテーブル
            {
                var repository = provider.GetRequiredService <IMtInstallResultStatusRepository>();

                // 未開始
                var newdata = new MtInstallResultStatus()
                {
                    Code = Rms.Server.Core.Utility.Const.InstallResultStatus.NotStarted
                };
                var result = repository.CreateMtInstallResultStatus(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                // メッセージ送信済み
                newdata = new MtInstallResultStatus()
                {
                    Code = Rms.Server.Core.Utility.Const.InstallResultStatus.MessageSent
                };
                result = repository.CreateMtInstallResultStatus(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                // 対象外
                newdata = new MtInstallResultStatus()
                {
                    Code = Rms.Server.Core.Utility.Const.InstallResultStatus.Nottarget
                };
                result = repository.CreateMtInstallResultStatus(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                // ダウンロード済み
                newdata = new MtInstallResultStatus()
                {
                    Code = Rms.Server.Core.Utility.Const.InstallResultStatus.Downloaded
                };
                result = repository.CreateMtInstallResultStatus(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                // 配布中
                newdata = new MtInstallResultStatus()
                {
                    Code = Rms.Server.Core.Utility.Const.InstallResultStatus.Dispatching
                };
                result = repository.CreateMtInstallResultStatus(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                // 配布済み
                newdata = new MtInstallResultStatus()
                {
                    Code = Rms.Server.Core.Utility.Const.InstallResultStatus.Dispatched
                };
                result = repository.CreateMtInstallResultStatus(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                // ユーザによる適用キャンセル
                newdata = new MtInstallResultStatus()
                {
                    Code = Rms.Server.Core.Utility.Const.InstallResultStatus.Usercanceled
                };
                result = repository.CreateMtInstallResultStatus(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                // 適用済み
                newdata = new MtInstallResultStatus()
                {
                    Code = Rms.Server.Core.Utility.Const.InstallResultStatus.Installed
                };
                result = repository.CreateMtInstallResultStatus(newdata);
                Assert.IsNotNull(result);
                list.Add(result);
            }

            // 機器分類マスタテーブル
            {
                var repository = provider.GetRequiredService <IMtEquipmentTypeRepository>();

                // ゲートウェイ
                var newdata = new MtEquipmentType()
                {
                    Code = Rms.Server.Core.Utility.Const.EquipmentType.Gateway
                };
                var result = repository.CreateMtEquipmentType(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                // デバイス
                newdata = new MtEquipmentType()
                {
                    Code = Rms.Server.Core.Utility.Const.EquipmentType.Device
                };
                result = repository.CreateMtEquipmentType(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                // ユニット
                newdata = new MtEquipmentType()
                {
                    Code = Rms.Server.Core.Utility.Const.EquipmentType.Unit
                };
                result = repository.CreateMtEquipmentType(newdata);
                Assert.IsNotNull(result);
                list.Add(result);
            }

            // 機器型式マスタテーブル
            {
                var repository = provider.GetRequiredService <IMtEquipmentModelRepository>();
                var newdata    = new MtEquipmentModel()
                {
                    EquipmentTypeSid = list.GetMtEquipmentlTypeSid(Rms.Server.Core.Utility.Const.EquipmentType.Gateway),
                    Code             = "model1"
                };
                var result = repository.CreateMtEquipmentModel(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                newdata = new MtEquipmentModel()
                {
                    EquipmentTypeSid = list.GetMtEquipmentlTypeSid(Rms.Server.Core.Utility.Const.EquipmentType.Gateway),
                    Code             = "model2"
                };
                result = repository.CreateMtEquipmentModel(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                newdata = new MtEquipmentModel()
                {
                    EquipmentTypeSid = list.GetMtEquipmentlTypeSid(Rms.Server.Core.Utility.Const.EquipmentType.Gateway),
                    Code             = "model3"
                };
                result = repository.CreateMtEquipmentModel(newdata);
                Assert.IsNotNull(result);
                list.Add(result);
            }

            // インストールタイプマスタテーブル
            {
                var repository = provider.GetRequiredService <IMtInstallTypeRepository>();

                // RSPC
                var newdata = new MtInstallType()
                {
                    EquipmentTypeSid = list.GetMtEquipmentlTypeSid(Rms.Server.Core.Utility.Const.EquipmentType.Gateway),
                    Code             = Rms.Server.Core.Utility.Const.InstallType.Rspc
                };
                var result = repository.CreateMtInstallType(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                // Console
                newdata = new MtInstallType()
                {
                    EquipmentTypeSid = list.GetMtEquipmentlTypeSid(Rms.Server.Core.Utility.Const.EquipmentType.Gateway),
                    Code             = Rms.Server.Core.Utility.Const.InstallType.ConsoleRspc
                };
                result = repository.CreateMtInstallType(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                // Console(RSPCレス)
                newdata = new MtInstallType()
                {
                    EquipmentTypeSid = list.GetMtEquipmentlTypeSid(Rms.Server.Core.Utility.Const.EquipmentType.Gateway),
                    Code             = Rms.Server.Core.Utility.Const.InstallType.ConsoleRspcless
                };
                result = repository.CreateMtInstallType(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                // Console MINI(単独)
                newdata = new MtInstallType()
                {
                    EquipmentTypeSid = list.GetMtEquipmentlTypeSid(Rms.Server.Core.Utility.Const.EquipmentType.Gateway),
                    Code             = Rms.Server.Core.Utility.Const.InstallType.ConsoleMini
                };
                result = repository.CreateMtInstallType(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                // Console MINI(Hobbit連携)
                newdata = new MtInstallType()
                {
                    EquipmentTypeSid = list.GetMtEquipmentlTypeSid(Rms.Server.Core.Utility.Const.EquipmentType.Gateway),
                    Code             = Rms.Server.Core.Utility.Const.InstallType.ConsoleMiniHobbit
                };
                result = repository.CreateMtInstallType(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                // Hobbitサーバ
                newdata = new MtInstallType()
                {
                    EquipmentTypeSid = list.GetMtEquipmentlTypeSid(Rms.Server.Core.Utility.Const.EquipmentType.Gateway),
                    Code             = Rms.Server.Core.Utility.Const.InstallType.HobbitServer
                };
                result = repository.CreateMtInstallType(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                // Hobbitクライアント
                newdata = new MtInstallType()
                {
                    EquipmentTypeSid = list.GetMtEquipmentlTypeSid(Rms.Server.Core.Utility.Const.EquipmentType.Gateway),
                    Code             = Rms.Server.Core.Utility.Const.InstallType.HobbitClient
                };
                result = repository.CreateMtInstallType(newdata);
                Assert.IsNotNull(result);
                list.Add(result);

                // リモート端末
                newdata = new MtInstallType()
                {
                    EquipmentTypeSid = list.GetMtEquipmentlTypeSid(Rms.Server.Core.Utility.Const.EquipmentType.Gateway),
                    Code             = Rms.Server.Core.Utility.Const.InstallType.Remote
                };
                result = repository.CreateMtInstallType(newdata);
                Assert.IsNotNull(result);
                list.Add(result);
            }

            return(list);
        }