您的位置:首页 > 运维架构 > 网站架构

简单快速开发C\S架构程序用最简单的不分层最快的效率达到功能要求的例子程序FrmCommentEdit 编辑评论的功能实现

2012-09-02 18:45 986 查看


评论编辑时,用了最少的参数Id,来定位唯一评论,同时界面上显示了,谁创建的评论,谁最后修改的评论,进行责任明确。同时加了一个已处理标志来实现,这个事情是否已经搞定处理好了?还是还没处理好?还需要其他人员沟通协调的,还是这个评论是在代办事列里?这个评论是否被其他人修改过等等。

1 //--------------------------------------------------------------------
2 // All Rights Reserved , Copyright (C) 2012 , Hairihan TECH, Ltd.
3 //--------------------------------------------------------------------
4
5 using System;
6 using System.Data;
7 using System.Windows.Forms;
8
9 namespace DotNet.WinForm
10 {
11 using DotNet.Business;
12 using DotNet.Utilities;
13
14 /// <summary>
15 /// FrmCommentEdit.cs
16 /// 修改评论
17 ///
18 /// 修改记录
19 ///
20 /// 2012.08.26 版本:1.0 JiRiGaLa 修改功能页面编写。
21 ///
22 /// 版本:1.0
23 ///
24 /// <author>
25 /// <name>JiRiGaLa</name>
26 /// <date>2012.08.26</date>
27 /// </author>
28 /// </summary>
29 public partial class FrmCommentEdit : BaseForm
30 {
31 public FrmCommentEdit()
32 {
33 InitializeComponent();
34 }
35
36 public FrmCommentEdit(string id)
37 : this()
38 {
39 this.EntityId = id;
40 }
41
42 #region public override void ShowEntity() 显示内容
43 /// <summary>
44 /// 显示内容
45 /// </summary>
46 public override void ShowEntity()
47 {
48 // 获取数据
49 SQLBuilder sqlBuilder = new SQLBuilder(this.UserCenterDbHelper);
50 sqlBuilder.BeginSelect(BaseCommentEntity.TableName);
51 sqlBuilder.SetWhere(BaseCommentEntity.FieldId, this.EntityId);
52 DataTable dtComment = sqlBuilder.EndSelect();
53 // 显示信息
54 BaseCommentEntity commentEntity = new BaseCommentEntity(dtComment);
55 this.txtComment.Text = commentEntity.Contents;
56 this.chkWorked.Checked = commentEntity.Worked == 1;
57 this.txtCreateBy.Text = commentEntity.CreateBy;
58 if (commentEntity.CreateOn.HasValue)
59 {
60 this.txtCreateOn.Text = ((DateTime)commentEntity.CreateOn).ToString(BaseSystemInfo.DateTimeFormat);
61 }
62 if (!string.IsNullOrEmpty(commentEntity.ModifiedBy))
63 {
64 this.txtModifiedBy.Text = commentEntity.ModifiedBy;
65 if (commentEntity.ModifiedOn.HasValue)
66 {
67 this.txtModifiedOn.Text = ((DateTime)commentEntity.ModifiedOn).ToString(BaseSystemInfo.DateTimeFormat);
68 }
69 }
70 }
71 #endregion
72
73 #region public override void FormOnLoad() 加载窗体
74 /// <summary>
75 /// 加载窗体
76 /// </summary>
77 public override void FormOnLoad()
78 {
79 // 显示实体
80 this.ShowEntity();
81 }
82 #endregion
83
84 #region public override bool SaveEntity() 保存
85 /// <summary>
86 /// 保存
87 /// </summary>
88 /// <returns>保存成功</returns>
89 public override bool SaveEntity()
90 {
91 bool returnValue = false;
92 SQLBuilder sqlBuilder = new SQLBuilder(this.UserCenterDbHelper);
93 sqlBuilder.BeginUpdate(BaseCommentEntity.TableName);
94 sqlBuilder.SetValue(BaseCommentEntity.FieldContents, this.txtComment.Text);
95 sqlBuilder.SetValue(BaseCommentEntity.FieldWorked, this.chkWorked.Checked ? 1 : 0);
96 sqlBuilder.SetValue(BaseCommentEntity.FieldModifiedUserId, this.UserInfo.Id);
97 sqlBuilder.SetValue(BaseCommentEntity.FieldModifiedBy, this.UserInfo.RealName);
98 sqlBuilder.SetDBNow(BaseCommentEntity.FieldModifiedOn);
99 sqlBuilder.SetWhere(BaseCommentEntity.FieldId, this.EntityId);
returnValue = sqlBuilder.EndUpdate() > 0;
return returnValue;
}
#endregion

#region public override bool CheckInput() 检查输入的有效性
/// <summary>
/// 检查输入的有效性
/// </summary>
/// <returns>有效</returns>
public override bool CheckInput()
{
bool returnValue = true;
this.txtComment.Text = this.txtComment.Text.TrimEnd();
if (string.IsNullOrEmpty(this.txtComment.Text))
{
MessageBox.Show(AppMessage.Format(AppMessage.MSG0007, AppMessage.MSG9984), AppMessage.MSG0000, MessageBoxButtons.OK, MessageBoxIcon.Information);
this.txtComment.Focus();
return false;
}
return returnValue;
}
#endregion

#region private void ClearForm()
/// <summary>
/// 清除窗体
/// </summary>
private void ClearForm()
{
this.txtComment.Text = string.Empty;
this.txtComment.Focus();
}
#endregion

#region private void AddComment(bool close)
/// <summary>
/// 保存评论
/// </summary>
/// <param name="close">关闭窗体</param>
private void AddComment(bool close)
{
// 检查输入的有效性
if (this.CheckInput())
{
// 设置鼠标繁忙状态,并保留原先的状态
Cursor holdCursor = this.Cursor;
this.Cursor = Cursors.WaitCursor;
try
{
if (this.SaveEntity())
{
// 数据发生了变化
this.Changed = true;
if (close)
{
this.DialogResult = DialogResult.OK;
// 关闭窗口
this.Close();
}
else
{
this.ClearForm();
}
}
}
catch (Exception ex)
{
this.ProcessException(ex);
}
finally
{
// 设置鼠标默认状态,原来的光标状态
this.Cursor = holdCursor;
}
}
}
#endregion

private void btnSave_Click(object sender, EventArgs e)
{
this.AddComment(true);
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐