394 lines
		
	
	
		
			17 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			394 lines
		
	
	
		
			17 KiB
		
	
	
	
		
			C#
		
	
	
	
| using BLL;
 | |
| using Newtonsoft.Json.Linq;
 | |
| using System;
 | |
| using System.Collections.Generic;
 | |
| using System.Linq;
 | |
| 
 | |
| namespace FineUIPro.Web.Opinion
 | |
| {
 | |
|     public partial class OpinionCollectionEdit : PageBase
 | |
|     {
 | |
|         #region 定义变量
 | |
|         /// <summary>
 | |
|         /// 主键
 | |
|         /// </summary>
 | |
|         public string OpinionCollectionId
 | |
|         {
 | |
|             get
 | |
|             {
 | |
|                 return (string)ViewState["OpinionCollectionId"];
 | |
|             }
 | |
|             set
 | |
|             {
 | |
|                 ViewState["OpinionCollectionId"] = value;
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 主键
 | |
|         /// </summary>
 | |
|         public string ProjectId
 | |
|         {
 | |
|             get
 | |
|             {
 | |
|                 return (string)ViewState["ProjectId"];
 | |
|             }
 | |
|             set
 | |
|             {
 | |
|                 ViewState["ProjectId"] = value;
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 状态
 | |
|         /// </summary>
 | |
|         public string State
 | |
|         {
 | |
|             get
 | |
|             {
 | |
|                 return (string)ViewState["State"];
 | |
|             }
 | |
|             set
 | |
|             {
 | |
|                 ViewState["State"] = value;
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 定义集合
 | |
|         /// </summary>
 | |
|         private static List<Model.View_Opinion_OpinionCollectionApprove> approveLists = new List<Model.View_Opinion_OpinionCollectionApprove>();
 | |
|         #endregion
 | |
| 
 | |
|         #region 加载页面
 | |
|         /// <summary>
 | |
|         /// 加载页面
 | |
|         /// </summary>
 | |
|         /// <param name="sender"></param>
 | |
|         /// <param name="e"></param>
 | |
|         protected void Page_Load(object sender, EventArgs e)
 | |
|         {
 | |
|             if (!IsPostBack)
 | |
|             {
 | |
|                 this.btnClose.OnClientClick = ActiveWindow.GetHidePostBackReference();
 | |
|                 this.ProjectId = this.CurrUser.LoginProjectId;
 | |
| 
 | |
|                 BLL.UnitService.InitUnitByProjectIdUnitTypeDropDownList1(this.drpUnitId, this.ProjectId, true);
 | |
|                 BLL.UserService.InitUserDropDownList(this.drpCompileMan, this.ProjectId, true);
 | |
|                 BLL.ConstValue.InitConstNameDropDownList(this.drpProblemClass, "MenuType_P", true);
 | |
|                 BLL.ProjectUserService.InitProjectUserRoleIdDropDownList(this.drpAuditRoleId, this.ProjectId, false);
 | |
|                 this.drpAuditRoleId.SelectedValue = BLL.Const.QAManager;
 | |
|                 BLL.UserService.InitUserByRoleIdDropDownList(this.drpAudit, this.ProjectId, this.drpAuditRoleId.SelectedValue, false);
 | |
| 
 | |
|                 this.OpinionCollectionId = Request.Params["opinionCollectionId"];
 | |
|                 var opinionCollection = OpinionCollectionService.GetOpinionCollectionById(this.OpinionCollectionId);
 | |
|                 if (opinionCollection != null)
 | |
|                 {
 | |
|                     this.State = opinionCollection.State.Trim();
 | |
|                     this.ProjectId = opinionCollection.ProjectId;
 | |
|                     this.txtOpinion.Text = opinionCollection.Opinion;
 | |
|                     if (!string.IsNullOrEmpty(opinionCollection.CompileMan))
 | |
|                     {
 | |
|                         this.drpCompileMan.SelectedValue = opinionCollection.CompileMan;
 | |
|                     }
 | |
|                     this.txtCompileDate.Text = opinionCollection.CompileDate.HasValue ? string.Format("{0:yyyy-MM-dd}", opinionCollection.CompileDate) : "";
 | |
|                     if (!string.IsNullOrEmpty(opinionCollection.RoleId))
 | |
|                     {
 | |
|                         this.hdRoleId.Text = opinionCollection.RoleId;
 | |
|                         this.txtRole.Text = BLL.RoleService.getRoleNamesRoleIds(opinionCollection.RoleId);
 | |
|                     }
 | |
|                     if (!string.IsNullOrEmpty(opinionCollection.UnitId))
 | |
|                     {
 | |
|                         this.drpUnitId.SelectedValue = opinionCollection.UnitId;
 | |
|                     }
 | |
|                     if (!string.IsNullOrEmpty(opinionCollection.ProblemClass))
 | |
|                     {
 | |
|                         this.drpProblemClass.SelectedValue = opinionCollection.ProblemClass;
 | |
|                     }
 | |
| 
 | |
|                     #region 加载核实人角色、核实人
 | |
|                     var approveList = BLL.OpinionCollectionApproveService.GetApproveListByOpinionCollectionId(this.OpinionCollectionId);
 | |
|                     if (approveList.Count > 0)
 | |
|                     {
 | |
|                         var app = approveList.FirstOrDefault(x => x.ApproveDate == null && x.ApproveMan != this.CurrUser.UserId);
 | |
|                         if (app != null)
 | |
|                         {
 | |
|                             this.drpAuditRoleId.SelectedValue = app.ApproveManRoleId;
 | |
| 
 | |
|                             this.drpAudit.Items.Clear();
 | |
|                             BLL.UserService.InitUserByRoleIdDropDownList(this.drpAudit, this.ProjectId, this.drpAuditRoleId.SelectedValue, false);
 | |
|                             this.drpAudit.SelectedValue = app.ApproveMan;
 | |
|                         }
 | |
|                     }
 | |
|                     #endregion
 | |
|                     //加载审批流程
 | |
|                     approveLists = BLL.OpinionCollectionApproveService.getViewApproveLists(this.OpinionCollectionId);
 | |
|                     if (approveLists.Count > 0)
 | |
|                     {
 | |
|                         this.Grid1.Hidden = false;
 | |
|                         this.Grid1.DataSource = approveLists;
 | |
|                         this.Grid1.DataBind();
 | |
|                     }
 | |
|                     else
 | |
|                     {
 | |
|                         this.Grid1.Hidden = true;
 | |
|                     }
 | |
|                 }
 | |
|                 else
 | |
|                 {
 | |
|                     this.Grid1.Hidden = true;
 | |
|                     //this.agree.Hidden = true;
 | |
|                     this.options.Hidden = true;
 | |
|                     this.nextStep.Hidden = true;
 | |
|                     if (!string.IsNullOrEmpty(this.CurrUser.UserId))
 | |
|                     {
 | |
|                         var user = BLL.UserService.GetUserByUserId(this.CurrUser.UserId);
 | |
|                         if (user != null)
 | |
|                         {
 | |
|                             this.drpCompileMan.SelectedValue = this.CurrUser.UserId;
 | |
|                             //this.drpRoleId.SelectedValue = user.RoleId;
 | |
|                             this.drpUnitId.SelectedValue = user.UnitId;
 | |
|                             var projectUser = BLL.ProjectUserService.GetCurrProjectUserByUserId(this.CurrUser.UserId);
 | |
|                             if (projectUser != null)
 | |
|                             {
 | |
|                                 if (!string.IsNullOrEmpty(projectUser.RoleId))
 | |
|                                 {
 | |
|                                     this.hdRoleId.Text = projectUser.RoleId;
 | |
|                                     this.txtRole.Text = BLL.RoleService.getRoleNamesRoleIds(projectUser.RoleId);
 | |
|                                 }
 | |
|                             }
 | |
|                         }
 | |
|                     }
 | |
|                     this.txtCompileDate.Text = string.Format("{0:yyyy-MM-dd}", DateTime.Now);
 | |
|                 }
 | |
|                 if (this.State == BLL.Const.State_0)
 | |
|                 {
 | |
|                     //this.agree.Hidden = true;
 | |
|                     this.options.Hidden = true;
 | |
|                     this.nextStep.Hidden = true;
 | |
|                 }
 | |
|                 else
 | |
|                 {
 | |
|                     var approveList = BLL.OpinionCollectionApproveService.GetApproveListByOpinionCollectionId(this.OpinionCollectionId);
 | |
|                     if (approveList.Count > 0)
 | |
|                     {
 | |
|                         var app = approveList.FirstOrDefault(x => x.ApproveDate == null && x.ApproveMan == this.CurrUser.UserId);
 | |
|                         if (app != null)
 | |
|                         {
 | |
|                             //agree.Hidden = false;
 | |
|                             options.Hidden = false;
 | |
|                             this.nextStep.Hidden = false;
 | |
|                         }
 | |
|                         else
 | |
|                         {
 | |
|                             //agree.Hidden = true;
 | |
|                             options.Hidden = true;
 | |
|                             nextStep.Hidden = true;
 | |
|                             this.btnSubmit.Hidden = true;
 | |
|                             this.btnSave.Hidden = true;
 | |
|                         }
 | |
|                     }
 | |
|                 }
 | |
|             }
 | |
|         }
 | |
|         #endregion
 | |
| 
 | |
|         #region 提交按钮
 | |
|         /// <summary>
 | |
|         /// 提交按钮
 | |
|         /// </summary>
 | |
|         /// <param name="sender"></param>
 | |
|         /// <param name="e"></param>
 | |
|         protected void btnSubmit_Click(object sender, EventArgs e)
 | |
|         {
 | |
|             this.SaveData(BLL.Const.BtnSubmit);
 | |
|             PageContext.RegisterStartupScript(ActiveWindow.GetHideRefreshReference());
 | |
|         }
 | |
|         #endregion
 | |
| 
 | |
|         #region 保存按钮
 | |
|         /// <summary>
 | |
|         /// 保存按钮
 | |
|         /// </summary>
 | |
|         /// <param name="sender"></param>
 | |
|         /// <param name="e"></param>
 | |
|         protected void btnSave_Click(object sender, EventArgs e)
 | |
|         {
 | |
|             this.SaveData(BLL.Const.BtnSave);
 | |
|             PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
 | |
|         }
 | |
|         #endregion
 | |
| 
 | |
|         #region 保存方法
 | |
|         /// <summary>
 | |
|         /// 保存数据
 | |
|         /// </summary>
 | |
|         /// <param name="type"></param>
 | |
|         private void SaveData(string type)
 | |
|         {
 | |
|             Model.Opinion_OpinionCollection opinionCollection = new Model.Opinion_OpinionCollection
 | |
|             {
 | |
|                 ProjectId = this.ProjectId,
 | |
|                 Opinion = this.txtOpinion.Text.Trim(),
 | |
|                 CompileDate = Funs.GetNewDateTime(this.txtCompileDate.Text.Trim()),
 | |
|                 RoleId = this.hdRoleId.Text.Trim()
 | |
|             };
 | |
|             if (this.drpUnitId.SelectedValue != BLL.Const._Null)
 | |
|             {
 | |
|                 opinionCollection.UnitId = this.drpUnitId.SelectedValue;
 | |
|             }
 | |
|             if (this.drpProblemClass.SelectedValue != BLL.Const._Null)
 | |
|             {
 | |
|                 opinionCollection.ProblemClass = this.drpProblemClass.SelectedValue;
 | |
|             }
 | |
|             ////单据状态
 | |
|             opinionCollection.State = BLL.Const.State_0.Trim();
 | |
|             if (!string.IsNullOrEmpty(this.OpinionCollectionId))
 | |
|             {
 | |
|                 opinionCollection.OpinionCollectionId = this.OpinionCollectionId;
 | |
|                 BLL.OpinionCollectionService.UpdateOpinionCollection(opinionCollection);
 | |
|             }
 | |
|             else
 | |
|             {
 | |
|                 opinionCollection.CompileMan = this.CurrUser.UserId;
 | |
|                 opinionCollection.OpinionCollectionId = SQLHelper.GetNewID(typeof(Model.Opinion_OpinionCollection));
 | |
|                 this.OpinionCollectionId = opinionCollection.OpinionCollectionId;               
 | |
|                 BLL.OpinionCollectionService.AddOpinionCollection(opinionCollection);
 | |
|             }
 | |
| 
 | |
|             if (type == Const.BtnSubmit)
 | |
|             {
 | |
|                 var approves = BLL.OpinionCollectionApproveService.GetApproveListByOpinionCollectionId(this.OpinionCollectionId);
 | |
|                 if (approves.Count == 0)
 | |
|                 {
 | |
|                     if (this.CurrUser.UserId == this.drpCompileMan.SelectedValue)
 | |
|                     {
 | |
|                         Model.Opinion_OpinionCollectionApprove newApprove = new Model.Opinion_OpinionCollectionApprove();
 | |
|                         newApprove.OpinionCollectionApproveId = SQLHelper.GetNewID(typeof(Model.Opinion_OpinionCollectionApprove));
 | |
|                         newApprove.OpinionCollectionId = this.OpinionCollectionId;
 | |
|                         if (this.drpAuditRoleId.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpAuditRoleId.SelectedValue))
 | |
|                         {
 | |
|                             newApprove.ApproveManRoleId = this.drpAuditRoleId.SelectedValue;
 | |
|                         }
 | |
|                         if (this.drpAudit.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpAudit.SelectedValue))
 | |
|                         {
 | |
|                             newApprove.ApproveMan = this.drpAudit.SelectedValue;
 | |
|                         }
 | |
|                         BLL.OpinionCollectionApproveService.AddOpinionCollectionApprove(newApprove);
 | |
|                     }
 | |
|                 }
 | |
|                 else
 | |
|                 {
 | |
|                     var approve = approves.Where(x => x.ApproveDate == null && x.ApproveMan == this.CurrUser.UserId).FirstOrDefault();
 | |
|                     if (approve != null)
 | |
|                     {
 | |
|                         approve.ApproveDate = DateTime.Now;
 | |
|                         //if (rblIsAgree.SelectedValue == "true")
 | |
|                         //{
 | |
|                         //    approve.IsAgree = true;
 | |
|                         //}
 | |
|                         //else
 | |
|                         //{
 | |
|                         //    approve.IsAgree = false;
 | |
|                         //}
 | |
|                         approve.ApproveIdea = this.txtidea.Text.Trim();
 | |
|                         BLL.OpinionCollectionApproveService.UpdateOpinionCollectionApprove(approve);
 | |
| 
 | |
|                         if (this.drpNextStep.SelectedValue == "下一步")
 | |
|                         {
 | |
|                             Model.Opinion_OpinionCollectionApprove newApprove = new Model.Opinion_OpinionCollectionApprove();
 | |
|                             newApprove.OpinionCollectionApproveId = SQLHelper.GetNewID(typeof(Model.Opinion_OpinionCollectionApprove));
 | |
|                             newApprove.OpinionCollectionId = this.OpinionCollectionId;
 | |
|                             if (this.drpAuditRoleId.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpAuditRoleId.SelectedValue))
 | |
|                             {
 | |
|                                 newApprove.ApproveManRoleId = this.drpAuditRoleId.SelectedValue;
 | |
|                             }
 | |
|                             if (this.drpAudit.SelectedValue != BLL.Const._Null && !string.IsNullOrEmpty(this.drpAudit.SelectedValue))
 | |
|                             {
 | |
|                                 newApprove.ApproveMan = this.drpAudit.SelectedValue;
 | |
|                             }
 | |
|                             BLL.OpinionCollectionApproveService.AddOpinionCollectionApprove(newApprove);
 | |
|                         }
 | |
|                     }
 | |
|                 }
 | |
|                 //更改状态
 | |
|                 var opin = BLL.OpinionCollectionService.GetOpinionCollectionById(this.OpinionCollectionId);
 | |
|                 if (opin!=null)
 | |
|                 {
 | |
|                     //if (rblIsAgree.SelectedValue == "true")
 | |
|                     //{
 | |
|                         if (this.drpNextStep.SelectedValue == "审核完成")
 | |
|                         {
 | |
|                             opin.State = BLL.Const.State_2;
 | |
|                         }
 | |
|                         else
 | |
|                         {
 | |
|                             opin.State = BLL.Const.State_1;
 | |
|                         }
 | |
|                     //}
 | |
|                     //else
 | |
|                     //{
 | |
|                     //    opin.State = BLL.Const.State_0;
 | |
|                     //}
 | |
|                     BLL.OpinionCollectionService.UpdateOpinionCollection(opin);
 | |
|                 }
 | |
|             }
 | |
|         }
 | |
|         #endregion
 | |
|         
 | |
|         #region 附件上传
 | |
|         /// <summary>
 | |
|         /// 上传附件
 | |
|         /// </summary>
 | |
|         /// <param name="sender"></param>
 | |
|         /// <param name="e"></param>
 | |
|         protected void btnAttachUrl_Click(object sender, EventArgs e)
 | |
|         {
 | |
|             if (this.drpProblemClass.SelectedValue == BLL.Const._Null)
 | |
|             {
 | |
|                 ShowNotify("请选择问题分类!", MessageBoxIcon.Warning);
 | |
|                 return;
 | |
|             }
 | |
|             if (string.IsNullOrEmpty(this.OpinionCollectionId))
 | |
|             {
 | |
|                 this.SaveData(BLL.Const.BtnSave);
 | |
|             }
 | |
|             PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("~/AttachFile/webuploader.aspx?toKeyId={0}&path=FileUpload/OpinionCollection&menuId={1}&type=0", this.OpinionCollectionId, BLL.Const.OpinionCollectionMenuId)));
 | |
|         }
 | |
|         #endregion
 | |
| 
 | |
|         #region DropDownList下拉选择事件
 | |
|         /// <summary>
 | |
|         /// 核实人角色下拉选择事件
 | |
|         /// </summary>
 | |
|         /// <param name="sender"></param>
 | |
|         /// <param name="e"></param>
 | |
|         protected void drpAuditRoleId_SelectedIndexChanged(object sender, EventArgs e)
 | |
|         {
 | |
|             this.drpAudit.Items.Clear();
 | |
|             if (!string.IsNullOrEmpty(this.drpAuditRoleId.SelectedValue)&&this.drpAuditRoleId.SelectedValue!=BLL.Const._Null)
 | |
|             {
 | |
|                 BLL.UserService.InitUserByRoleIdDropDownList(this.drpAudit, this.ProjectId, this.drpAuditRoleId.SelectedValue, false);
 | |
|                 this.drpAudit.SelectedIndex = 0;
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         /// <summary>
 | |
|         ///下一步选择事件
 | |
|         /// </summary>
 | |
|         /// <param name="sender"></param>
 | |
|         /// <param name="e"></param>
 | |
|         protected void drpNextStep_SelectedIndexChanged(object sender, EventArgs e)
 | |
|         {
 | |
|             if (this.drpNextStep.SelectedText=="审核完成")
 | |
|             {
 | |
|                 audit.Hidden = true;
 | |
|             }
 | |
|             else
 | |
|             {
 | |
|                 audit.Hidden = false;
 | |
|             }
 | |
|         }
 | |
|         #endregion
 | |
|     }
 | |
| } |