443 lines
		
	
	
		
			19 KiB
		
	
	
	
		
			C#
		
	
	
	
			
		
		
	
	
			443 lines
		
	
	
		
			19 KiB
		
	
	
	
		
			C#
		
	
	
	
| using BLL;
 | |
| using System;
 | |
| 
 | |
| namespace FineUIPro.Web.TestRun.DriverRun
 | |
| {
 | |
|     public partial class DriverRunEdit : PageBase
 | |
|     {
 | |
|         /// <summary>
 | |
|         /// 办理类型
 | |
|         /// </summary>
 | |
|         public string State
 | |
|         {
 | |
|             get
 | |
|             {
 | |
|                 return (string)ViewState["State"];
 | |
|             }
 | |
|             set
 | |
|             {
 | |
|                 ViewState["State"] = value;
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         #region 加载
 | |
|         /// <summary>
 | |
|         /// 页面加载
 | |
|         /// </summary>
 | |
|         /// <param name="sender"></param>
 | |
|         /// <param name="e"></param>
 | |
|         protected void Page_Load(object sender, EventArgs e)
 | |
|         {
 | |
|             if (!IsPostBack)
 | |
|             {
 | |
|                 BLL.UnitService.InitUnitDownList(this.drpUnitId, this.CurrUser.LoginProjectId, true);
 | |
|                 ListItem[] list1 = new ListItem[3];
 | |
|                 list1[0]= new ListItem("未开始","1");
 | |
|                 list1[1] = new ListItem("进行中", "2");
 | |
|                 list1[2] = new ListItem("已完成", "3");
 | |
|                 this.drpStatus.DataTextField = "Text";
 | |
|                 this.drpStatus.DataValueField = "Value";
 | |
|                 this.drpStatus.DataSource = list1;
 | |
|                 this.drpStatus.DataBind();
 | |
|                 Funs.FineUIPleaseSelect(this.drpStatus);
 | |
|                 ListItem[] list2 = new ListItem[3];
 | |
|                 list2[0] = new ListItem("低", "1");
 | |
|                 list2[1] = new ListItem("中", "2");
 | |
|                 list2[2] = new ListItem("高", "3");
 | |
|                 this.drpPriority.DataTextField = "Text";
 | |
|                 this.drpPriority.DataValueField = "Value";
 | |
|                 this.drpPriority.DataSource = list2;
 | |
|                 this.drpPriority.DataBind();
 | |
|                 Funs.FineUIPleaseSelect(this.drpPriority);
 | |
|                 BLL.UnitWorkService.InitUnitWorkDropDownList(this.drpUnitWorkIds, this.CurrUser.LoginProjectId, true);
 | |
|                 plApprove1.Hidden = true;
 | |
|                 plApprove2.Hidden = true;
 | |
|                 txtRealCompletedDate.Hidden = true;
 | |
|                 string id = Request.Params["id"];
 | |
|                 if (!string.IsNullOrEmpty(id))
 | |
|                 {
 | |
|                     Model.DriverRun_DriverRun data = BLL.DriverRunService.GetDriverRunById(id);
 | |
|                     if (data != null)
 | |
|                     {
 | |
|                         plApprove1.Hidden = false;
 | |
|                         plApprove2.Hidden = false;
 | |
|                         var dt = DriverRunApproveService.getListData(id);
 | |
|                         gvApprove.DataSource = dt;
 | |
|                         gvApprove.DataBind();
 | |
|                         this.hdId.Text = id;
 | |
|                         this.txtCode.Text = data.Code;
 | |
|                         if (!string.IsNullOrEmpty(data.UnitId))
 | |
|                         {
 | |
|                             this.drpUnitId.SelectedValue = data.UnitId;
 | |
|                         }
 | |
|                         this.drpUnitWorkIds.SelectedValueArray = data.InstallationId.Split(',');
 | |
|                         this.txtDescriptions.Text = data.Descriptions;
 | |
|                         this.txtObjective.Text = data.Objective;
 | |
|                         if (data.NeedCompletedDate != null)
 | |
|                         {
 | |
|                             this.txtNeedCompletedDate.Text = string.Format("{0:yyyy-MM-dd}", data.NeedCompletedDate);
 | |
|                         }
 | |
|                         if (data.RealCompletedDate != null)
 | |
|                         {
 | |
|                             this.txtRealCompletedDate.Text = string.Format("{0:yyyy-MM-dd}", data.RealCompletedDate);
 | |
|                         }
 | |
|                         if (!string.IsNullOrEmpty(data.Status))
 | |
|                         {
 | |
|                             this.drpStatus.SelectedValue = data.Status;
 | |
|                         }
 | |
|                         if (!string.IsNullOrEmpty(data.Priority))
 | |
|                         {
 | |
|                             this.drpPriority.SelectedValue = data.Priority;
 | |
|                         }
 | |
|                         if (!string.IsNullOrEmpty(data.State))
 | |
|                         {
 | |
|                             State = data.State;
 | |
|                         }
 | |
|                         else
 | |
|                         {
 | |
|                             State = BLL.Const.DriverRun_Compile;
 | |
|                         }
 | |
|                         if (State != BLL.Const.DriverRun_Complete)
 | |
|                         {
 | |
|                             DriverRunService.Init(drpHandleType, State, false);
 | |
|                         }
 | |
|                         if (State == BLL.Const.DriverRun_Compile)
 | |
|                         {
 | |
|                             UserService.Init2(drpHandleMan, CurrUser.LoginProjectId, false);
 | |
|                             this.drpHandleMan.SelectedIndex = 1;
 | |
|                         }
 | |
|                         else
 | |
|                         {
 | |
|                             if (State == BLL.Const.DriverRun_Audit2)
 | |
|                             {
 | |
|                                 Model.DriverRun_DriverRunApprove approve = BLL.DriverRunApproveService.GetAudit2(id);
 | |
|                                 if (approve != null)
 | |
|                                 {
 | |
|                                     ListItem[] list = new ListItem[1];
 | |
|                                     list[0] = new ListItem(BLL.UserService.GetUserByUserId(approve.ApproveMan).UserName ?? "", approve.ApproveMan);
 | |
|                                     drpHandleMan.DataValueField = "Value";
 | |
|                                     drpHandleMan.DataTextField = "Text";
 | |
|                                     drpHandleMan.DataSource = list;
 | |
|                                     drpHandleMan.DataBind();
 | |
|                                 }
 | |
|                             }
 | |
|                             else if (State == BLL.Const.DriverRun_Audit3)
 | |
|                             {
 | |
|                                 txtRealCompletedDate.Hidden = false;
 | |
|                                 Model.DriverRun_DriverRunApprove approve = BLL.DriverRunApproveService.GetAudit1(id);
 | |
|                                 if (approve != null)
 | |
|                                 {
 | |
|                                     ListItem[] list = new ListItem[1];
 | |
|                                     list[0] = new ListItem(BLL.UserService.GetUserByUserId(approve.ApproveMan).UserName ?? "", approve.ApproveMan);
 | |
|                                     drpHandleMan.DataValueField = "Value";
 | |
|                                     drpHandleMan.DataTextField = "Text";
 | |
|                                     drpHandleMan.DataSource = list;
 | |
|                                     drpHandleMan.DataBind();
 | |
|                                 }
 | |
|                             }
 | |
|                             else if (State == BLL.Const.DriverRun_Audit4)
 | |
|                             {
 | |
|                                 txtRealCompletedDate.Hidden = false;
 | |
|                                 drpHandleMan.Items.Clear();
 | |
|                                 drpHandleMan.Enabled = false;
 | |
|                             }
 | |
|                             else
 | |
|                             {
 | |
|                                 UserService.Init2(drpHandleMan, CurrUser.LoginProjectId, false);
 | |
|                             }
 | |
|                         }
 | |
|                         this.txtOpinions.Text = "同意";
 | |
|                     }
 | |
|                 }
 | |
|                 else
 | |
|                 {
 | |
|                     State = Const.DriverRun_Compile;
 | |
|                     DriverRunService.Init(drpHandleType, State, false);
 | |
|                     UserService.Init2(drpHandleMan, CurrUser.LoginProjectId, false);
 | |
|                 }
 | |
|             }
 | |
|         }
 | |
|         #endregion
 | |
| 
 | |
|         #region 附件上传
 | |
|         /// <summary>
 | |
|         /// 附件上传
 | |
|         /// </summary>
 | |
|         /// <param name="sender"></param>
 | |
|         /// <param name="e"></param>
 | |
|         protected void btnAttach_Click(object sender, EventArgs e)
 | |
|         {
 | |
|             if (string.IsNullOrEmpty(this.hdId.Text))   //新增记录
 | |
|             {
 | |
|                 this.hdId.Text = SQLHelper.GetNewID(typeof(Model.DriverRun_DriverRun));
 | |
|             }
 | |
|             PageContext.RegisterStartupScript(WindowAtt.GetShowReference(String.Format("../../AttachFile/webuploader.aspx?type=0&toKeyId={0}&path=FileUpload/TestRun/DriverRun/DriverRun&menuId={1}", this.hdId.Text, BLL.Const.DriverRunMenuId)));
 | |
|         }
 | |
|         #endregion
 | |
| 
 | |
|         #region 保存/提交
 | |
|         /// <summary>
 | |
|         /// 保存按钮
 | |
|         /// </summary>
 | |
|         /// <param name="sender"></param>
 | |
|         /// <param name="e"></param>
 | |
|         protected void btnSave_Click(object sender, EventArgs e)
 | |
|         {
 | |
|             if (this.drpUnitId.SelectedValue == BLL.Const._Null)
 | |
|             {
 | |
|                 Alert.ShowInTop("请选择单位名称!", MessageBoxIcon.Warning);
 | |
|                 return;
 | |
|             }
 | |
|             if (this.drpUnitWorkIds.SelectedValue == BLL.Const._Null)
 | |
|             {
 | |
|                 Alert.ShowInTop("请选择区域!", MessageBoxIcon.Warning);
 | |
|                 return;
 | |
|             }
 | |
|             if (this.drpStatus.SelectedValue == BLL.Const._Null)
 | |
|             {
 | |
|                 Alert.ShowInTop("请选择实施状态!", MessageBoxIcon.Warning);
 | |
|                 return;
 | |
|             }
 | |
|             if (this.drpPriority.SelectedValue == BLL.Const._Null)
 | |
|             {
 | |
|                 Alert.ShowInTop("请选择优先级!", MessageBoxIcon.Warning);
 | |
|                 return;
 | |
|             }
 | |
|             if (State == BLL.Const.DriverRun_Audit4 && string.IsNullOrEmpty(this.txtRealCompletedDate.Text.Trim()))
 | |
|             {
 | |
|                 Alert.ShowInTop("请选择实际完成时间!", MessageBoxIcon.Warning);
 | |
|                 return;
 | |
|             }
 | |
|             SaveData("save");
 | |
|             ShowNotify("保存成功!", MessageBoxIcon.Success);
 | |
|             PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
 | |
|         }
 | |
| 
 | |
|         protected void btnSubmit_Click(object sender, EventArgs e)
 | |
|         {
 | |
|             if (this.drpUnitId.SelectedValue == BLL.Const._Null)
 | |
|             {
 | |
|                 Alert.ShowInTop("请选择单位名称!", MessageBoxIcon.Warning);
 | |
|                 return;
 | |
|             }
 | |
|             if (this.drpUnitWorkIds.SelectedValue == BLL.Const._Null)
 | |
|             {
 | |
|                 Alert.ShowInTop("请选择区域!", MessageBoxIcon.Warning);
 | |
|                 return;
 | |
|             }
 | |
|             if (this.drpStatus.SelectedValue == BLL.Const._Null)
 | |
|             {
 | |
|                 Alert.ShowInTop("请选择实施状态!", MessageBoxIcon.Warning);
 | |
|                 return;
 | |
|             }
 | |
|             if (this.drpPriority.SelectedValue == BLL.Const._Null)
 | |
|             {
 | |
|                 Alert.ShowInTop("请选择优先级!", MessageBoxIcon.Warning);
 | |
|                 return;
 | |
|             }
 | |
|             if (State == BLL.Const.DriverRun_Audit4 && string.IsNullOrEmpty(this.txtRealCompletedDate.Text.Trim()))
 | |
|             {
 | |
|                 Alert.ShowInTop("请选择实际完成时间!", MessageBoxIcon.Warning);
 | |
|                 return;
 | |
|             }
 | |
|             SaveData("submit");
 | |
|             ShowNotify("提交成功!", MessageBoxIcon.Success);
 | |
|             PageContext.RegisterStartupScript(ActiveWindow.GetHidePostBackReference());
 | |
|         }
 | |
| 
 | |
|         private void SaveData(string saveType)
 | |
|         {
 | |
|             string id = Request.Params["id"];
 | |
|             Model.DriverRun_DriverRun newData = new Model.DriverRun_DriverRun();
 | |
|             newData.Code = this.txtCode.Text.Trim();
 | |
|             if (this.drpUnitId.SelectedValue != BLL.Const._Null)
 | |
|             {
 | |
|                 newData.UnitId = this.drpUnitId.SelectedValue;
 | |
|             }
 | |
|             if (!string.IsNullOrEmpty(this.drpUnitWorkIds.SelectedValue))
 | |
|             {
 | |
|                 newData.InstallationId = GetStringByArray(this.drpUnitWorkIds.SelectedValueArray);
 | |
|                 string unitWorkNames = string.Empty;
 | |
|                 foreach (var item in this.drpUnitWorkIds.SelectedValueArray)
 | |
|                 {
 | |
|                     var unitWork = BLL.UnitWorkService.getUnitWorkByUnitWorkId(item);
 | |
|                     if (unitWork != null)
 | |
|                     {
 | |
|                         unitWorkNames += unitWork.UnitWorkName + ",";
 | |
|                     }
 | |
|                 }
 | |
|                 if (!string.IsNullOrEmpty(unitWorkNames))
 | |
|                 {
 | |
|                     newData.InstallationNames = unitWorkNames.Substring(0, unitWorkNames.LastIndexOf(","));
 | |
|                 }
 | |
|             }
 | |
|             newData.Descriptions = this.txtDescriptions.Text.Trim();
 | |
|             newData.Objective = this.txtObjective.Text.Trim();
 | |
|             if (this.drpStatus.SelectedValue != BLL.Const._Null)
 | |
|             {
 | |
|                 newData.Status = this.drpStatus.SelectedValue;
 | |
|             }
 | |
|             if (this.drpPriority.SelectedValue != BLL.Const._Null)
 | |
|             {
 | |
|                 newData.Priority = this.drpPriority.SelectedValue;
 | |
|             }
 | |
|             newData.NeedCompletedDate = Funs.GetNewDateTime(this.txtNeedCompletedDate.Text.Trim());
 | |
|             newData.ProjectId = this.CurrUser.LoginProjectId;
 | |
|             newData.RealCompletedDate = Funs.GetNewDateTime(this.txtRealCompletedDate.Text.Trim());
 | |
|             if (saveType == "submit")
 | |
|             {
 | |
|                 newData.State = drpHandleType.SelectedValue.Trim();
 | |
|             }
 | |
|             else
 | |
|             {
 | |
|                 Model.DriverRun_DriverRun newData1 = BLL.DriverRunService.GetDriverRunById(id);
 | |
| 
 | |
|                 if (newData1 != null)
 | |
|                 {
 | |
|                     if (string.IsNullOrEmpty(newData1.State))
 | |
|                     {
 | |
|                         newData.State = BLL.Const.DriverRun_Compile;
 | |
|                     }
 | |
|                     else
 | |
|                     {
 | |
|                         newData.State = newData1.State;
 | |
|                     }
 | |
|                 }
 | |
|                 else
 | |
|                 {
 | |
|                     newData.State = BLL.Const.DriverRun_Compile;
 | |
|                 }
 | |
|             }
 | |
|             if (!string.IsNullOrEmpty(id))
 | |
|             {
 | |
|                 Model.DriverRun_DriverRunApprove approve1 = BLL.DriverRunApproveService.GetDriverRunApproveByDriverRunId(id);
 | |
|                 if (approve1 != null && saveType == "submit")
 | |
|                 {
 | |
|                     approve1.ApproveDate = DateTime.Now;
 | |
|                     approve1.ApproveIdea = txtOpinions.Text.Trim();
 | |
|                     BLL.DriverRunApproveService.UpdateDriverRunApprove(approve1);
 | |
|                 }
 | |
|                 if (saveType == "submit" && !string.IsNullOrEmpty(this.drpHandleMan.SelectedValue))
 | |
|                 {
 | |
|                     Model.DriverRun_DriverRunApprove approve = new Model.DriverRun_DriverRunApprove();
 | |
|                     approve.DriverRunId = id;
 | |
|                     if (!string.IsNullOrEmpty(this.drpHandleMan.SelectedValue))
 | |
|                     {
 | |
|                         approve.ApproveMan = this.drpHandleMan.SelectedValue;
 | |
|                     }
 | |
|                     approve.ApproveType = this.drpHandleType.SelectedValue;
 | |
|                     if (this.drpHandleType.SelectedValue == BLL.Const.DriverRun_Complete)
 | |
|                     {
 | |
|                         approve.ApproveDate = DateTime.Now;
 | |
|                     }
 | |
|                     BLL.DriverRunApproveService.AddDriverRunApprove(approve);
 | |
|                     APICommonService.SendSubscribeMessage(approve.ApproveMan, "开车保运委托单待办理", this.CurrUser.UserName, string.Format("{0:yyyy-MM-dd HH:mm:ss}", DateTime.Now));
 | |
|                 }
 | |
|                 newData.DriverRunId = id;
 | |
|                 BLL.DriverRunService.UpdateDriverRun(newData);
 | |
|             }
 | |
|             else
 | |
|             {
 | |
|                 if (!string.IsNullOrEmpty(this.hdId.Text))
 | |
|                 {
 | |
|                     newData.DriverRunId = this.hdId.Text.Trim();
 | |
|                 }
 | |
|                 else
 | |
|                 {
 | |
|                     newData.DriverRunId = SQLHelper.GetNewID(typeof(Model.DriverRun_DriverRun));
 | |
|                     this.hdId.Text = newData.DriverRunId;
 | |
|                 }
 | |
|                 newData.CompileMan = this.CurrUser.UserId;
 | |
|                 newData.CompileDate = DateTime.Now;
 | |
|                 BLL.DriverRunService.AddDriverRun(newData);
 | |
|                 if (saveType == "submit")
 | |
|                 {
 | |
|                     Model.DriverRun_DriverRunApprove approve1 = new Model.DriverRun_DriverRunApprove();
 | |
|                     approve1.DriverRunId = newData.DriverRunId;
 | |
|                     approve1.ApproveDate = DateTime.Now;
 | |
|                     approve1.ApproveMan = this.CurrUser.UserId;
 | |
|                     approve1.ApproveType = BLL.Const.DriverRun_Compile;
 | |
|                     BLL.DriverRunApproveService.AddDriverRunApprove(approve1);
 | |
| 
 | |
|                     Model.DriverRun_DriverRunApprove approve = new Model.DriverRun_DriverRunApprove();
 | |
|                     approve.DriverRunId = newData.DriverRunId;
 | |
|                     if (this.drpHandleMan.SelectedValue != "0")
 | |
|                     {
 | |
|                         approve.ApproveMan = this.drpHandleMan.SelectedValue;
 | |
|                     }
 | |
|                     approve.ApproveType = this.drpHandleType.SelectedValue;
 | |
| 
 | |
|                     BLL.DriverRunApproveService.AddDriverRunApprove(approve);
 | |
|                     APICommonService.SendSubscribeMessage(approve.ApproveMan, "开车保运委托单待办理", this.CurrUser.UserName, string.Format("{0:yyyy-MM-dd HH:mm:ss}", DateTime.Now));
 | |
|                 }
 | |
|                 else
 | |
|                 {
 | |
|                     Model.DriverRun_DriverRunApprove approve1 = new Model.DriverRun_DriverRunApprove();
 | |
|                     approve1.DriverRunId = newData.DriverRunId;
 | |
|                     approve1.ApproveMan = this.CurrUser.UserId;
 | |
|                     approve1.ApproveType = BLL.Const.DriverRun_Compile;
 | |
|                     BLL.DriverRunApproveService.AddDriverRunApprove(approve1);
 | |
|                 }
 | |
|             }
 | |
|         }
 | |
| 
 | |
|         private string GetStringByArray(string[] array)
 | |
|         {
 | |
|             string str = string.Empty;
 | |
|             foreach (var item in array)
 | |
|             {
 | |
|                 if (item != BLL.Const._Null)
 | |
|                 {
 | |
|                     str += item + ",";
 | |
|                 }
 | |
|             }
 | |
|             if (!string.IsNullOrEmpty(str))
 | |
|             {
 | |
|                 str = str.Substring(0, str.LastIndexOf(","));
 | |
|             }
 | |
|             return str;
 | |
|         }
 | |
|         #endregion
 | |
| 
 | |
|         /// <summary>
 | |
|         /// 把状态转换代号为文字形式
 | |
|         /// </summary>
 | |
|         /// <param name="state"></param>
 | |
|         /// <returns></returns>
 | |
|         protected string ConvertState(object state)
 | |
|         {
 | |
|             if (state != null)
 | |
|             {
 | |
|                 if (state.ToString() == BLL.Const.DriverRun_Compile)
 | |
|                 {
 | |
|                     return "编制";
 | |
|                 }
 | |
|                 else if (state.ToString() == BLL.Const.DriverRun_Audit1)
 | |
|                 {
 | |
|                     return "开车负责人审批";
 | |
|                 }
 | |
|                 else if (state.ToString() == BLL.Const.DriverRun_Audit2)
 | |
|                 {
 | |
|                     return "保运主任审批";
 | |
|                 }
 | |
|                 else if (state.ToString() == BLL.Const.DriverRun_Audit3)
 | |
|                 {
 | |
|                     return "保运主任确认完成";
 | |
|                 }
 | |
|                 else if (state.ToString() == BLL.Const.DriverRun_Audit4)
 | |
|                 {
 | |
|                     return "开车负责人确认完成";
 | |
|                 }
 | |
|                 else if (state.ToString() == BLL.Const.DriverRun_Complete)
 | |
|                 {
 | |
|                     return "流程闭环";
 | |
|                 }
 | |
|                 else
 | |
|                 {
 | |
|                     return "";
 | |
|                 }
 | |
|             }
 | |
|             return "";
 | |
|         }
 | |
|     }
 | |
| } |