Exemplo n.º 1
0
        private void dataGridViewRecite_CurrentCellChanged(object sender, EventArgs e)
        {
            if (dataGridViewRecite.CurrentCell == null)
            {
                return;
            }
            int     currentRowIndex = dataGridViewRecite.CurrentCell.RowIndex;
            DataRow currentDataRow  = _dtRecite.Rows[currentRowIndex];

            if (currentDataRow.RowState.Equals(DataRowState.Detached))
            {
                return;
            }

            ReciteWordsRequest request = new ReciteWordsRequest();

            request.ClientRequestNo = Guid.NewGuid().ToString("N");
            request.ReciteId        = (long)currentDataRow["Id"];
            List <ReciteWordsDto> reciteWordsDtos = _noodleTokenClient.DoPost(request);

            _dtReciteWords = DataTableHelper.ToDataTable <ReciteWordsDto>(reciteWordsDtos);

            dataGridViewReciteWords.DataSource = _dtReciteWords;
        }
Exemplo n.º 2
0
        private void buttonConfirm_Click(object sender, EventArgs e)
        {
            if (textBoxMemoryLine.Text == null || textBoxMemoryLine.Text.Trim().Length == 0)
            {
                textBoxMemoryLine.Focus();
                throw new ArgumentException("请输入正确的记忆曲线节点信息");
            }
            if (textBoxNumber.Text == null || textBoxNumber.Text.Trim().Length == 0)
            {
                textBoxNumber.Focus();
                throw new ArgumentException("请输入正确的单词数量");
            }

            int wordsNumber = 0;

            if (!int.TryParse(textBoxNumber.Text.Trim(), out wordsNumber))
            {
                textBoxNumber.Focus();
                throw new ArgumentException("请输入正确的单词数量");
            }

            //解析记忆曲线
            string[] memoryLineArray = textBoxMemoryLine.Text.Trim().Split(',');
            if (memoryLineArray.Length < 4)
            {
                textBoxMemoryLine.Focus();
                throw new ArgumentException("请输入正确的记忆曲线节点信息");
            }

            int schedule1 = 0;

            if (!int.TryParse(memoryLineArray[0], out schedule1))
            {
                textBoxMemoryLine.Focus();
                throw new ArgumentException("请输入正确的记忆曲线节点信息");
            }

            int schedule2 = 0;

            if (!int.TryParse(memoryLineArray[1], out schedule2))
            {
                textBoxMemoryLine.Focus();
                throw new ArgumentException("请输入正确的记忆曲线节点信息");
            }

            int schedule3 = 0;

            if (!int.TryParse(memoryLineArray[2], out schedule3))
            {
                textBoxMemoryLine.Focus();
                throw new ArgumentException("请输入正确的记忆曲线节点信息");
            }

            int schedule4 = 0;

            if (!int.TryParse(memoryLineArray[3], out schedule4))
            {
                textBoxMemoryLine.Focus();
                throw new ArgumentException("请输入正确的记忆曲线节点信息");
            }

            //取唯一id
            NoodleIdGeneratorRequest noodleIdGeneratorRequest = new NoodleIdGeneratorRequest();

            noodleIdGeneratorRequest.ClientRequestNo = Guid.NewGuid().ToString("N");
            List <long> ids = _noodleTokenClient.DoPost(noodleIdGeneratorRequest);

            //生成背诵记录
            ReciteAddRequest reciteAddRequest = new ReciteAddRequest();

            reciteAddRequest.ClientRequestNo = Guid.NewGuid().ToString("N");
            reciteAddRequest.Id          = ids[0];
            reciteAddRequest.Comment     = textBoxComment.Text;
            reciteAddRequest.WordsNumber = wordsNumber;
            reciteAddRequest.Schedule1   = schedule1;
            reciteAddRequest.Schedule2   = schedule4;
            reciteAddRequest.Schedule3   = schedule3;
            reciteAddRequest.Schedule4   = schedule4;
            _noodleTokenClient.DoPost(reciteAddRequest);

            //查询生成的结果
            ReciteWordsRequest reciteWordsRequest = new ReciteWordsRequest();

            reciteWordsRequest.ClientRequestNo = Guid.NewGuid().ToString("N");
            reciteWordsRequest.ReciteId        = ids[0];
            List <ReciteWordsDto> reciteWordsDtos = _noodleTokenClient.DoPost(reciteWordsRequest);

            DataTable dtReciteWords = DataTableHelper.ToDataTable <ReciteWordsDto>(reciteWordsDtos);

            dataGridViewReciteWords.DataSource = dtReciteWords;
        }