/// <summary>類語グループリスト編集コマンド</summary>
        /// <param name="parameter">編集中の行[SynonymGroupEntity]</param>
        private void ExecuteEditSynonymGroup(object parameter)
        {
            if (parameter == null)
            {
                Logger.Fatal(CLASS_NAME, "ExecuteEditSynonymGroup", "parameter is null!");
                return;
            }

            SynonymGroupEntity targetGroup = parameter as SynonymGroupEntity;

            if (targetGroup == null)
            {
                Logger.Fatal(CLASS_NAME, "ExecuteEditSynonymGroup", "targetGroup is null!");
                return;
            }

            if (_model == null)
            {
                Logger.Fatal(CLASS_NAME, "ExecuteEditSynonymGroup", "_model is null!");
                return;
            }

            if (_model.UpdateSynonymGroup(targetGroup.GroupID, targetGroup.GroupName) == false)
            {
                Logger.Error(CLASS_NAME, "ExecuteEditSynonymGroup", "UpdateSynonymGroup return false");
                return;
            }

            UpdateDisplayGroupsAndWords(targetGroup.GroupID);
        }
        public void SynonymGroupEntitiesHaveACreatedAt()
        {
            var entity = new SynonymGroupEntity();
            var date   = new DateTime(2019, 02, 21);

            entity.CreatedAt = date;
            entity.CreatedAt.Should().BeSameDateAs(date);
        }
        public void SynonymGroupEntitiesHaveAName()
        {
            var entity = new SynonymGroupEntity();
            var name   = "Test";

            entity.Name = name;
            entity.Name.Should().BeSameAs(name);
        }
 private static SynonymGroup CreateSynonymGroupFrom(SynonymGroupEntity synonymGroupEntity)
 {
     // TODO: Reuse domain factory classes when created.
     return(new SynonymGroup
     {
         Id = synonymGroupEntity.Id,
         Name = synonymGroupEntity.Name,
         CreatedAt = synonymGroupEntity.CreatedAt
     });
 }
        /// <summary>類語グループ選択時実行コマンド</summary>
        /// <param name="parameter">選択した類語グループ</param>
        private void ExecuteSelectSynonymGroup(object parameter)
        {
            if (parameter == null)
            {
                Logger.Error(CLASS_NAME, "ExecuteSelectSynonymGroup", "parameter is null!");
                return;
            }

            SynonymGroupEntity selectedGroup = ConvertParameterToSynonymGroupEntity(parameter);

            if (selectedGroup == null)
            {
                Logger.Error(CLASS_NAME, "ExecuteSelectSynonymGroup", "selectedGroup is null!");
                return;
            }

            SelectedGroup = selectedGroup;
            UpdateDisplaySynonymWords(selectedGroup.GroupID);
        }
Ejemplo n.º 6
0
        /// <summary>類語グループ選択時に類語一覧と選択中の類語グループIDを更新する</summary>
        /// <param name="parameter"></param>
        private void ExecuteSelectSynonymGroup(object parameter)
        {
            #region convert args and null check

            if (parameter == null)
            {
                Logger.Fatal(CLASS_NAME, "ExecuteSelectSynonymGroup", "parameter is null!");
                return;
            }

            SelectionChangedEventArgs e = parameter as SelectionChangedEventArgs;
            if (e == null)
            {
                Logger.Fatal(CLASS_NAME, "ExecuteSelectSynonymGroup", "EventArgs is null!");
                return;
            }

            object[] obj = e.AddedItems as object[];
            if (obj == null || obj.Any() == false)
            {
                Logger.Fatal(CLASS_NAME, "ExecuteSelectSynonymGroup", "target object is null!");
                return;
            }

            SynonymGroupEntity selectedSynonymGroup = obj[0] as SynonymGroupEntity;
            if (selectedSynonymGroup == null)
            {
                Logger.Fatal(CLASS_NAME, "ExecuteSelectSynonymGroup", "selectedSynonymGroup is null!");
                return;
            }

            #endregion

            if (IsExistSynonymGroupID(selectedSynonymGroup.GroupID) == false)
            {
                Logger.Fatal(CLASS_NAME, "ExecuteSelectSynonymGroup", $"target synonymGroup is not exist! groupID:[{selectedSynonymGroup.GroupID}]");
                return;
            }

            _selectedSynonymGroupId = selectedSynonymGroup.GroupID;
            UpdateDisplaySynonymWords(_selectedSynonymGroupId);
        }
        public void SynonymGroupEntitiesHaveAnId()
        {
            var entity = new SynonymGroupEntity();

            entity.Id.Should().BeGreaterOrEqualTo(0);
        }
Ejemplo n.º 8
0
        /// <summary>クエリによりSynonymGroupEntityを取得する</summary>
        /// <param name="sql">実行対象のSQL文</param>
        /// <param name="synonymGroups">取得したSynonymGroupEntity配列</param>
        /// <returns>成功時:true, 失敗時:false</returns>
        internal bool GetTargetSynonymGroups(string sql, out SynonymGroupEntity[] synonymGroups)
        {
            Logger.Info(CLASS_NAME, "GetTargetSynonymGroups", $"start, SQL:[{sql}]");

            synonymGroups = null;
            if (string.IsNullOrEmpty(sql))
            {
                Logger.Error(CLASS_NAME, "GetTargetSynonymGroups", "sql is null or empty");
                return(false);
            }

            using (SQLiteDataReader reader = ExecuteQuery(sql))
            {
                try
                {
                    if (reader == null)
                    {
                        // 実行結果が必ずあるはずなのに、何もないのは異常だろう
                        Logger.Error(CLASS_NAME, "GetTargetSynonymGroups", "reader result is null");
                        return(false);
                    }

                    List <SynonymGroupEntity> synonymGroupList = new List <SynonymGroupEntity>();

                    // SQLの実行結果をここで格納する
                    while (reader.Read())
                    {
                        // SQLiteのInteger型はInt64->C#ではlong型に値する
                        // 現状、上限値をintの最大値としてID付加時に処理するため、int型に無条件でキャストしてよい
                        int  groupID         = -1;
                        long?nullableGroupID = reader["GroupID"] as long?;
                        if (nullableGroupID != null)
                        {
                            groupID = (int)nullableGroupID;
                        }
                        string groupName       = reader["GroupName"] as string;
                        string groupRegistDate = reader["GroupRegistDate"] as string;
                        string groupUpdateDate = reader["GroupUpdateDate"] as string;

                        SynonymGroupEntity synonymGroupEntity = new SynonymGroupEntity
                        {
                            GroupID         = groupID,
                            GroupName       = groupName,
                            GroupRegistDate = groupRegistDate,
                            GroupUpdateDate = groupUpdateDate
                        };
                        synonymGroupList.Add(synonymGroupEntity);
                    }

                    if (synonymGroupList != null)
                    {
                        synonymGroups = synonymGroupList.ToArray();
                    }

                    return(true);
                }
                catch (Exception e)
                {
                    Logger.Fatal(CLASS_NAME, "GetTargetSynonymGroups", e.ToString());
                    return(false);
                }
            }
        }