コード例 #1
0
 /// <summary>
 /// 更新可选下一步骤列表{可选下一步骤列表}对象(即:一条记录
 /// </summary>
 public int Update(TemplateStepFixstepList templateStepFixstepList)
 {
     using (var dbContext = UnitOfWork.Get(Unity.ContainerName))
     {
         return(new TemplateStepFixstepListRepository(dbContext).Update(templateStepFixstepList));
     }
 }
コード例 #2
0
        private void AddReturnOptions(List <TemplateStepFixstepList> AList, TemplateStep AStepModel, string AStepName = "")
        {
            if (AStepModel == null || AList == null)
            {
                return;
            }

            if (!CheckHasExistReturnOptions(AList, AStepModel))
            {
                TemplateStepFixstepList vModel = new TemplateStepFixstepList();
                vModel.Fid            = Guid.NewGuid().ToString();
                vModel.StepId         = AStepModel.Fid;
                vModel.SelectStepSeq  = AStepModel.Seq;
                vModel.SelectStepName = string.IsNullOrWhiteSpace(AStepName) ? AStepModel.StepName : AStepName;
                vModel.IsReturn       = true;
                vModel.Remark         = AStepModel.Seq.ToString() + "." + AStepModel.StepName;
                AList.Add(vModel);
            }
        }
コード例 #3
0
        /// <summary>
        /// 检查通过情况下跳转步骤设置
        /// </summary>
        /// <param name="dto">步骤信息</param>
        /// <param name="AStepEntity">步骤实例</param>
        /// <param name="ATempStep">模板步骤实例</param>
        /// <returns></returns>
        private R <string> CheckTransferStepItem(DealStepDTO dto, InstanceStep AStepEntity, TemplateStep ATempStep)
        {
            R <string> vResMsg = new R <string>();

            //不可填写的,但却填写了的
            if ((!ATempStep.IsFormNextstep || ATempStep.IsFormNextstep && ATempStep.TemplateStepFixstepLists.Count <= 0) &&
                !string.IsNullOrWhiteSpace(dto.NextStepSeq))
            {
                vResMsg.Msg = "流程没有要求选择的下一个处理步骤,但此处却填写了!";
                return(vResMsg);
            }

            //要求必须填写的,但却没有填写的
            if (ATempStep.IsFormNextstep && ATempStep.IsFormNextstepMust && ATempStep.TemplateStepFixstepLists.Count > 0)
            {
                if (string.IsNullOrWhiteSpace(dto.NextStepSeq))
                {
                    vResMsg.Msg = "未接收到流程要求选择的下一个处理步骤!";
                    return(vResMsg);
                }
            }

            //填写过的
            if (!string.IsNullOrWhiteSpace(dto.NextStepSeq))
            {
                TemplateStepFixstepList vFindTempFixStep = (from TemplateStepFixstepList vItem in ATempStep.TemplateStepFixstepLists
                                                            where !vItem.IsReturn && vItem.SelectStepSeq.ToString().Equals(dto.NextStepSeq)
                                                            select vItem).FirstOrDefault();
                if (vFindTempFixStep == null)
                {
                    vResMsg.Msg = "接收到的下一个处理步骤与流程要求的跳转步骤不符!";
                    return(vResMsg);
                }

                //检查跳转下的处理人
                var vList = from InstanceStepFixSeluser vFixUser in AStepEntity.InstanceStepFixSelusers
                            where vFixUser.FixstepId.Equals(vFindTempFixStep.Fid)
                            select vFixUser;

                //必须填写处理人但却没有填写的
                if (vFindTempFixStep.IsFormNextman && vFindTempFixStep.IsFormNextmanMust && vList.Any())
                {
                    if (dto.NextUserList == null || dto.NextUserList.Count <= 0)
                    {
                        vResMsg.Msg = "未接收到流程要求选择的下一步处理人!";
                        return(vResMsg);
                    }
                }
                //可以填写处理人,且已填写了处理人的
                if (vFindTempFixStep.IsFormNextman && vList.Any() && dto.NextUserList != null && dto.NextUserList.Count > 0)
                {
                    List <InstanceStepFixSeluser> vNewLsit = vList.ToList();

                    var vItems = from USERINFO vSupplyUser in dto.NextUserList
                                 where !vNewLsit.Exists(AItem => AItem.UserCode.Equals(vSupplyUser.UserCode))
                                 select vSupplyUser.UserCode;

                    if (vItems.Any())
                    {
                        vResMsg.Msg = string.Format("接收到下一步处理人与流程要求选择的不符(如:{0})!", vItems.FirstOrDefault());
                        return(vResMsg);
                    }

                    vResMsg.Data = "HasCheckUser";
                }
            }

            vResMsg.Code = 0;
            return(vResMsg);
        }
コード例 #4
0
 /// <summary>
 /// 更新可选下一步骤列表{可选下一步骤列表}对象(即:一条记录
 /// </summary>
 public int Update(TemplateStepFixstepList templateStepFixstepList)
 {
     return(Update <TemplateStepFixstepList>(templateStepFixstepList));
 }
コード例 #5
0
 /// <summary>
 /// 添加可选下一步骤列表{可选下一步骤列表}对象(即:一条记录
 /// </summary>
 public long Add(TemplateStepFixstepList templateStepFixstepList)
 {
     return(Add <TemplateStepFixstepList>(templateStepFixstepList));
 }