using System; using System.Linq; using Model; using BLL; using System.Collections.Generic; namespace FineUIPro.Web.HSSE.EduTrain { public partial class CompanyTrainingItemSave : PageBase { #region 定义变量 /// /// 主键 /// public string CompanyTrainingItemId { get { return (string)ViewState["CompanyTrainingItemId"]; } set { ViewState["CompanyTrainingItemId"] = value; } } /// /// 主表主键 /// public string CompanyTrainingId { get { return (string)ViewState["CompanyTrainingId"]; } set { ViewState["CompanyTrainingId"] = value; } } #endregion #region 加载页面 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { this.GetButtonPower(); btnClose.OnClientClick = ActiveWindow.GetHideReference(); BoundTree(treeTestTraining.Nodes, "0"); this.CompanyTrainingItemId = Request.QueryString["CompanyTrainingItemId"]; this.CompanyTrainingId = Request.QueryString["CompanyTrainingId"]; if (!string.IsNullOrEmpty(this.CompanyTrainingItemId)) { var q = CompanyTrainingItemService.GetCompanyTrainingItemById(this.CompanyTrainingItemId); if (q != null) { this.CompanyTrainingId = q.CompanyTrainingId; txtCompanyTrainingItemCode.Text = q.CompanyTrainingItemCode; txtCompanyTrainingItemName.Text = q.CompanyTrainingItemName; txtCompileMan.Text = q.CompileMan; hdCompileMan.Text = q.CompileMan; if (!string.IsNullOrEmpty(q.TestTrainingIds)) { ddTestTraining.Values = q.TestTrainingIds.Split(','); string text = ""; var trains = Funs.DB.Training_TestTraining.ToList(); foreach (var ids in ddTestTraining.Values) { var t = trains.FirstOrDefault(x => x.TrainingId == ids); if (t != null) { text += "[" + t.TrainingCode + "]" + t.TrainingName + ","; } } ddTestTraining.Text = text.TrimEnd(new char[] { ',' }); } if (q.LearningTime.HasValue) { txtLearningTime.Text = (q.LearningTime.Value / 60).ToString(); } if (q.CompileDate != null) { txtCompileDate.Text = string.Format("{0:yyyy-MM-dd}", q.CompileDate); } } } else { var cTraining = BLL.CompanyTrainingService.GetCompanyTrainingById(this.CompanyTrainingId); if (cTraining != null) { txtCompileMan.Text = this.CurrUser.UserName; hdCompileMan.Text = this.CurrUser.UserName; this.txtCompanyTrainingItemName.Text = cTraining.CompanyTrainingName; this.txtCompanyTrainingItemCode.Text = SQLHelper.RunProcNewId("SpGetNewCode3", "Training_CompanyTrainingItem", "CompanyTrainingItemCode", cTraining.CompanyTrainingCode + "-"); txtCompileDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now); } } } } #endregion private List GetNewTraining(string parentId) { return (from x in Funs.DB.Training_TestTraining where x.SupTrainingId == parentId orderby x.TrainingCode select x).ToList(); } private void BoundTree(TreeNodeCollection nodes, string parentId) { var dt = GetNewTraining(parentId); if (dt.Count() > 0) { TreeNode tn = null; foreach (var dr in dt) { string name = dr.TrainingName; if (!string.IsNullOrEmpty(dr.TrainingCode)) { name = "[" + dr.TrainingCode + "]" + dr.TrainingName; } tn = new TreeNode { Text = name, NodeID = dr.TrainingId, EnableClickEvent = true, ToolTip = dr.TrainingName }; nodes.Add(tn); ///是否存在下级节点 var sup = Funs.DB.Training_TestTraining.FirstOrDefault(x => x.SupTrainingId == tn.NodeID); if (sup != null) { BoundTree(tn.Nodes, tn.NodeID); } } } } #region 保存 /// /// 保存数据 /// private void SaveData(bool isClose) { Model.Training_CompanyTrainingItem newCompanyTrainItem = new Training_CompanyTrainingItem { CompanyTrainingItemCode = this.txtCompanyTrainingItemCode.Text.Trim(), CompanyTrainingItemName = this.txtCompanyTrainingItemName.Text.Trim(), CompileMan = hdCompileMan.Text.Trim() }; if (ddTestTraining.Values != null && ddTestTraining.Values.Length > 0) { newCompanyTrainItem.TestTrainingIds = string.Join(",", ddTestTraining.Values); } if (!string.IsNullOrEmpty(txtLearningTime.Text)) { newCompanyTrainItem.LearningTime = int.Parse(txtLearningTime.Text) * 60; } if (!string.IsNullOrEmpty(txtCompileDate.Text.Trim())) { newCompanyTrainItem.CompileDate = Convert.ToDateTime(txtCompileDate.Text.Trim()); } if (!string.IsNullOrEmpty(this.CompanyTrainingItemId)) { newCompanyTrainItem.CompanyTrainingItemId = this.CompanyTrainingItemId; BLL.CompanyTrainingItemService.UpdateCompanyTrainingItem(newCompanyTrainItem); BLL.LogService.AddSys_Log(this.CurrUser, newCompanyTrainItem.CompanyTrainingItemCode, newCompanyTrainItem.CompanyTrainingItemId,BLL.Const.CompanyTrainingMenuId,BLL.Const.BtnModify); } else { newCompanyTrainItem.CompanyTrainingId = this.CompanyTrainingId; this.CompanyTrainingItemId = SQLHelper.GetNewID(typeof(Model.Training_CompanyTrainingItem)); newCompanyTrainItem.CompanyTrainingItemId = this.CompanyTrainingItemId; BLL.CompanyTrainingItemService.AddCompanyTrainingItem(newCompanyTrainItem); BLL.LogService.AddSys_Log(this.CurrUser, newCompanyTrainItem.CompanyTrainingItemCode, newCompanyTrainItem.CompanyTrainingItemId, BLL.Const.CompanyTrainingMenuId, BLL.Const.BtnAdd); } if (isClose) { PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference()); } } /// /// 保存按钮 /// /// /// protected void btnSave_Click(object sender, EventArgs e) { SaveData(true); } #endregion #region 验证教材名称是否存在 /// /// 验证教材名称是否存在 /// /// /// protected void TextBox_TextChanged(object sender, EventArgs e) { var q = Funs.DB.Training_CompanyTrainingItem.FirstOrDefault(x => x.CompanyTrainingId == this.CompanyTrainingId && x.CompanyTrainingItemName == this.txtCompanyTrainingItemName.Text.Trim() && (x.CompanyTrainingItemId != this.CompanyTrainingItemId || (this.CompanyTrainingItemId == null && x.CompanyTrainingItemId != null))); if (q != null) { ShowNotify("输入的教材名称已存在!", MessageBoxIcon.Warning); } } #endregion #region 上传附件资源 /// /// 上传附件资源 /// /// /// protected void btnUploadResources_Click(object sender, EventArgs e) { if (this.btnSave.Hidden) { PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("~/AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/CompanyTraining&menuId={1}&type=-1", CompanyTrainingItemId, BLL.Const.CompanyTrainingMenuId))); } else { if (string.IsNullOrEmpty(this.CompanyTrainingItemId)) { SaveData(false); } PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("~/AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/CompanyTraining&menuId={1}", CompanyTrainingItemId, BLL.Const.CompanyTrainingMenuId))); } } #endregion #region 按钮权限 /// /// 获取按钮权限 /// /// /// private void GetButtonPower() { if (Request.Params["value"] == "0") { return; } var buttonList = BLL.CommonService.GetAllButtonList(this.CurrUser.LoginProjectId, this.CurrUser.UserId, BLL.Const.CompanyTrainingMenuId); if (buttonList.Count() > 0) { if (buttonList.Contains(BLL.Const.BtnSave)) { this.btnSave.Hidden = false; } } } #endregion } }