protected void btnAdd_Click(object sender, EventArgs e) { string[] RuleDetail = GetRuleDetail(); if (rblFieldType.SelectedValue == "0") { try { DbHelper.GetInstance().ExecSqlText(string.Format(" select {0} from Workflow_Form where RequestID=0", RuleDetail[0])); } catch { BindGridView(); ScriptManager.RegisterStartupScript(btnAdd, this.GetType(), "add", "alert('赋值表达式不正确,无法添加');", true); return; } } else { try { DbHelper.GetInstance().ExecSqlText(string.Format(" select {0} from Workflow_FormDetail where RequestID=0", RuleDetail[0])); } catch { BindGridView(); ScriptManager.RegisterStartupScript(btnAdd, this.GetType(), "add", "alert('赋值表达式不正确,无法添加');", true); return; } } DataTable dtExpression = (DataTable)ViewState["dtExpression"]; Workflow_TriggerWFFieldMappingEntity _TFM = new Workflow_TriggerWFFieldMappingEntity(); _TFM.TriggerID = Convert.ToInt32(DNTRequest.GetString("TriggerID")); _TFM.TargetGroupID = Int32.Parse(ddlFieldIDTo.SelectedValue.Substring(ddlFieldIDTo.SelectedValue.IndexOf(",") + 1)); _TFM.TargetFieldID = Int32.Parse(ddlFieldIDTo.SelectedValue.Substring(0, ddlFieldIDTo.SelectedValue.IndexOf(","))); _TFM.SourceGroupID = Int32.Parse(rblFieldType.SelectedValue); _TFM.SourceFieldTypeID = Convert.ToByte((rblFieldType.SelectedValue == "0") ? "1" : "2"); _TFM.OPCycleType = Convert.ToByte(ddlOPCycleType.SelectedValue); _TFM.SourceFieldName = RuleDetail[0]; DbHelper.GetInstance().AddWorkflow_TriggerWFFieldMapping(_TFM, dtExpression); dtExpression.Rows.Clear(); ViewState["dtExpression"] = dtExpression; lblExpression.Text = ""; BindGridView(); System.Web.UI.ScriptManager.RegisterStartupScript(btnAdd, this.GetType(), "ButtonHideScript", strButtonHideScript, false); }
/// <summary> /// 新增信息 /// </summary> /// <param name="_Workflow_TriggerWFFieldMappingEntity"></param> /// <param name="dtTriggerExpression"></param> /// <returns></returns> public string AddWorkflow_TriggerWFFieldMapping(Workflow_TriggerWFFieldMappingEntity _Workflow_TriggerWFFieldMappingEntity, DataTable dtTriggerExpression) { //判断该记录是否已经存在 DbParameter[] prams = { MakeInParam("@TriggerID",(DbType)SqlDbType.Int ,4,_Workflow_TriggerWFFieldMappingEntity.TriggerID ), MakeInParam("@TargetFieldID",(DbType)SqlDbType.Int,4,_Workflow_TriggerWFFieldMappingEntity.TargetFieldID) }; string sql = "select * from Workflow_TriggerWFFieldMapping where TriggerID=@TriggerID and TargetFieldID=@TargetFieldID"; if (ExecuteDataset(CommandType.Text, sql, prams).Tables[0].Rows.Count > 0) { return "-1";//该记录已经存在 } else { try { DbParameter[] pramsInsert = { MakeInParam("@TriggerID",(DbType)SqlDbType.Int,4,_Workflow_TriggerWFFieldMappingEntity.TriggerID ), MakeInParam("@TargetFieldID",(DbType)SqlDbType.Int,4,_Workflow_TriggerWFFieldMappingEntity.TargetFieldID ), MakeInParam("@TargetGroupID",(DbType)SqlDbType.Int,4,_Workflow_TriggerWFFieldMappingEntity.TargetGroupID ), MakeInParam("@SourceGroupID",(DbType)SqlDbType.Int,4,_Workflow_TriggerWFFieldMappingEntity.SourceGroupID ), MakeInParam("@SourceFieldName",(DbType)SqlDbType.VarChar,2000,_Workflow_TriggerWFFieldMappingEntity.SourceFieldName ), MakeInParam("@OPCycleType",(DbType)SqlDbType.TinyInt ,1,_Workflow_TriggerWFFieldMappingEntity.OPCycleType ), MakeInParam("@SourceFieldTypeID",(DbType)SqlDbType.TinyInt ,1,_Workflow_TriggerWFFieldMappingEntity.SourceFieldTypeID ) }; StringBuilder sb = new StringBuilder(); sb.Append("INSERT INTO [dbo].[Workflow_TriggerWFFieldMapping]"); sb.Append("("); sb.Append("[TriggerID]"); sb.Append(",[TargetFieldID]"); sb.Append(",[TargetGroupID]"); sb.Append(",[SourceGroupID]"); sb.Append(",[SourceFieldName]"); sb.Append(",[OPCycleType]"); sb.Append(",[SourceFieldTypeID]"); sb.Append(") "); sb.Append(" VALUES ("); sb.Append("@TriggerID,"); sb.Append("@TargetFieldID,"); sb.Append("@TargetGroupID,"); sb.Append("@SourceGroupID,"); sb.Append("@SourceFieldName,"); sb.Append("@OPCycleType,"); sb.Append("@SourceFieldTypeID"); sb.Append("); "); sb.Append("select @@identity;"); int mappingID = Convert.ToInt32(ExecuteScalar(CommandType.Text, sb.ToString(), pramsInsert)); for (int i = 0; i < dtTriggerExpression.Rows.Count; i++) { DbParameter[] pramsExprInsert = { MakeInParam("@MappingID",(DbType)SqlDbType.Int,4,mappingID ), // MakeInParam("@SourceFieldID",(DbType)SqlDbType.Int,4,dtTriggerExpression.Rows[i]["SourceFieldID"] ), MakeInParam("@ComputeType",(DbType)SqlDbType.Int,4,dtTriggerExpression.Rows[i]["ComputeType"] ), MakeInParam("@ExpressionValue",(DbType)SqlDbType.VarChar,500,dtTriggerExpression.Rows[i]["ExpressionValue"] ), MakeInParam("@ExpressionOrder",(DbType)SqlDbType.TinyInt ,1,dtTriggerExpression.Rows[i]["ExpressionOrder"] ), }; string sqlInsert = @" insert into Workflow_NodeTriggerExpression(MappingID,ComputeType,ExpressionValue,ExpressionOrder) values(@MappingID,@ComputeType,@ExpressionValue,@ExpressionOrder) "; ExecuteScalar(CommandType.Text, sqlInsert, pramsExprInsert); } return "1"; } catch { return "0"; } finally { } } }