public ActionResult NewPriceApproveStep(PriceApproveFlowStepViewModel model) { if (ModelState.IsValid) { //检查数据 if (model.ConditionExpression == null || model.ConditionExpression == string.Empty) { if (model.Conditions != null && model.Conditions.Count > 1) { return Json(InnoSoft.LS.Resources.Strings.NotEnterConditionExpressionWhenMultiConditions); } } else { if (model.Conditions == null || model.Conditions.Count <= 1) { return Json(InnoSoft.LS.Resources.Strings.CanNotEnterConditionExpressionWhenNoOrOneCondition); } } //创建数据 ApproveFlowStep data = new ApproveFlowStep(); data.StepName = model.StepName; data.StepNum = model.StepNum; data.FlowType = InnoSoft.LS.Resources.Options.PriceApproveFlow; data.DisposerId = model.DisposerId; data.ConditionExpression = model.ConditionExpression; List<ApproveFlowStepCondition> listConditions = new List<ApproveFlowStepCondition>(); if (model.Conditions != null) { foreach (PriceApproveFlowStepConditionViewModel m in model.Conditions) { ApproveFlowStepCondition c = new ApproveFlowStepCondition(); c.FlowType = InnoSoft.LS.Resources.Options.PriceApproveFlow; c.ConditionNum = m.ConditionNum; c.FieldName = m.FieldName; c.CompareOperator = m.CompareOperator; c.FieldValue = m.FieldValue; listConditions.Add(c); } } //保存数据 string strErrText; FlowSystem flow = new FlowSystem(); if (flow.InsertApproveFlowStep(data, listConditions, LoginAccountId, LoginStaffName, out strErrText) > 0) { return Json(string.Empty); } else { return Json(strErrText); } } return View(model); }
/// <summary> /// 新增审批流程步骤执行条件数据 /// </summary> /// <param name="data">步骤条件数据集</param> /// <param name="nOpStaffId">操作员工编码</param> /// <param name="strOpStaffName">操作员工姓名</param> /// <param name="strErrText">出错信息</param> /// <returns></returns> public bool InsertApproveFlowStepCondition(ApproveFlowStepCondition data, long nOpStaffId, string strOpStaffName, out string strErrText) { //创建参数数组 SqlParameter[] Params = { MakeParam(STEPID_PARAM, SqlDbType.BigInt, 8, ParameterDirection.Input, (object)data.StepId), MakeParam(FLOWTYPE_PARAM, SqlDbType.NVarChar, 50, ParameterDirection.Input, (object)data.FlowType), MakeParam(CONDITIONNUM_PARAM, SqlDbType.Int, 4, ParameterDirection.Input, (object)data.ConditionNum), MakeParam(FIELDNAME_PARAM, SqlDbType.NVarChar, 50, ParameterDirection.Input, (object)data.FieldName), MakeParam(COMPAREOPERATOR_PARAM, SqlDbType.NVarChar, 20, ParameterDirection.Input, (object)data.CompareOperator), MakeParam(FIELDVALUE_PARAM, SqlDbType.NVarChar, 100, ParameterDirection.Input, (object)data.FieldValue), MakeParam(OPSTAFFID_PARAM, SqlDbType.BigInt, 8, ParameterDirection.Input, (object)nOpStaffId), MakeParam(OPSTAFFNAME_PARAM, SqlDbType.NVarChar, 50, ParameterDirection.Input, (object)strOpStaffName) }; if (Execute("InsertApproveFlowStepCondition", Params, out strErrText) >= 0) return true; else return false; }