public object PostLoadEmailForm(PostLoadEmailFormDTO model)
        {
            Guid?        dynamicFormId = model.DynamicFormId.ToGuidObjNull();
            DCEmailModel designCode    = null;

            if (!string.IsNullOrWhiteSpace(model.XmlB64Model))
            {
                designCode = DesignCodeUtility.GetObjectOfDesignCode <DCEmailModel>(model.XmlB64Model.ToStringObj().FromBase64());

                designCode.IsOutputYes = model.IsOutputYes;
            }
            else
            {
                designCode = new DCEmailModel(Guid.NewGuid().ToString(), "Email", model.ShapeId.ToStringObj(),
                                              model.ParentShapeId.ToStringObj(), model.IsOutputYes, model.IsFirst.ToBoolObj(), string.Empty, Guid.Empty, "", "", "");
            }

            using (DynamicFormService dynamicFormService = new DynamicFormService())
                using (EmailAccountService emailAccountService = new EmailAccountService())
                    return new
                           {
                               ListEmailAccounts = emailAccountService.GetList((int)sysBpmsEmailAccount.e_ObjectTypeLU.Systemic, null, null).Select(c => new QueryModel(c.ID.ToString(), c.Email)).ToList(),
                               DynamicFormId     = dynamicFormId,
                               ProcessControls   = dynamicFormId != Guid.Empty && dynamicFormId.HasValue ?
                                                   dynamicFormService.GetControls(dynamicFormService.GetInfo(dynamicFormId.Value)).Select(c => new QueryModel(c.Key, c.Value)).ToList() : new List <QueryModel>(),
                               Model = designCode
                           };
        }
        public object PostLoadSqlFunctionForm(PostLoadSqlFunctionFormDTO model)
        {
            Guid?dynamicFormId            = model.DynamicFormId.ToGuidObjNull();
            DCSqlFunctionModel designCode = null;

            if (!string.IsNullOrWhiteSpace(model.XmlB64Model))
            {
                designCode = DesignCodeUtility.GetObjectOfDesignCode <DCSqlFunctionModel>(model.XmlB64Model.ToStringObj().FromBase64());

                designCode.IsOutputYes = model.IsOutputYes;
            }
            else
            {
                designCode = new DCSqlFunctionModel(Guid.NewGuid().ToString(), "Sql Query", string.Empty, string.Empty
                                                    , model.ShapeId.ToStringObj(), model.ParentShapeId.ToStringObj(),
                                                    model.IsOutputYes, null, model.IsFirst.ToBoolObj(), string.Empty);
            }

            using (DynamicFormService dynamicFormService = new DynamicFormService())
                return new
                       {
                           ListMethodTypes = EnumObjHelper.GetEnumList <DCSqlFunctionModel.e_MethodType>().Select(c => new QueryModel(c.Key.ToString(), c.Value)).ToList(),
                           DynamicFormId   = dynamicFormId,
                           ProcessControls = dynamicFormId != Guid.Empty && dynamicFormId.HasValue ?
                                             dynamicFormService.GetControls(dynamicFormService.GetInfo(dynamicFormId.Value)).Select(c => new QueryModel(c.Key, c.Value)).ToList() : new List <QueryModel>(),
                           Model = designCode
                       };
        }
        public object PostLoadConditionForm(PostLoadConditionFormDTO model)
        {
            Guid?            dynamicFormId = model.DynamicFormId.ToGuidObjNull();
            DCConditionModel designCode;

            if (!string.IsNullOrWhiteSpace(model.Data))
            {
                designCode = DesignCodeUtility.GetObjectOfDesignCode <DCConditionModel>(model.Data.ToStringObj().FromBase64());

                designCode.IsOutputYes = model.IsOutputYes.ToBoolObjNull();
                if (string.IsNullOrWhiteSpace(designCode.FuncName))
                {
                    designCode.FuncName = DesignCodeUtility.GetFunctionName(designCode.ShapeID);
                }
            }
            else
            {
                designCode = new DCConditionModel(Guid.NewGuid().ToString(), model.Name.ToStringObj(),
                                                  model.ShapeId.ToStringObj(), model.ParentShapeId.ToStringObj(),
                                                  model.IsOutputYes.ToBoolObjNull(), new List <DCRowConditionModel>(), model.IsFirst.ToBoolObj(), null);
            }

            using (VariableService variableService = new VariableService())
                using (DynamicFormService dynamicFormService = new DynamicFormService())
                    return new
                           {
                               ProcessControls = dynamicFormId != Guid.Empty && dynamicFormId.HasValue ?
                                                 dynamicFormService.GetControls(dynamicFormService.GetInfo(dynamicFormId.Value)).Select(c => new QueryModel(c.Key, c.Value)).ToList() : new List <QueryModel>(),
                               ListOperationTypes = EnumObjHelper.GetEnumList <DCRowConditionModel.e_OperationType>().Select(c => new QueryModel(c.Key.ToString(), c.Value)).ToList(),
                               Model = designCode
                           };
        }
        public object PostLoadCallMethodForm(PostLoadCallMethodFormDTO model)
        {
            Guid?dynamicFormId = model.DynamicFormId.ToGuidObjNull();

            DCCallMethodModel designCode = null;

            if (!string.IsNullOrWhiteSpace(model.XmlB64Model.ToStringObj()))
            {
                designCode = DesignCodeUtility.GetObjectOfDesignCode <DCCallMethodModel>(model.XmlB64Model.ToStringObj().FromBase64());

                designCode.IsOutputYes = model.IsOutputYes;
            }
            else
            {
                designCode = new DCCallMethodModel(Guid.NewGuid().ToString(), string.Empty, model.ShapeId.ToStringObj(),
                                                   model.ParentShapeId.ToStringObj(), model.IsOutputYes, model.IsFirst, model.DefaultMethodID,
                                                   model.DefaultMethodGroupType);
            }
            using (DynamicFormService dynamicFormService = new DynamicFormService())
                return new
                       {
                           DynamicFormId   = dynamicFormId,
                           ProcessControls = dynamicFormId != Guid.Empty && dynamicFormId.HasValue ?
                                             dynamicFormService.GetControls(dynamicFormService.GetInfo(dynamicFormId.Value)).Select(c => new QueryModel(c.Key, c.Value)).ToList() : new List <QueryModel>(),
                           Model = designCode
                       };
        }
        public object PostLoadExpressionCodeForm(PostLoadExpressionCodeFormDTO model)
        {
            DCExpressionModel designCode;
            Guid?dynamicFormId = model.DynamicFormId.ToGuidObjNull();

            if (!string.IsNullOrWhiteSpace(model.Data))
            {
                designCode             = DesignCodeUtility.GetObjectOfDesignCode <DCExpressionModel>(model.Data.FromBase64());
                designCode.IsOutputYes = model.IsOutputYes;
                if (string.IsNullOrWhiteSpace(designCode.FuncName))
                {
                    designCode.FuncName = DesignCodeUtility.GetFunctionName(designCode.ShapeID);
                }
            }
            else
            {
                designCode = new DCExpressionModel(Guid.NewGuid().ToString(), model.Name.ToStringObj(),
                                                   model.ShapeId.ToStringObj(), model.ParentShapeId.ToStringObj(),
                                                   "", model.IsOutputYes, model.IsFirst.ToBoolObj(), null);
            }
            designCode.Assemblies     = string.Join(",", designCode.Assemblies.ToStringObj().Split(',').Select(c => c.Trim()).ToList());
            designCode.ExpressionCode = designCode.ExpressionCode.ToStringObj().Replace("\\", "\\\\");
            using (DocumentFolderService documentFolderService = new DocumentFolderService())
                using (DepartmentService departmentService = new DepartmentService())
                    using (LURowService luRowService = new LURowService())
                        using (VariableService variableService = new VariableService())
                            using (DynamicFormService dynamicFormService = new DynamicFormService())
                                return new
                                       {
                                           GetAllSysMethods    = DesignCodeUtility.GetAllSysMethods().Select(c => new { Key = c }).ToList(),
                                           GetVariableMethods  = DesignCodeUtility.GetVariableMethods().Select(c => new { Key = c }).ToList(),
                                           GetMessageMethods   = DesignCodeUtility.GetMessageMethods().Select(c => new { Key = c }).ToList(),
                                           GetAccessMethods    = DesignCodeUtility.GetAccessMethods().Select(c => new { Key = c }).ToList(),
                                           GetHelperMethods    = DesignCodeUtility.GetHelperMethods().Select(c => new { Key = c }).ToList(),
                                           GetDocumentMethods  = DesignCodeUtility.GetDocumentMethods().Select(c => new { Key = c }).ToList(),
                                           GetAllSysProperties = DesignCodeUtility.GetAllSysProperties().Select(c => new { Key = c }).ToList(),

                                           AssembliesJson   = (Directory.Exists(BPMSResources.FilesRoot + BPMSResources.AssemblyRoot) ? new DirectoryInfo(BPMSResources.FilesRoot + BPMSResources.AssemblyRoot).GetFiles("*.dll").Select(c => new AssemblyDTO(c)).Select(c => new ComboTreeModel()
                                    {
                                        id = c.FileName, title = c.FileName
                                    }).ToList() : new List <ComboTreeModel>()),
                                           ApplicationPages = dynamicFormService.GetList(null, null, true, string.Empty, null, null).Select(c => new QueryModel(c.ApplicationPageID.ToString(), c.Name)).ToList(),
                                           DepartmentRoles  = luRowService.GetList("DepartmentRoleLU").Select(c => new LURowDTO(c)).ToList(),
                                           DepartmentList   = departmentService.GetList(true, "", null).Select(c => new { ID = $"new Guid(\"{ c.ID }\")", c.Name }),
                                           DocumentFolders  = documentFolderService.GetList(null, "", "", true).Select(c => new QueryModel(c.ID.ToString(), c.DisplayName)).ToList(),
                                           ProcessVariables = variableService.GetVariableAsComboTree(base.ProcessId, base.ApplicationPageId, null, "{0}"),
                                           ProcessControls  = dynamicFormId != Guid.Empty && dynamicFormId.HasValue ?
                                                              dynamicFormService.GetControls(dynamicFormService.GetInfo(dynamicFormId.Value)).Select(c => new QueryModel(c.Key, c.Value)).ToList() : new List <QueryModel>(),
                                           Model = designCode
                                       };
        }
 public object PostLoadDesignCodeActionList(PostLoadDesignCodeActionListDTO model)
 {
     return(new
     {
         ListActionTypes = EnumObjHelper.GetEnumList <DCBaseModel.e_ActionType>().Select(c => new QueryModel(c.Key.ToString(), c.Value)).ToList(),
         model.ShapeId,
         DynamicFormId = model.DynamicFormId.ToGuidObjNull(),
         model.ParentShapeId,
         model.IsOutputYes,
         Name = model.Name.ToStringObj().Trim(),
         model.IsFirst,
         Base64Code = model.Action.ToStringObj(),
         FuncName = DesignCodeUtility.GetFunctionName(model.ShapeId),
         Model = DesignCodeUtility.GetObjectOfDesignCode <object>(model.Action.ToStringObj().FromBase64()),
     });
 }
        public object PostLoadEntityForm(PostLoadEntityFormDTO model)
        {
            Guid?         dynamicFormId = model.DynamicFormId.ToGuidObjNull();
            DCEntityModel designCode    = null;

            if (!string.IsNullOrWhiteSpace(model.XmlB64Model))
            {
                designCode             = DesignCodeUtility.GetObjectOfDesignCode <DCEntityModel>(model.XmlB64Model.ToStringObj().FromBase64());
                designCode.IsOutputYes = model.IsOutputYes;
            }
            else
            {
                designCode = new DCEntityModel(Guid.NewGuid().ToString(), string.Empty, model.ShapeId.ToStringObj(),
                                               model.ParentShapeId.ToStringObj(), model.IsOutputYes.ToBoolObjNull(),
                                               new List <DCEntityParametersModel>(), model.IsFirst.ToBoolObj(), model.DefaultMethodType);
            }

            using (EntityDefService entityDefService = new EntityDefService())
            {
                var listENtities = entityDefService.GetList(null, true);
                if (designCode.EntityDefID != Guid.Empty)
                {
                    designCode.Rows.ForEach((item) =>
                    {
                        item.IsRequired = listENtities.FirstOrDefault(c => c.ID == designCode.EntityDefID).AllProperties.FirstOrDefault(d => d.Name == item.ParameterName).Required;
                    });
                }
                using (DynamicFormService dynamicFormService = new DynamicFormService())
                    return new
                           {
                               ListEntities    = listENtities.Select(c => new EntityDefDTO(c)).ToList(),
                               DynamicFormId   = dynamicFormId,
                               ProcessControls = dynamicFormId != Guid.Empty && dynamicFormId.HasValue ?
                                                 dynamicFormService.GetControls(dynamicFormService.GetInfo(dynamicFormId.Value)).Select(c => new QueryModel(c.Key, c.Value)).ToList() : new List <QueryModel>(),
                               Model = designCode
                           };
            }
        }