⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 timeentry.aspx.cs

📁 asp.net办公自动化实例导航——非常经典的OA源代码
💻 CS
📖 第 1 页 / 共 2 页
字号:
			
			if (Requiredfieldvalidator1.IsValid && RequiredFieldValidator2.IsValid && CompareValidator1.IsValid && RangeValidator1.IsValid) 
			{
				BLL.PM.TimeEntry te = new BLL.PM.TimeEntry(0, 
					Convert.ToInt32(UserList.SelectedItem.Value), 
					Convert.ToInt32(ProjectList.SelectedItem.Value),
					Convert.ToInt32(CategoryList.SelectedItem.Value), 
					Convert.ToDateTime(Days.SelectedItem.Value), 
					Description.Text, Convert.ToDecimal(Hours.Text));
				te.Save(); 
				ClearEntryFields();
			}
		}	
		
		private void Cancel_Click(object sender, System.EventArgs e)
		{
			ClearEntryFields();
		}

		private void ProjectList_SelectedIndexChanged(object sender, System.EventArgs e)
		{
			BindCategoryList();
		}

		private void TimeEntryGrid_Itembound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
		{
			if (e.Item.ItemType == ListItemType.EditItem) 
			{
				DropDownList currentCbo = (DropDownList) e.Item.FindControl("EntryDays");
				currentCbo.SelectedIndex = currentCbo.Items.IndexOf(currentCbo.Items.FindByText(_userInput.Day));

				currentCbo = (DropDownList) e.Item.FindControl("EntryProjects");
				currentCbo.SelectedIndex = currentCbo.Items.IndexOf(currentCbo.Items.FindByText(_userInput.ProjectName));

				currentCbo = (DropDownList) e.Item.FindControl("EntryCategories");
				currentCbo.SelectedIndex = currentCbo.Items.IndexOf(currentCbo.Items.FindByText(_userInput.CategoryName));				
			}
		}

		protected void TimeEntryGrid_OnCancel(Object sender, DataGridCommandEventArgs e)
		{
			TimeEntryGrid.EditItemIndex = -1;
			BindTimeSheet(_user.UserID, Convert.ToInt32(UserList.SelectedItem.Value), _weekStartingDate, _weekEndingDate);
		}
		
		protected void TimeEntryGrid_OnDelete(Object sender, DataGridCommandEventArgs e)
		{
			int entryLogID = Convert.ToInt32(TimeEntryGrid.DataKeys[(int)e.Item.ItemIndex]);
			BLL.PM.TimeEntry.Remove(entryLogID);
			BindTimeSheet(_user.UserID, Convert.ToInt32(UserList.SelectedItem.Value), _weekStartingDate, _weekEndingDate);
		}

		protected void TimeEntryGrid_OnEdit(Object sender, DataGridCommandEventArgs e)
		{
			TimeEntryGrid.EditItemIndex = e.Item.ItemIndex;
			_userInput.Day = ((Label) e.Item.FindControl("EntryDay")).Text;
			_userInput.ProjectName = ((Label) e.Item.FindControl("EntryProject")).Text.Trim();
			_userInput.ProjectID = Convert.ToInt32(((Label) e.Item.FindControl("EntryProjectID")).Text);
			_userInput.CategoryName = ((Label) e.Item.FindControl("EntryCategory")).Text.Trim();
			_userInput.Duration = Convert.ToDecimal(((Label) e.Item.FindControl("EntryDuration")).Text);
			_userInput.Description = ((Label) e.Item.FindControl("GridDescription")).Text.Trim();
			BindTimeSheet(_user.UserID, Convert.ToInt32(UserList.SelectedItem.Value), _weekStartingDate, _weekEndingDate);
		}

		protected void TimeEntryGrid_OnUpdate(Object sender, DataGridCommandEventArgs e)
		{
			DataGridItem item = TimeEntryGrid.Items[TimeEntryGrid.EditItemIndex];

			RequiredFieldValidator required = (RequiredFieldValidator) item.FindControl("RequiredFieldValidatorGridHours");
			CompareValidator comparer = (CompareValidator) item.FindControl("CompareValidatorGridHours");

			required.Validate();
			comparer.Validate();
			
			if (required.IsValid && comparer.IsValid) 
			{
				int entryLogID;
				int userID;
				int projectID;
				int categoryID;
				DateTime taskDate;
				string description;
				decimal duration;
				BLL.PM.TimeEntry te = null;

				entryLogID = Convert.ToInt32(TimeEntryGrid.DataKeys[(int)e.Item.ItemIndex]);
				userID = Convert.ToInt32(UserList.SelectedItem.Value);
				projectID = Convert.ToInt32(((DropDownList) e.Item.FindControl("EntryProjects")).SelectedItem.Value);
				categoryID = Convert.ToInt32(((DropDownList) e.Item.FindControl("EntryCategories")).SelectedItem.Value);
				taskDate = Convert.ToDateTime(((DropDownList) e.Item.FindControl("EntryDays")).SelectedItem.Value);
				description = ((TextBox) e.Item.FindControl("EntryDescription")).Text;//TTSecurity.CleanStringRegex(((TextBox) e.Item.FindControl("EntryDescription")).Text);
				duration = Convert.ToDecimal(((TextBox) e.Item.FindControl("EntryHours")).Text);

				te = new BLL.PM.TimeEntry(entryLogID, userID, projectID, categoryID, taskDate, description, duration);
				te.Save();

				TimeEntryGrid.EditItemIndex = -1;
				BindTimeSheet(_user.UserID, Convert.ToInt32(UserList.SelectedItem.Value), _weekStartingDate, _weekEndingDate);
			}
		}

		private void TimeEntryGrid_Sort(object source, System.Web.UI.WebControls.DataGridSortCommandEventArgs e)
		{
			TimeEntryGrid.EditItemIndex = -1;
			SortField = e.SortExpression;
			BindTimeSheet(_user.UserID, Convert.ToInt32(UserList.SelectedItem.Value), _weekStartingDate, _weekEndingDate);
		}

		protected void UserProjects_OnChange(object sender, System.EventArgs e)
		{
			DataGridItem item = TimeEntryGrid.Items[TimeEntryGrid.EditItemIndex];
			
			if (item != null)
			{
				TextBox txt = (TextBox) item.FindControl("EntryHours");
				_userInput.Duration = Convert.ToDecimal(txt.Text);
				
				TextBox txtDesc = (TextBox) item.FindControl("EntryDescription");
				_userInput.Description = txtDesc.Text;

				DropDownList EntryDays = (DropDownList)item.FindControl("EntryDays");
				_userInput.EntryDate = Convert.ToDateTime(EntryDays.SelectedItem.Value);
				_userInput.Day = EntryDays.SelectedItem.Text;

			}
			DropDownList EntryProjects = (DropDownList) sender;
			_userInput.ProjectID = Convert.ToInt32(EntryProjects.SelectedItem.Value);
			_userInput.ProjectName = EntryProjects.SelectedItem.Text;
			BindTimeSheet(_user.UserID, Convert.ToInt32(UserList.SelectedItem.Value), _weekStartingDate, _weekEndingDate);
		}
		
		private void UserList_OnChange(object sender, System.EventArgs e)
		{
			TimeEntryGrid.EditItemIndex = -1;
			BindTimeSheet(_user.UserID, Convert.ToInt32(UserList.SelectedItem.Value), _weekStartingDate, _weekEndingDate);
			BindEntryFields();
		}

		private void WeekEnding_TextChanged(object sender, System.EventArgs e)
		{
			TimeEntryGrid.EditItemIndex = -1;
			BLL.PM.TimeEntry.FillCorrectStartEndDates(Convert.ToDateTime(WeekEnding.Text), 
				ref _weekStartingDate, ref _weekEndingDate);
			WeekEnding.Text = _weekEndingDate.ToShortDateString();
			BindEntryFields();
			BindTimeSheet(_user.UserID, Convert.ToInt32(UserList.SelectedItem.Value), _weekStartingDate, _weekEndingDate);
		}

		private void BranchDropList_SelectedIndexChanged(object sender, System.EventArgs e)
		{
			AdminDB admin = new AdminDB();
			DepartmentDropList.DataSource=admin.GetDepByBranch(Int32.Parse(BranchDropList.SelectedItem.Value));
			DepartmentDropList.DataBind();
			if(DepartmentDropList.Items.Count !=0)
			{
				UserList.DataSource = PMUser.GetUsers(_user.UserID, _user.Role,Int32.Parse(DepartmentDropList.SelectedItem.Value));
				UserList.DataBind();
				UserList.Items[0].Selected = true;
				TimeEntryGrid.EditItemIndex = -1;
				BindTimeSheet(_user.UserID, Convert.ToInt32(UserList.SelectedItem.Value), _weekStartingDate, _weekEndingDate);
				BindEntryFields();
			}
			else
			{
				BindTimeSheet(_user.UserID, 0, _weekStartingDate, _weekEndingDate);
				UserList.Items.Clear();
				ProjectList.Items.Clear();
			}
		}

		private void DepartmentDropList_SelectedIndexChanged(object sender, System.EventArgs e)
		{
			if(DepartmentDropList.Items.Count !=0)
			{
				UserList.DataSource = PMUser.GetUsers(_user.UserID, _user.Role,Int32.Parse(DepartmentDropList.SelectedItem.Value));
				UserList.DataBind();
				UserList.Items[0].Selected = true;
				TimeEntryGrid.EditItemIndex = -1;
				BindTimeSheet(_user.UserID, Convert.ToInt32(UserList.SelectedItem.Value), _weekStartingDate, _weekEndingDate);
				BindEntryFields();
			}
			else
			{
				BindTimeSheet(_user.UserID, 0, _weekStartingDate, _weekEndingDate);
				UserList.Items.Clear();
				ProjectList.Items.Clear();
			}
		}

		string SortField 
		{
			get 
			{
				object o = ViewState["SortField"];
				if (o == null) 
				{
					return String.Empty;
				}
				return (string)o;
			}

			set 
			{
				if (value == SortField) 
				{
					SortAscending = !SortAscending;
				}
				ViewState["SortField"] = value;
			}
		}

		bool SortAscending 
		{
			get 
			{
				object o = ViewState["SortAscending"];
				if (o == null) 
				{
					return true;
				}
				return (bool)o;
			}

			set 
			{
				ViewState["SortAscending"] = value;
			}
		}
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -