您的位置:首页 > 其它

使用GirdView展现MOSS自定义列表

2008-10-30 22:20 447 查看
前台展现代码:

class DealProjectItems

1 using System;

2 using System.Collections;

3 using System.Configuration;

4 using System.Data;

5 using System.Data.SqlClient;

6 using System.Web;

7 using System.Web.Security;

8 using System.Web.UI;

9 using System.Web.UI.HtmlControls;

10 using System.Web.UI.WebControls;

11 using System.Web.UI.WebControls.WebParts;

12

13 using Microsoft.SharePoint;

14

15 namespace ProjectManager.MyUserControl.DealItems

16 {

17 public partial class DealProjectItems : System.Web.UI.UserControl

18 {

19 /// <summary>

20 /// 待批项目记录

21 /// </summary>

22 private DataTable DealItems;

23

24 protected void Page_Load(object sender, EventArgs e)

25 {

26 ///判断当前用户是否是项目总监和站点集管理员

27 if (SPContext.Current.Web.CurrentUser.IsSiteAdmin || this.IsMajordomo(SPContext.Current.Web.CurrentUser))

28 {

29 //显示待办项目

30 this.PanelDealProjectMain.Visible = true;

31 this.InitDealItemsColumns();

32 this.InitDealItemsData();

33 if (this.DealItems.Rows.Count > 0)

34 {

35 this.Lable_ProjectMessage.Visible = false;

36 this.GridViewDealProjectItems.DataSource = this.DealItems.DefaultView;

37 }

38 else

39 {

40 //显示提示信息

41 this.Lable_ProjectMessage.Visible = true;

42 }

43 this.GridViewDealProjectItems.DataBind();

44 }

45 else

46 {

47 //隐藏待办项目

48 this.PanelDealProjectMain.Visible = false;

49 }

50 }

51

52 /// <summary>

53 /// 初始化列

54 /// </summary>

55 private void InitDealItemsColumns()

56 {

57 if (this.DealItems == null)

58 {

59 this.DealItems = new DataTable();

60 this.DealItems.Columns.Add("ID");

61 this.DealItems.Columns.Add("项目名称");

62 this.DealItems.Columns.Add("项目编号");

63 this.DealItems.Columns.Add("行业");

64 this.DealItems.Columns.Add("项目类别");

65 this.DealItems.Columns.Add("地区省");

66 this.DealItems.Columns.Add("地区市");

67 this.DealItems.Columns.Add("项目负责人");

68 this.DealItems.Columns.Add("审批状态");

69 this.DealItems.Columns.Add("项目优先级");

70 }

71

72 }

73

74 /// <summary>

75 /// 初始化数据

76 /// </summary>

77 private void InitDealItemsData()

78 {

79 SPSecurity.RunWithElevatedPrivileges(delegate()

80 {

81 SPSite site = new SPSite(SPContext.Current.Site.Url);

82 SPWeb projectWeb = site.AllWebs[SPContext.Current.Web.ID];

83 SPList projectList = projectWeb.Lists["项目站点"];

84

85 SPField projectManagerField = projectList.Fields["项目负责人"];

86

87 foreach (SPListItem item in projectList.Items)

88 {

89 if (!item["审批状态"].ToString().Equals("0"))

90 {

91 DataRow row = this.DealItems.Rows.Add(new object[0]);

92 row["ID"] = item["ID"].ToString();

93 row["项目名称"] = item["项目名称"].ToString();

94 row["项目编号"] = item["项目编号"].ToString();

95 row["行业"] = item["行业"].ToString();

96 row["项目类别"] = item["项目类别"].ToString().Substring(item["项目类别"].ToString().IndexOf('_') + 1);

97 row["地区省"] = item["地区省"].ToString();

98 row["地区市"] = item["地区市"].ToString().Substring(item["地区市"].ToString().IndexOf('_') + 1);

99 row["项目负责人"] = ((SPFieldUserValue)projectManagerField.GetFieldValue(item["项目负责人"].ToString())).User.Name;

100

101 if (item["审批状态"].ToString().Equals("1"))

102 row["审批状态"] = "已拒绝";

103 else if (item["审批状态"].ToString().Equals("2"))

104 row["审批状态"] = "待定";

105

106 row["项目优先级"] = item["项目优先级"].ToString();

107 }

108 }

109 });

110 }

111

112 /// <summary>

113 /// 是否是项目总监

114 /// </summary>

115 /// <param name="currentUser">当前登陆用户</param>

116 /// <returns></returns>

117 private bool IsMajordomo(SPUser currentUser)

118 {

119 bool result = false;

120

121 SPSecurity.RunWithElevatedPrivileges(delegate()

122 {

123 SPSite site = new SPSite(currentUser.ParentWeb.Site.Url);

124 SPWeb projectWeb = site.AllWebs["ProjectManagement"];

125 SPGroup majordomoGroup = projectWeb.SiteGroups["项目总监"];

126 if (majordomoGroup != null)

127 {

128 foreach (SPUser user in majordomoGroup.Users)

129 {

130 if (user.LoginName.Equals(currentUser.LoginName))

131 {

132 result = true;

133 break;

134 }

135 }

136 }

137

138 });

139

140 return result;

141 }

142

143 }

144 }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐