/// <summary> /// 流程类型选择 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void ddlProcessTemplate_SelectedIndexChanged(object sender, EventArgs e) { if (this.ddlProcessTemplate.SelectedIndex == 0) { //流程类型选中空行,设置流程步骤不可编辑 this.ddlStepName.Enabled = false; this.ddlStepName.Items.Clear(); } else { //选中一个流程类型,设置流程步骤为可编辑 this.ddlStepName.Enabled = true; //得到流程类型对应的流程步骤 TAdmin = new TemplateAdmin(); String strTemplateID = this.ddlProcessTemplate.SelectedValue; DataTable dtStep = TAdmin.Templates.GetTemplate(strTemplateID).GetVersion(1).GetViewList(); //加入空选择行 DataRow l_dtrDataRow = dtStep.NewRow(); l_dtrDataRow[0] = DBNull.Value; l_dtrDataRow[1] = ""; l_dtrDataRow[2] = DBNull.Value; dtStep.Rows.InsertAt(l_dtrDataRow, 0); //绑定数据 this.ddlStepName.DataSource = dtStep; this.ddlStepName.DataBind(); } LoadTaskList(); }
/// <summary> /// Returns the full template dataset. Results are cached when not in design mode and not cached when in design mode. /// Use this method for all runtime calls. /// </summary> /// <returns></returns> public static TemplateDto GetTemplateDto() { bool useCache = !CMSContext.Current.IsDesignMode; // do not use template caching in design mode string cacheKey = CmsCache.CreateCacheKey("templates"); // check cache first object cachedObject = null; if (useCache) { cachedObject = CmsCache.Get(cacheKey); } if (cachedObject != null) { return((TemplateDto)cachedObject); } // TODO: add caching TemplateAdmin admin = new TemplateAdmin(); admin.Load(); // Insert to the cache collection if (useCache) { CmsCache.Insert(cacheKey, admin.CurrentDto, CmsConfiguration.Instance.Cache.TemplateTimeout); } return(admin.CurrentDto); }
/// <summary> /// Bind Style Sheet Content /// </summary> private void BindData() { //Instance for ContentPageAdmin TemplateAdmin TemplateAdmin = new TemplateAdmin(); //Get Values StyleSheetContent.Text = TemplateAdmin.GetTemplateStyle(); }
/// <summary> /// Gets the template dto. /// </summary> /// <param name="templateId">The template id.</param> /// <returns></returns> public static TemplateDto GetTemplateDto(int templateId) { // TODO: add caching TemplateAdmin admin = new TemplateAdmin(); admin.Load(templateId); return(admin.CurrentDto); }
private void LoadProcessSteps() { if (this.ddlProcessTemplate.SelectedIndex == 0) { ////流程类型选中空行,设置流程步骤不可编辑 //this.ddlStepName.Enabled = false; //this.ddlStepName.Items.Clear(); VisibleTR(); } else { VisibleTR(); switch (ddlProcessTemplate.SelectedValue) { case ProcessConstString.TemplateName.DJGT_Send: case ProcessConstString.TemplateName.COMPANY_SEND: trGF.Visible = true; break; case ProcessConstString.TemplateName.MERGED_RECEIVE: case ProcessConstString.TemplateName.COMPANY_RECEIVE: //trGS.Visible = true; break; case ProcessConstString.TemplateName.LETTER_RECEIVE: trHS.Visible = true; break; case ProcessConstString.TemplateName.LETTER_SEND: trHF.Visible = true; break; case ProcessConstString.TemplateName.PROGRAM_FILE: trPF.Visible = true; break; case ProcessConstString.TemplateName.AFFILIATION: trWR.Visible = true; break; case ProcessConstString.TemplateName.INSTUCTION_REPORT: trRR.Visible = true; break; default: break; } //选中一个流程类型,设置流程步骤为可编辑 //this.ddlStepName.Enabled = true; //得到流程类型对应的流程步骤 TemplateAdmin TAdmin = new TemplateAdmin(); String strTemplateID = this.ddlProcessTemplate.SelectedValue; DataTable dtStep = TAdmin.Templates.GetTemplate(strTemplateID).GetVersion(1).GetViewList(); //加入空选择行 DataRow drStep = dtStep.NewRow(); drStep[0] = DBNull.Value; drStep[1] = ""; drStep[2] = DBNull.Value; dtStep.Rows.InsertAt(drStep, 0); ////绑定数据 //this.ddlStepName.DataSource = dtStep; //this.ddlStepName.DataBind(); } }
/// <summary> /// Submit Button Click Event /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnSubmit_Click(object sender, EventArgs e) { TemplateAdmin TemplatePageAdmin = new TemplateAdmin(); bool Status = TemplatePageAdmin.UpdateTemplateStyleFile(StyleSheetContent.Text.Trim()); if (Status) { //redirect to next page Response.Redirect(HomeLink); } else { //display error message lblMsg.Text = "An error occurred while updating. Please try again."; return; } }
/// <summary> /// 获取templateID对应templateVersion版本对应视图的的相对路径 /// </summary> /// <param name="templateID"></param> /// <param name="templateVersion"></param> /// <param name="viewID"></param> /// <returns></returns> private String GetUiPath(String p_strTemplateName, int p_intVersion, String p_strStepName) { TemplateAdmin TAdmin = TemplateAdmin.CreateTemplateAdmin(Page); String l_strTargetUrl = String.Empty; Template template; template = TAdmin.Templates.GetTemplate(p_strTemplateName); if (p_intVersion == -1) { l_strTargetUrl = template.GetVersion(template.MaxVersion).GetView(p_strStepName).Path; } else { l_strTargetUrl = template.GetVersion(p_intVersion).GetView(p_strStepName).Path; } if (String.IsNullOrEmpty(l_strTargetUrl)) { throw new Exception("表单模板路径获取失败!"); } return(l_strTargetUrl); }
private void SaveTemplate_Click(object sender, EventArgs e) { TemplateAdmin ta = new TemplateAdmin(); string[] s = new string[1]; s[0] = FreeText.Text; string body = ta.GetXMLBody(s); string sqlString; sqlString = "SELECT ID FROM TEMPLATES WHERE TEMPLATENAME = 'ESTIMATE'"; using (DigiDapter dg = new DigiDapter(sqlString)) { if (dg.HasRows) { dg.Add("TEMPLATENAME", "ESTIMATE", 'I'); dg.Add("LANG", UC.CultureSpecific, 'I'); } if (NomeFile.Value.Length > 0) { string PathTemplate; PathTemplate = Path.Combine(Request.PhysicalApplicationPath, "Logos"); if (File.Exists(Path.Combine(PathTemplate, Path.GetFileName(NomeFile.Value)))) { File.Delete(Path.Combine(PathTemplate, Path.GetFileName(NomeFile.Value))); } NomeFile.PostedFile.SaveAs(Path.Combine(PathTemplate, Path.GetFileName(NomeFile.Value))); dg.Add("LOGO", Path.GetFileName(NomeFile.Value)); } dg.Add("BODY", body); dg.Execute("TEMPLATES", "ID=" + dg.ExternalReaderRowId); } Response.Redirect("/estimates/estimatehome.aspx"); }
/// <summary> /// 流程类型选择事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void ddlProcessTemplate_SelectedIndexChanged(object sender, EventArgs e) { LoadProcessSteps(); if (this.ddlProcessTemplate.SelectedIndex == 0) { this.ddlStepName.Enabled = false; this.ddlStepName.Items.Clear(); } else { this.ddlStepName.Enabled = true; //得到流程类型对应的流程步骤 TemplateAdmin TAdmin = new TemplateAdmin(); String l_strTemplateName = this.ddlProcessTemplate.SelectedValue; DataTable l_dtbDataTable = TAdmin.Templates.GetTemplate(l_strTemplateName).GetVersion(1).GetViewList(); //加入空选择行 DataRow l_dtrDataRow = l_dtbDataTable.NewRow(); l_dtrDataRow[0] = DBNull.Value; l_dtrDataRow[1] = ""; l_dtrDataRow[2] = DBNull.Value; l_dtbDataTable.Rows.InsertAt(l_dtrDataRow, 0); //绑定数据 this.ddlStepName.DataSource = l_dtbDataTable; this.ddlStepName.DataBind(); } #region 根据流程类型绑定特有字段 switch (this.ddlProcessTemplate.SelectedValue) { //公司发文 case ProcessConstString.TemplateName.COMPANY_SEND: case ProcessConstString.TemplateName.DJGT_Send: //renjinquan+ OADept.GetDeptByIfloor(drpGFDept, 1); break; //公司收文 case ProcessConstString.TemplateName.COMPANY_RECEIVE: case ProcessConstString.TemplateName.MERGED_RECEIVE: //renjinquan+ break; //函件收文 case ProcessConstString.TemplateName.LETTER_RECEIVE: OAList.BindHJLX2(ddlHSLetterType, true); break; //函件发文 case ProcessConstString.TemplateName.LETTER_SEND: OAList.BindHJLX(ddlHFLetterType, true); OADept.GetDeptByIfloor(this.ddlHFDept, 1); break; //程序文件 case ProcessConstString.TemplateName.PROGRAM_FILE: OADept.GetDeptByIfloor(this.ddlPFDept, 1); break; //工作联系单 case ProcessConstString.TemplateName.AFFILIATION: OADept.GetDeptByIfloor(this.ddlWRHostDept, 1); OADept.GetDeptByIfloor(this.ddlWRMainSendDept, 1); break; //请示报告 case ProcessConstString.TemplateName.INSTUCTION_REPORT: OAUser.GetUserByRole(this.ddlMainSendleader, OUConstString.RoleName.COMPANY_LEADER); OADept.GetDeptByIfloor(this.ddlUnderTakeDept, 1); OADept.GetDeptByIfloor(this.ddlHostDept, 1); break; } #endregion //chenye //LoadProcessList(); }
/// <summary> /// Saves the template dto. /// </summary> /// <param name="dto">The dto.</param> public static void SaveTemplateDto(TemplateDto dto) { TemplateAdmin admin = new TemplateAdmin(dto); admin.Save(); }
private void FillTemplate(int id) { DataRow drE = DatabaseConnection.CreateDataset("SELECT * FROM ESTIMATES WHERE ID=" + id).Tables[0].Rows[0]; DataRow drC = DatabaseConnection.CreateDataset("SELECT * FROM BASE_COMPANIES WHERE ID=" + drE["ClientID"].ToString()).Tables[0].Rows[0]; string curSymbol = DatabaseConnection.SqlScalar("SELECT CURRENCYSYMBOL FROM CURRENCYTABLE WHERE ID=" + drE["currency"].ToString()); decimal chTo = Convert.ToDecimal(drE["change"]); TemplateAdmin ta = new TemplateAdmin(); ta.TemplateName = "Estimate"; ta.Language = UC.CultureSpecific; ta.ApplicationPath = Request.PhysicalApplicationPath; ta.Global = false; string template = ta.GetTemplate(); template = template.Replace("Tustena.Logo", ta.GetLogo()); template = template.Replace("Tustena.CompanyName", drC["CompanyName"].ToString()); template = template.Replace("Tustena.Address", drC["InvoicingAddress"].ToString()); template = template.Replace("Tustena.ZipCode", drC["InvoicingZipCode"].ToString()); template = template.Replace("Tustena.City", drC["InvoicingCity"].ToString()); template = template.Replace("Tustena.Province", drC["InvoicingStateProvince"].ToString()); template = template.Replace("Tustena.Nation", drC["InvoicingState"].ToString()); template = template.Replace("Tustena.Contact", DatabaseConnection.SqlScalar("SELECT ISNULL(SURNAME,'')+' '+ISNULL(NAME,'') FROM BASE_CONTACTS WHERE ID=" + drE["Referrerid"].ToString())); DataTable dte = DatabaseConnection.CreateDataset("SELECT * FROM ESTIMATEDROWS WHERE ESTIMATEID=" + id).Tables[0]; StringBuilder rows = new StringBuilder(); rows.Append("<table border=0 cellpadding=0 cellspacing=0 width=\"100%\" class=normal align=\"center\">"); rows.Append("<tr>"); rows.AppendFormat("<td width=\"30%\"><b>{0}</b></td>", Root.rm.GetString("CRMcontxt65")); rows.AppendFormat("<td width=\"10%\"><b>{0}</b></td>", Root.rm.GetString("CRMcontxt66")); rows.AppendFormat("<td width=\"10%\" align=right><b>{0}</b></td>", Root.rm.GetString("CRMcontxt67")); rows.AppendFormat("<td width=\"20%\" align=right><b>{0}</b></td>", Root.rm.GetString("CRMcontxt68")); rows.AppendFormat("<td width=\"10%\" align=right><b>{0}</b></td>", Root.rm.GetString("CRMcontxt69")); rows.AppendFormat("<td width=\"20%\" align=right><b>{0}</b></td>", Root.rm.GetString("CRMcontxt71")); rows.Append("</tr>"); decimal subTotal = 0; foreach (DataRow r in dte.Rows) { if (r["CatalogID"].ToString() != "0") { DataRow drp = DatabaseConnection.CreateDataset("SELECT * FROM CATALOGPRODUCTS WHERE ID=" + r["CatalogID"].ToString()).Tables[0].Rows[0]; rows.Append("<tr>"); rows.AppendFormat("<td width=\"30%\">{0}<br>{1}</td>", drp["ShortDescription"].ToString(), r["Description"].ToString()); rows.AppendFormat("<td width=\"10%\">{0}</td>", drp["Unit"].ToString()); rows.AppendFormat("<td width=\"10%\" align=right>{0}</td>", r["Qta"].ToString()); rows.AppendFormat("<td width=\"20%\" align=right>{1} {0}</td>", Math.Round(Convert.ToDecimal(r["Uprice"]) * chTo, 2).ToString(), curSymbol); rows.AppendFormat("<td width=\"10%\" align=right>{0}</td>", drp["Vat"].ToString()); rows.AppendFormat("<td width=\"20%\" align=right>{1} {0}</td>", Math.Round(Convert.ToDecimal(r["NewUprice"]) * chTo, 2).ToString(), curSymbol); rows.Append("</tr>"); } else { rows.Append("<tr>"); rows.AppendFormat("<td width=\"30%\">{0}</td>", r["Description"].ToString()); rows.AppendFormat("<td width=\"10%\"> </td>"); rows.AppendFormat("<td width=\"10%\" align=right>{0}</td>", r["Qta"].ToString()); rows.AppendFormat("<td width=\"20%\" align=right>{1} {0}</td>", Math.Round(Convert.ToDecimal(r["Uprice"]) * chTo, 2).ToString(), curSymbol); rows.AppendFormat("<td width=\"10%\" align=right> </td>"); rows.AppendFormat("<td width=\"20%\" align=right>{1} {0}</td>", Math.Round(Convert.ToDecimal(r["NewUprice"]) * chTo, 2).ToString(), curSymbol); rows.Append("</tr>"); } subTotal += Convert.ToDecimal(r["NewUprice"]); } rows.AppendFormat("<tr><td colspan=6 align=right style=\"BORDER-TOP:black 1px solid;padding-top:5px;\"><b>{1} {0}</b></td></tr>", Math.Round(subTotal * chTo, 2).ToString(), curSymbol); rows.Append("</table>"); template = template.Replace("Tustena.EstimateRows", rows.ToString()); template = template.Replace("Tustena.EstimateNotes", drE["Description"].ToString()); Result.Text = template; }
private void GetALLProcess() { string sInfo = ""; if (ddlFlowType.SelectedValue == "") { string sqlDEF = "SELECT DEF_Name FROM dbo.WF_PROC_DEFS WHERE STATUS='Released'"; DataTable dtDEF = SQLHelper.GetDataTable2(sqlDEF); foreach (DataRow dr in dtDEF.Rows) { string def = dr[0].ToString(); string sqlP = string.Format("SELECT Count(*) FROM WF_PROC_INSTS WHERE DEF_Name='{0}' ", def); sqlP += GetWhere(); DataTable dtP = SQLHelper.GetDataTable2(sqlP); if (dtP.Rows.Count > 0) { sInfo += def + " " + dtP.Rows[0][0].ToString() + "条。<br/>"; } } } else { #region 根据流程 string def = ddlFlowType.SelectedValue; string sqlP = string.Format("SELECT Count(*) FROM WF_PROC_INSTS WHERE DEF_Name='{0}' ", def); sqlP += GetWhere(); DataTable dtP = SQLHelper.GetDataTable2(sqlP); if (dtP.Rows.Count > 0) { sInfo += def + " " + dtP.Rows[0][0].ToString() + "条。<br/>"; } string[] pStatus = new string[] { "Running", "Completed", "Cancelled", "Suspended" }; string[] pStatusCN = new string[] { "运行中", "已完成", "已取消", "已暂停" }; for (int pp = 0; pp < pStatus.Length; pp++) { string sqlRunning = sqlP + string.Format(" AND STATUS='{0}'", pStatus[pp]); DataTable dtRunning = SQLHelper.GetDataTable2(sqlRunning); if (dtRunning.Rows.Count > 0) { sInfo += pStatusCN[pp] + ":" + dtRunning.Rows[0][0].ToString() + "条 "; } } #endregion sInfo += "<br/><br/>"; //根据步骤 TemplateAdmin TAdmin = new TemplateAdmin(); DataTable dtStep = TAdmin.Templates.GetTemplate(def).GetVersion(1).GetViewList(); sInfo += "<Table border='1'>"; foreach (DataRow dr in dtStep.Rows) { ; //Removed Completed Assigned New string[] stepStatus = new string[] { "Completed", "Assigned", "New", "Removed", "Overdue", "Carbon", "Reassigned" }; string[] stepStatusCN = new string[] { "已完成", "待处理", "待获取", "已移除", "已过期", "已暂停", "重新指派" }; string step = dr["Name"].ToString(); sInfo += "<tr>"; sInfo += "<td>"; sInfo += styleRed1 + step + styleRed2 + " "; sInfo += "</td>"; for (int kk = 0; kk < stepStatus.Length; kk++) { string sql = string.Format(@"SELECT Count(*) FROM WF_MANUAL_WORKITEMS a INNER JOIN WF_PROC_INSTS b ON a.PROC_INST_ID=b.PROC_INST_ID WHERE a.NAME='{0}' AND a.Status='{1}' ", step, stepStatus[kk]); DataTable dt = SQLHelper.GetDataTable2(sql); if (dt.Rows.Count > 0) { sInfo += "<td>"; if (stepStatusCN[kk] == "已完成") { sInfo += styleBlue1; } else if (stepStatusCN[kk] == "待处理" || stepStatusCN[kk] == "待获取") { sInfo += styleSilver1; } sInfo += stepStatusCN[kk] + " " + dt.Rows[0][0].ToString() + "条"; if (stepStatusCN[kk] == "已完成") { sInfo += styleBlue2; } else if (stepStatusCN[kk] == "待处理" || stepStatusCN[kk] == "待获取") { sInfo += styleSilver2; } sInfo += "</td>"; } } sInfo += "</tr>"; } sInfo += "</Table>"; } lblInfo.Text = sInfo; }