コード例 #1
0
ファイル: TemplateDetailEntity.cs プロジェクト: OSN-DEV/MyLog
 /// <summary>
 /// データモデルの情報をメンバーに設定する。
 /// </summary>
 /// <param name="data">データモデル</param>
 /// <param name="templateId">テンプレートID</param>
 internal void Set(TemplateDetailData data, long templateId)
 {
     this.TemplateId = templateId;
     this.CategoryId = data.CategoryId;
     this.Priority   = data.Priority;
     this.Todo       = data.Todo;
     this.PlanStart  = data.PlanStart;
     this.PlanEnd    = data.PlanEnd;
     if ("" == data.PlanTime)
     {
         this.PlanTime = "0";
     }
     else
     {
         this.PlanTime = data.PlanTime;
     }
 }
コード例 #2
0
ファイル: TemplateRepo.cs プロジェクト: OSN-DEV/MyLog
        /// <summary>
        /// テンプレート情報(明細)を取得
        /// </summary>
        /// <param name="detailList">明細情報のリスト</param>
        /// <param name="entity">エンティティ</param>
        /// <param name="id">id</param>
        /// <param name="categories">カテゴリ情報</param>
        private void SelectDetailByTemplateId(ObservableCollection <TemplateDetailData> detailList,
                                              TemplateDetailEntity entity, long id, Dictionary <long, string> categories)
        {
            var startIndex = 0;

            using (var recset = entity.SelectByTemplateId(id)) {
                var currentCategory = -1L;
                while (recset.Read())
                {
                    var detail = new TemplateDetailData {
                        CategoryId = recset.GetLong(LogDetailEntity.Cols.CategoryId),
                        Priority   = recset.GetInt(LogDetailEntity.Cols.Priority),
                        Todo       = recset.GetString(LogDetailEntity.Cols.Todo),
                        PlanStart  = recset.GetString(LogDetailEntity.Cols.PlanStart),
                        PlanEnd    = recset.GetString(LogDetailEntity.Cols.PlanEnd),
                        PlanTime   = recset.GetInt(LogDetailEntity.Cols.PlanTime).ToString(),
                    };
                    detail.IsCategory = false;

                    if (currentCategory != detail.CategoryId)
                    {
                        for (var i = startIndex; i < categories.Count; i++)
                        {
                            var categoryId = categories.ElementAt(i).Key;
                            var category   = new TemplateDetailData {
                                IsCategory   = true,
                                CategoryId   = categoryId,
                                CategoryName = categories[categoryId]
                            };
                            detailList.Add(category);
                            if (categoryId == detail.CategoryId)
                            {
                                startIndex      = i + 1;
                                currentCategory = categoryId;
                                break;
                            }
                            currentCategory = categoryId;
                        }
                    }
                    detailList.Add(detail);
                }

                startIndex = -1;
                for (var i = 0; i < categories.Count; i++)
                {
                    if (currentCategory == categories.ElementAt(i).Key)
                    {
                        startIndex = i;
                        break;
                    }
                }
                for (var i = startIndex + 1; i < categories.Count; i++)
                {
                    var categoryId = categories.ElementAt((int)i).Key;
                    var category   = new TemplateDetailData {
                        IsCategory   = true,
                        CategoryId   = categoryId,
                        CategoryName = categories[categoryId]
                    };
                    detailList.Add(category);
                }
            }
        }