/// <summary> /// 读取流程 /// 添加人;张西琼 /// 时间:2014/8/5 /// </summary> /// <returns></returns> public string Prcoess(string flowName, int isUnlock, bool isMaxVersion) { ViewData["flowName"] = flowName; var list = new FeProcessBll().GetProcess2(flowName, isUnlock, isMaxVersion); return(JsonConvert.SerializeObject(list)); }
/// <summary> /// 初始化流程列表 /// 添加人;张西琼 /// 时间:2014/8/5 /// </summary> /// <param name="_flowName">流程名</param> /// <returns></returns> public ActionResult List(string _flowName) { int _iIsUnlock = -1; bool _bisMaxVersion = false; List <FeProcessEntity> flowList = new FeProcessBll().GetProcess(_flowName, _iIsUnlock, _bisMaxVersion); ViewData["flowName"] = _flowName; return(View()); }
public JsonResult SaveProcess(string xml, string processId, string flowName, string version) { try { var filePath = Request.PhysicalApplicationPath; var isOk = new FeProcessBll().SaveProcess(xml, filePath, processId, "", version, flowName, false, false); var rtEntity = new StatusModel <DBNull> { rtData = null, rtMsrg = isOk ? "成功" : "失败", rtState = isOk ? 0 : 1 }; return(Json(rtEntity, JsonRequestBehavior.AllowGet)); } catch (Exception ex) { return(null); } }
/// <summary> /// 删除流程 /// 添加人:周 鹏 /// 添加时间:2014-07-21 /// </summary> /// <history> /// 修改描述:时间+作者+描述 /// </history> /// <param name="procesId">流程编号</param> /// <returns></returns> public JsonResult Delete(string procesId) { var rtEntity = new StatusModel <DBNull>(); if (!string.IsNullOrEmpty(procesId)) { var isOk = new FeProcessBll().DeleteProcess(procesId); rtEntity.rtData = null; rtEntity.rtMsrg = ""; rtEntity.rtState = isOk ? 0 : 1; } else { rtEntity.rtData = null; rtEntity.rtMsrg = "未获得可用于删除的流程……"; rtEntity.rtState = 3; } return(Json(rtEntity, JsonRequestBehavior.AllowGet)); }
/// <summary> /// 读取流程 /// </summary> /// <param name="flowName">流程名称</param> /// <returns></returns> public JsonResult ReadProcess(string flowName) { var list = new FeProcessBll().QueryByFlowName(flowName); var rtEntity = new StatusModel <FeProcessEntity>(); if (list.Count > 0) { rtEntity.rtData = list; rtEntity.rtMsrg = "成功"; rtEntity.rtState = 0; } else if (list.Count > 1) { rtEntity.rtData = null; rtEntity.rtMsrg = "未找到流程[" + flowName + "]对应的流程记录……"; rtEntity.rtState = 1; } return(Json(rtEntity, JsonRequestBehavior.AllowGet)); }
public JsonResult Issuance(string xml, string processId, string flowName, string version) { //如果没有版本号,就执行保存而不发布 var bisIssuance = false; //是否是第一次发布 var isFirstIssuance = true; if (!string.IsNullOrEmpty(version)) { bisIssuance = true; isFirstIssuance = false; } var filePath = Request.PhysicalApplicationPath; var nversion = new FeProcessBll().GetVersion(flowName.Trim());//得到发布版本 var isOk = new FeProcessBll().SaveProcess(xml, filePath, "", processId, nversion, flowName, bisIssuance, isFirstIssuance); var rtEntity = new StatusModel <DBNull> { rtData = null, rtMsrg = isOk ? "您成功发布了流程[" + flowName + "],版本号:" + nversion + "……" : "失败", rtState = isOk ? 0 : 1 }; return(Json(rtEntity, JsonRequestBehavior.AllowGet)); }
/// <summary> /// 保存节点对象 /// </summary> /// <param name="activity">节点基本属性</param> /// <param name="note">接收对象Json数据</param> /// <param name="rules">规则Json数据</param> /// <param name="activityId">节点编号</param> /// <param name="processId">流程编号</param> /// <param name="oldNoneName">节点名称</param> /// <returns></returns> public JsonResult SaveActivity(string activity, string note, string rules, string activityId, string processId, string oldNoneName) { var rtEntity = new StatusModel <DBNull> { rtData = null, rtMsrg = "", rtState = 1 }; var strArry = activity.Split('|'); var noneName = strArry[1].Trim(); #region 保存流程 var feOldProcess = new FeProcessBll().QueryByFlowId(processId); if (feOldProcess.Count > 0) { if (!string.IsNullOrEmpty(oldNoneName)) { feOldProcess[0].FlowChart = feOldProcess[0].FlowChart.Replace(oldNoneName, noneName); } feOldProcess[0].Id = Guid.NewGuid().ToString(); if (!new FeProcessBll().SaveProcess(feOldProcess[0])) { rtEntity.rtData = null; rtEntity.rtMsrg = "主流程保存失败!"; rtEntity.rtState = 1; } } else { rtEntity.rtData = null; rtEntity.rtMsrg = "未查到流程!"; rtEntity.rtState = 1; return(Json(rtEntity, JsonRequestBehavior.AllowGet)); } #endregion #region 保存节点属性 var feActivityEntity = new FeActivityEntity(); if (string.IsNullOrEmpty(activityId)) { activityId = Guid.NewGuid().ToString(); } feActivityEntity.ActivityID = activityId; feActivityEntity.ProcessID = processId; feActivityEntity.NoneID = strArry[0].Trim(); feActivityEntity.NoneName = strArry[1].Trim(); feActivityEntity.SendORWithdrawalActivityID = strArry[2].Trim(); feActivityEntity.FormAddress = strArry[3].Trim(); if (strArry[4].Trim() == "1") { feActivityEntity.IsContrastCommunity = true; } if (strArry[5].Trim() == "1") { feActivityEntity.IsContrastRule = true; } if (strArry[6].Trim() == "1") { feActivityEntity.IsSendOnOpener = true; } feActivityEntity.NoneDisposeManner = Convert.ToInt32(strArry[7].Trim()); feActivityEntity.FulfillAssemblyName = strArry[8].Trim(); feActivityEntity.FulfillClassFullName = strArry[9].Trim(); feActivityEntity.OverdueAssemblyName = strArry[10].Trim(); feActivityEntity.OverdueClassFullName = strArry[11].Trim(); feActivityEntity.OverdueHour = Convert.ToInt32(strArry[12].Trim()); feActivityEntity.Remark = strArry[13].Trim(); var istrue = new FeActivityBll().ExitstActivityId(feActivityEntity.ActivityID); if (istrue) { if (new FeActivityBll().DeleActivity(feActivityEntity.ActivityID)) { new FeActivityBll().Save(feActivityEntity); } } else { if (!new FeActivityBll().Save(feActivityEntity)) { rtEntity.rtData = null; rtEntity.rtMsrg = "当前节点不存在!"; rtEntity.rtState = 1; return(Json(rtEntity, JsonRequestBehavior.AllowGet)); } } #endregion #region 保存接收对象 var listActionInstance = JsonConvert.DeserializeObject <List <FeActionInstanceEntity> >(note); //序列化Json var saveActionInstance = new FeActionInstanceBll().SaveActionInstance(listActionInstance, activityId); //保存接收对象 if (!saveActionInstance) { rtEntity.rtData = null; rtEntity.rtMsrg = "保存对象失败!"; rtEntity.rtState = 1; return(Json(rtEntity, JsonRequestBehavior.AllowGet)); } #endregion #region 保存规则 if (!string.IsNullOrEmpty(rules)) { var ruleList = JsonConvert.DeserializeObject <List <FeRuleCodeEntity> >(rules); var saveRule = new FeRuleCodeBll().SaveRule(ruleList, activityId); //保存规则 if (!saveRule) { rtEntity.rtData = null; rtEntity.rtMsrg = "保存规则失败!"; rtEntity.rtState = 1; } } #endregion return(Json(rtEntity, JsonRequestBehavior.AllowGet)); }