コード例 #1
0
 /// <summary>
 /// 更新流程表{流程表}对象(即:一条记录
 /// </summary>
 public int Update(TemplateFlow templateFlow)
 {
     using (var dbContext = UnitOfWork.Get(Unity.ContainerName))
     {
         return(new TemplateFlowRepository(dbContext).Update(templateFlow));
     }
 }
コード例 #2
0
ファイル: Program.cs プロジェクト: sshaky2/NetFlow
        static void Main(string[] args)
        {
            Console.WriteLine("Netflow Export Sample Program");

            var templateDef =
                new TemplateFlow(555)
                .Field(FieldType.IPV4SourceAddress, 4)
                .Field(FieldType.IPV4DestionationAddress, 4)
                .Field(FieldType.L4SourcePort, 2)
                .Field(FieldType.L4DestionationPort, 2)
                .Field(FieldType.Protocol, 1)
                .Field(FieldType.InputBytes, 4)
                .Field(FieldType.InputPackets, 4)
            ;

            var templateData =
                new TemplateData(templateDef)
                .Data(IPAddress.Parse("192.168.10.66"),
                      IPAddress.Parse("10.12.13.14"),
                      (ushort)7777,
                      (ushort)21,
                      (byte)ProtocolType.Tcp,
                      (UInt32)20 * 1024,
                      (UInt32)20
                      )
                .Data(IPAddress.Parse("192.168.10.67"),
                      IPAddress.Parse("10.12.13.14"),
                      (ushort)6564,
                      (ushort)21,
                      (byte)ProtocolType.Tcp,
                      (UInt32)15 * 1024,
                      (UInt32)15
                      )
            ;

            var exportData =
                new ExportPacket(0, 1235)
                .Template(templateData)
                .GetData();

            Console.WriteLine("Size = " + exportData.Length);
            Console.WriteLine("Data = " + BitConverter.ToString(exportData).Replace("-", " "));

            Send(exportData, "127.0.0.1", 9991);

            Console.WriteLine("Press enter to exit");
            Console.ReadLine();
        }
コード例 #3
0
 /// <summary>
 /// 更新流程表{流程表}对象(即:一条记录
 /// </summary>
 public int Update(TemplateFlow templateFlow)
 {
     return(Update <TemplateFlow>(templateFlow));
 }
コード例 #4
0
 /// <summary>
 /// 添加流程表{流程表}对象(即:一条记录
 /// </summary>
 public long Add(TemplateFlow templateFlow)
 {
     return(Add <TemplateFlow>(templateFlow));
 }
コード例 #5
0
        private R <string> ValidateDealStep(DealStepDTO dto, InstanceStepDTO AInstanceStep)
        {
            R <string> vResMsg = new R <string>();

            vResMsg.Code = 1;
            InstanceFlow vFlowEntity = AInstanceStep.InstanceFlow;
            InstanceStep vStepEntity = AInstanceStep.InstanceStep;
            TemplateFlow vTempFlow   = AInstanceStep.TemplateFlow;
            TemplateStep vTempStep   = AInstanceStep.TemplateStep;

            //检查工作组是否正确
            if (!vFlowEntity.GroupId.Equals(dto.GroupID))
            {
                vResMsg.Msg = "流程实例与用户的工作组不匹配!";
                return(vResMsg);
            }

            //检查流程实例状态是否合适
            if (new int[] { 4, 5, 6 }.Contains(vFlowEntity.Status) ||
                new int[] { 4, 5, 6, 7 }.Contains(vStepEntity.Status) ||
                !vStepEntity.Progress.Equals(7))
            {
                vResMsg.Msg = "流程实例的当前状态不适合完成此操作!";
                return(vResMsg);
            }

            //检查用户是否合法
            InstanceStepUser vStepUser = (from InstanceStepUser vItem in vStepEntity.InstanceStepUsers
                                          where vItem.UserCode.Equals(dto.UserCode)
                                          select vItem).FirstOrDefault();

            if (vStepUser == null)
            {
                vResMsg.Msg = "当前用户没有操作权限!";
                return(vResMsg);
            }

            //处理方式与身份是否匹配
            if (vStepUser.UserType.Equals(3) && !dto.Status.Equals(5))
            {
                vResMsg.Msg = "当前操作超过了用户的权限!";
                return(vResMsg);
            }

            //用户是否已提交
            if (new int[] { 1, 2, 3, 4 }.Contains(vStepUser.Status))
            {
                vResMsg.Msg = "当前步骤的操作已完成!";
                return(vResMsg);
            }

            //检查处理意见
            if (new int[] { 1, 2, 4 }.Contains(dto.Status) && vTempStep.IsFormSuggestion && string.IsNullOrWhiteSpace(dto.Content))
            {
                vResMsg.Msg = "未接收到流程要求填写的主办或汇签意见!";
                return(vResMsg);
            }

            //检查退回步骤设置
            if (dto.Status.Equals(2))
            {
                vResMsg = CheckReturnStepItem(dto, AInstanceStep);
                if (vResMsg.Code == 1)
                {
                    return(vResMsg);
                }
            }
            else if (dto.Status.Equals(1))
            {
                //检查跳转步骤设置
                vResMsg = CheckTransferStepItem(dto, vStepEntity, vTempStep);
                if (vResMsg.Code == 1)
                {
                    return(vResMsg);
                }

                //检查下一步处理人是否填写正确
                if (!vResMsg.Data.Equals("HasCheckUser"))
                {
                    vResMsg = CheckFixNextUser(dto, vStepEntity, vTempStep);
                    if (vResMsg.Code == 1)
                    {
                        return(vResMsg);
                    }
                }
            }
            vResMsg.Code = 0;
            return(vResMsg);
        }