Exemple #1
0
        public ApiResult <MemoList> GetMockMemoInfo()
        {
            List <MemoInfo> customerMemo = new List <MemoInfo>()
            {
                new MemoInfo()
                {
                    lidtype      = 2,
                    lid          = 10000037,
                    categoryID   = 16,
                    memo         = "IRS ALERT: Please verify IRS information with merchant.  Update is required",
                    enabled      = true,
                    categoryDesc = "IRS"
                }
            };
            List <MemoInfo> merchMemo = new List <MemoInfo>()
            {
                new MemoInfo()
                {
                    lidtype      = 3,
                    lid          = 479198,
                    categoryID   = 13,
                    memo         = "PS Test for non IRS and non Multi Merch Customer",
                    enabled      = true,
                    categoryDesc = "Other"
                },
                new MemoInfo()
                {
                    lidtype      = 3,
                    lid          = 479198,
                    categoryID   = 13,
                    memo         = "This is a Multi Merchant",
                    enabled      = true,
                    categoryDesc = "Multi Merchant"
                }
            };
            List <MemoInfo> groupMemo = new List <MemoInfo>()
            {
                new MemoInfo()
                {
                    groupID      = 10000037,
                    categoryID   = 16,
                    memo         = "Non IRS & Multi Merchant Test",
                    enabled      = true,
                    categoryDesc = "IRS"
                }
            };

            MemoList memoList = new MemoList();

            memoList.customerMemo = customerMemo;
            memoList.merchMemo    = merchMemo;
            memoList.groupMemo    = groupMemo;
            ApiResult <MemoList> expected = new ApiResult <MemoList>()
            {
                Result = memoList
            };

            return(expected);
        }
Exemple #2
0
        public async void DeleteMemo(Memo memo)
        {
            MemoList.Remove(memo);

            var deletedMemo = await _sqlite.GetMemo(memo.Id);

            await _sqlite.DeleteMemo(deletedMemo);
        }
Exemple #3
0
 public void PopulateList(Memo memo)
 {
     MemoList.Add(new Memo
     {
         Title   = memo.Title,
         Content = memo.Content
     });
 }
Exemple #4
0
        public async void LoadData()
        {
            var memos = await _sqlite.GetMemoAsync();

            foreach (var memo in memos)
            {
                MemoList.Add(new Memo
                {
                    Title   = memo.Title,
                    Content = memo.Content,
                    Id      = memo.Id
                });
            }
        }
Exemple #5
0
        /// <summary>
        /// プロパティに保持中の情報を新規SelfMemoとして追加する
        /// </summary>
        private void AddMemoToList()
        {
            SelfMemoItem newmemo = new SelfMemoItem(Word.Value, ShortWord.Value, Description.Value, Category.Value);

            if (!MemoList.Contains(newmemo))
            {
                MemoList.Add(newmemo);

                // プロパティを空白で初期化
                Word.Value        = "";
                ShortWord.Value   = "";
                Description.Value = "";
                Category.Value    = "";

                //SaveMemoFile(); // MemoListのハンドラで実施されるのでここでは不要

                // WordのTextboxをフォーカスする
                IsSelected.Value = true;
            }
        }
        public void should_success_Instantiate()
        {
            MemoList memoList = new MemoList()
            {
                BuyerName       = "BuyerName",
                CurrencyCodes   = "CurrencyCodes",
                Date            = DateTimeOffset.Now,
                DocumentNo      = "DocumentNo",
                MemoType        = "MemoType",
                SalesInvoiceNo  = "SalesInvoiceNo",
                Id              = 1,
                LastModifiedUtc = DateTime.Now
            };

            Assert.Equal("BuyerName", memoList.BuyerName);
            Assert.Equal("CurrencyCodes", memoList.CurrencyCodes);
            Assert.Equal("DocumentNo", memoList.DocumentNo);
            Assert.Equal("MemoType", memoList.MemoType);
            Assert.Equal("SalesInvoiceNo", memoList.SalesInvoiceNo);
            Assert.Equal(1, memoList.Id);
            Assert.True(DateTime.MinValue < memoList.LastModifiedUtc);
            Assert.True(DateTimeOffset.MinValue < memoList.Date);
        }
Exemple #7
0
 public async Task <MemoList> GetMemoResults(Helper.LIDTypes LIDtype, int LID)
 {
     try
     {
         var memoList = new MemoList();
         return(await this._connectionFactory.GetConnection(async c =>
         {
             using (var multi = c.QueryMultiple("[CISPlus].[uspGetMemoInfoForSearchLynk]  @LidType, @Lid",
                                                new { LidType = LIDtype, Lid = LID }))
             {
                 memoList.customerMemo = multi.Read <Wp.CIS.LynkSystems.Model.MemoInfo>().ToList();
                 memoList.merchMemo = multi.Read <Wp.CIS.LynkSystems.Model.MemoInfo>().ToList();
                 memoList.termMemo = multi.Read <Wp.CIS.LynkSystems.Model.MemoInfo>().ToList();
                 memoList.groupMemo = multi.Read <Wp.CIS.LynkSystems.Model.MemoInfo>().ToList();
                 return memoList;
             }
         }));
     }
     catch (System.Exception)
     {
         throw;
     }
 }
        public MainViewModel()
        {
            // タイトルに表示する文字列を指定
            var asm = Assembly.GetExecutingAssembly().GetName();

            AppName.Value = asm.Name + " - " + asm.Version.Major + "." + asm.Version.Minor;

            // 表示するリスト(filteredItemsSource)のソースとフィルタの設定
            FilteredItemsSource = new CollectionViewSource {
                Source = MemoList
            };
            FilteredItemsSource.Filter += (s, e) =>
            {
                var item = e.Item as SelfMemoItem;
                e.Accepted = CheckFilterStr(FilterStr.Value, item) && CheckCategoryFilter(item);
            };

            // ファイルが有ればロードしてMemoListを更新
            if (File.Exists(MemoFileName))
            {
                SelfMemoList.LoadMemoFile(MemoList, MemoFileName);
            }

            // MemoListが空なら、ヘルプメッセージ的な項目を追加する
            if (SelfMemoList.ItemsList.Count == 0)
            {
                MemoList.Add(new SelfMemoItem("用語", "正式名称、別名、訳語など", "用語の解説", "カテゴリ"));
                MemoList.Add(new SelfMemoItem("SelfMemo", "概要", "キーワードと関連情報(訳語、正式名称、説明など)を登録し、ど忘れした時に見返しやすくするアプリです。", "本アプリの説明"));
                MemoList.Add(new SelfMemoItem("SelfMemo", "検索機能", "検索フォームからキーワード検索ができます。", "本アプリの説明"));
                MemoList.Add(new SelfMemoItem("SelfMemo", "ショートカット", "グローバルホットキー(デフォルトでAlt+Shift+F2)でいつでもアプリ起動します。", "本アプリの説明"));
                MemoList.Add(new SelfMemoItem("SelfMemo", "項目追加", "メニューの「登録ダイアログを開く(Ctrl+R)」からキーワードの追加ができます。", "本アプリの説明"));
                MemoList.Add(new SelfMemoItem("SelfMemo", "項目編集", "編集ビューから登録内容の編集ができます。", "本アプリの説明"));
                MemoList.Add(new SelfMemoItem("SelfMemo", "カテゴリフィルタ", "「カテゴリ」メニューでカテゴリ毎の表示フィルタリングができます。", "本アプリの説明"));
            }

            // Filter文字列が更新されたら、Filterされたアイテムリストを更新
            FilterStr.Subscribe(_ =>
            {
                // 既にタイマーが走ってたら、一旦止める
                if (FilteredItemsRefreshTimer.IsEnabled)
                {
                    FilteredItemsRefreshTimer.Stop();
                }

                // タイマー開始
                FilteredItemsRefreshTimer.Interval = TimeSpan.FromMilliseconds(300);
                FilteredItemsRefreshTimer.Tick    += (s, e) =>
                {
                    FilteredItems.Refresh();
                    FilteredItemsRefreshTimer.Stop();
                };
                FilteredItemsRefreshTimer.Start();
            });

            // Filter文字列の有無フラグを連動
            UseFilterStr = FilterStr.Select(x => !string.IsNullOrWhiteSpace(x)).ToReadOnlyReactivePropertySlim();

            // カテゴリ選択ComboBoxが更新されたら、Filterされたアイテムリスト更新
            CategoryListSelected.Subscribe(_ =>
            {
                if (!FilteredItemsRefreshTimer.IsEnabled)
                {
                    FilteredItemsRefreshTimer.Interval = TimeSpan.FromMilliseconds(300);
                    FilteredItemsRefreshTimer.Tick    += (s, e) =>
                    {
                        FilteredItems.Refresh();
                        FilteredItemsRefreshTimer.Stop();
                    };
                    FilteredItemsRefreshTimer.Start();
                }
            });

            // 選択項目をSelectedItemに入れる処理
            FilteredItems.CurrentChanged += (s, e) =>
            {
                SelectedItem.Value = FilteredItems.CurrentItem as SelfMemoItem;
            };

            // UseCategoryListはカテゴリリストからなんか選択されてたらTrue
            UseCategoryList = CategoryListSelected.Select(x => !string.IsNullOrEmpty(x)).ToReadOnlyReactivePropertySlim();

            // カテゴリリストのON/OFFを切り替えるタイミングでもカテゴリリストの内容更新
            UseCategoryList.Subscribe(_ =>
            {
                SelfMemoList.UpdateCategoryList();
            });

            // MemoListのコレクションが更新されたらファイルに保存
            MemoList.CollectionChanged += (s, e) =>
            {
                SelfMemoList.SaveMemoFile(MemoList, MemoFileName);
            };

            WindowWidth.Subscribe(_ =>
            {
                ExpanderWidth.Value = Math.Max(400, WindowWidth.Value / 2);
            });
        }