protected void btnExport_Click(object sender, EventArgs e) { if (!checkSearchConditionValid()) { return; } else { string queryExpession = getSearchCondition(); int stuffID = ((AuthorizationDS.StuffUserRow)Session["StuffUser"]).StuffUserId; int positionID = ((AuthorizationDS.PositionRow)Session["Position"]).PositionId; int limit = int.Parse(System.Configuration.ConfigurationManager.AppSettings["ExportCountLimit"]); FormQueryBLL bll = new FormQueryBLL(); int count = bll.QueryFormMaterialViewCountByRight(queryExpession, stuffID, positionID); if (count > limit) { PageUtility.ShowModelDlg(this.Page, "导出记录数不得超过" + limit + "条,请缩小查询条件"); return; } try { Session.Timeout = 30; string fileID = Guid.NewGuid().ToString(); string outFile = Server.MapPath(@"~/" + saveFilePath) + @"\" + fileID + ".xls"; System.Diagnostics.Debug.WriteLine("outFile := " + outFile); this.ExportDataGrid.DataSource = new FormMaterialViewForExportByRightTableAdapter().GetData(queryExpession, stuffID, positionID); this.ExportDataGrid.DataBind(); string fileName = "FormMaterial" + DateTime.Now.ToString("yyyyMMddHHmmss"); ToExcel(this.ExportDataGrid, fileName); Session.Timeout = 3; } catch (Exception ex) { PageUtility.DealWithException(this, ex); } } }
protected void Page_Load(object sender, EventArgs e) { base.Page_Load(sender, e); if (!this.IsPostBack) { PageUtility.SetContentTitle(this.Page, "出差审批"); this.Page.Title = "出差审批"; int formID = int.Parse(Request["ObjectID"]); this.ViewState["ObjectId"] = formID; QueryDS.FormViewRow rowForm = new FormQueryBLL().GetFormViewByID(formID); FormDS.FormTravelApplyRow applyRow = this.PersonalReimburseBLL.GetFormTravelApplyByID(formID); if (rowForm.IsProcIDNull()) { ViewState["ProcID"] = ""; } else { ViewState["ProcID"] = rowForm.ProcID; } ViewState["OrganizationUnitID"] = rowForm.OrganizationUnitID; txtFormNo.Text = rowForm.FormNo; AuthorizationDS.StuffUserRow applicant = new AuthorizationBLL().GetStuffUserById(rowForm.UserID); this.StuffNameCtl.Text = applicant.StuffName; this.PositionNameCtl.Text = new OUTreeBLL().GetPositionById(rowForm.PositionID).PositionName; if (new OUTreeBLL().GetOrganizationUnitById(rowForm.OrganizationUnitID) != null) { this.DepartmentNameCtl.Text = new OUTreeBLL().GetOrganizationUnitById(rowForm.OrganizationUnitID).OrganizationUnitName; } this.AttendDateCtl.Text = applicant.AttendDate.ToShortDateString(); if (!applyRow.IsTransportFeeNull()) { this.txtTransportFee.Text = applyRow.TransportFee.ToString("N"); } if (!applyRow.IsHotelFeeNull()) { this.txtHotelFee.Text = applyRow.HotelFee.ToString("N"); } if (!applyRow.IsMealFeeNull()) { this.txtMealFee.Text = applyRow.MealFee.ToString("N"); } if (!applyRow.IsOtherFeeNull()) { this.txtOtherFee.Text = applyRow.OtherFee.ToString("N"); } if (!applyRow.IsTotalFeeNull()) { this.txtTotal.Text = applyRow.TotalFee.ToString("N"); } this.RemarkCtl.Text = applyRow.Remark; if (!applyRow.IsAttachedFileNameNull() && !applyRow.IsRealAttachedFileNameNull()) { this.UCFileUpload.AttachmentFileName = applyRow.RealAttachedFileName; this.UCFileUpload.RealAttachmentFileName = applyRow.RealAttachedFileName; } // 打开明细表 FormTravelApplyDetailTableAdapter taDetail = new FormTravelApplyDetailTableAdapter(); taDetail.FillByApplyID(this.InnerDS.FormTravelApplyDetail, formID); //历史单据 if (rowForm.IsRejectedFormIDNull()) { lblRejectFormNo.Text = "无"; } else { FormDS.FormRow rejectedForm = this.PersonalReimburseBLL.GetFormByID(rowForm.RejectedFormID)[0]; this.lblRejectFormNo.Text = rejectedForm.FormNo; this.lblRejectFormNo.NavigateUrl = "javascript:window.showModalDialog('" + System.Configuration.ConfigurationManager.AppSettings["WebSiteUrl"] + "/OtherForm/TravelApproval.aspx?ShowDialog=1&ObjectID=" + rejectedForm.FormID + "','', 'dialogWidth:1000px;dialogHeight:750px;resizable:yes;')"; } //审批页面处理&按钮处理 AuthorizationDS.StuffUserRow stuffUser = (AuthorizationDS.StuffUserRow)Session["StuffUser"]; this.ViewState["StuffUserID"] = stuffUser.StuffUserId; if (Session["ProxyStuffUserId"] == null && rowForm.InTurnUserIds.Contains("P" + stuffUser.StuffUserId + "P")) { this.SubmitBtn.Visible = true; this.cwfAppCheck.IsView = false; this.ViewState["IsView"] = false; } else { this.SubmitBtn.Visible = false; this.cwfAppCheck.IsView = true; this.ViewState["IsView"] = true; } if (rowForm.StatusID == (int)SystemEnums.FormStatus.Rejected && (stuffUser.StuffUserId == rowForm.UserID)) { this.EditBtn.Visible = true; this.ScrapBtn.Visible = true; } else { this.EditBtn.Visible = false; this.ScrapBtn.Visible = false; } //如果是弹出,取消按钮不可见 if (this.Request["ShowDialog"] != null) { if (this.Request["ShowDialog"].ToString() == "1") { this.upButton.Visible = false; this.Master.FindControl("divMenu").Visible = false; this.Master.FindControl("tbCurrentPage").Visible = false; } } } this.cwfAppCheck.FormID = (int)this.ViewState["ObjectId"]; this.cwfAppCheck.ProcID = this.ViewState["ProcID"].ToString(); this.cwfAppCheck.IsView = (bool)this.ViewState["IsView"]; }
/// <summary> /// /// </summary> /// <returns></returns> /// <remarks></remarks> protected DataSet GetCheckWorkFlowData() { DataSet ds = new DataSet(); DataTable dt; //创建数据表 dt = new DataTable(); dt.Columns.Add(new DataColumn("RegionCaption", typeof(string))); dt.Columns.Add(new DataColumn("Approver", typeof(string))); dt.Columns.Add(new DataColumn("FlowStatus", typeof(string))); dt.Columns.Add(new DataColumn("AuditDate", typeof(string))); dt.Columns.Add(new DataColumn("Comment", typeof(string))); dt.Columns.Add(new DataColumn("IsView", typeof(int))); dt.Columns.Add(new DataColumn("IsPending", typeof(int))); dt.Columns.Add(new DataColumn("OnError", typeof(int))); dt.Columns.Add(new DataColumn("RejectReason", typeof(string))); dt.Columns.Add(new DataColumn("IsOutTime", typeof(int)));//是否超时 //HU APHelper AP = CommonUtility.GetAPHelper(Session); lib.APWorkFlow.NodeStatusDataTable APTable = AP.getApprovalStatus(this.ProcID); if (APTable == null) { return(ds); } AuthorizationBLL authorizationBLL = new AuthorizationBLL(); QueryDS.FormViewRow formRow = new FormQueryBLL().GetFormViewByID(this.FormID); AuthorizationDS.StuffUserRow stuffuserDr = authorizationBLL.GetStuffUserById(formRow.UserID); //创建节点,先创建申请节点 DataRow dr; dr = dt.NewRow(); dr["RegionCaption"] = strDraft; dr["Approver"] = stuffuserDr.StuffName; dr["AuditDate"] = formRow.SubmitDate.ToString("yyyy-MM-dd HH:mm"); dr["FlowStatus"] = submittedStatus; dr["Comment"] = string.Empty; dr["IsView"] = 0; dr["IsPending"] = 0; dr["OnError"] = 0; dr["IsOutTime"] = 0; dt.Rows.Add(dr); //再创建审批节点 foreach (lib.APWorkFlow.NodeStatusRow drwfh in APTable.Rows) { switch (DBNullConverter.ToStr(drwfh.STATUS)) { //case (int)SystemEnums.FlowNodeStatus.Wait: // generaAddPendingRowToDt(ref dt, drwfh, strApproving); // break; case APHelper.FlowNodeStatus.ONERROR: if (this.IsView) { generaAddErrorPendingRowToDt(ref dt, drwfh, strError); } else { generaAddErrorInTurnRowToDt(ref dt, drwfh, strError, errorStatus); } break; case APHelper.FlowNodeStatus.ASSIGNED: if (this.IsView) { generaAddPendingRowToDt(ref dt, drwfh, strApproving); } else { generaAddInTurnRowToDt(ref dt, drwfh, strApproving, approvedStatus); } //if (this.ViewState["CurrentApproveIndex"] == null) { // CurrentApproveIndex = int.Parse(drwfh["ApprovalIndex"].ToString()); // this.ViewState["CurrentApproveIndex"] = CurrentApproveIndex; //} else { // CurrentApproveIndex = int.Parse(this.ViewState["CurrentApproveIndex"].ToString()); //} break; case APHelper.FlowNodeStatus.APPROVED: generaAddRowToDt(ref dt, drwfh, strApproved, approvedStatus); break; case APHelper.FlowNodeStatus.CANCELLED: generaAddRowToDt(ref dt, drwfh, strReturnModify, rejectedStatus); break; default: break; } } for (int n = 0; n < dt.Rows.Count; n++) { DataRow dr1 = dt.Rows[n]; DataRow dr2 = dt.Rows[n + 1];//后一个节点 if (string.IsNullOrEmpty(dr2["AuditDate"].ToString())) { dr2["AuditDate"] = DateTime.Now.ToString(); } TimeSpan ts = Convert.ToDateTime(dr2["AuditDate"]) - Convert.ToDateTime(dr1["AuditDate"]); if (ts.Days >= 2) { dr2["IsOutTime"] = 1; } else { dr2["IsOutTime"] = 0; } if (n + 1 == dt.Rows.Count - 1) { break; } } ds.Tables.Add(dt); return(ds); }