Example #1
0
        /// <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));
        }
Example #2
0
        /// <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());
        }
Example #3
0
 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);
     }
 }
Example #4
0
        /// <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));
        }
Example #5
0
        /// <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));
        }
Example #6
0
        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));
        }
Example #7
0
        /// <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));
        }