コード例 #1
0
        public async Task <IActionResult> Edit(int Id)
        {
            var CurrentUser = await _userManager.GetUserAsync(User);

            var ToDoLogic = new FrontProcessToDoLogic(_projectProvider, _organizationProvider, _userRoleProvider, _roleProvider, _userProvider, _processProvider, _frontProcessProvider);
            var ToDo      = await ToDoLogic.ReturnProcessList(CurrentUser);

            if (ToDo.Any(x => x.ProcessId == Id))
            {
                var Process = await _frontProcessProvider.FrontProcessUpdateGet(CurrentUser.Id, Id);

                Process.Fields = await _frontProcessProvider.FrontProcessUpdateGetFields(CurrentUser.Id, Id);

                Process.Classifications = await _classificationProvider.List(CurrentUser.Id);

                Process.ClassificationValues = await _classificationValueProvider.List(CurrentUser.Id);

                Process.Contents = await _contentProvider.List();

                Process.Languages = await _languageProvider.List(CurrentUser.Id);

                Process.Organizations = await _organizationProvider.List(CurrentUser.Id);

                Process.Persons = await _personProvider.List();

                Process.Projects = await _projectProvider.List(CurrentUser.Id);

                Process.Countries = await _masterListProvider.CountryList(CurrentUser.Id);

                Process.SecurityLevels = await _securityLevelProvider.List(CurrentUser.Id);

                //Process.Users = await _userManager.List();
                for (int i = 0; i < Process.Fields.Count; i++)
                {
                    if (Process.Fields[i].ValueUpdateTypeId == 3)
                    {
                        Process.Fields[i].StringValue   = Process.Fields[i].DefaultStringValue;
                        Process.Fields[i].IntValue      = Process.Fields[i].DefaultIntValue;
                        Process.Fields[i].DateTimeValue = Process.Fields[i].DefaultDateTimeValue;
                    }
                    if (Process.Fields[i].ValueUpdateTypeId == 2)
                    {
                        if (Process.Fields[i].StringValue == null)
                        {
                            Process.Fields[i].StringValue = Process.Fields[i].DefaultStringValue;
                        }
                        if (Process.Fields[i].IntValue == null)
                        {
                            Process.Fields[i].IntValue = Process.Fields[i].DefaultIntValue;
                        }
                        if (Process.Fields[i].DateTimeValue == null)
                        {
                            Process.Fields[i].DateTimeValue = Process.Fields[i].DefaultDateTimeValue;
                        }
                    }
                    //User
                    if (Process.Fields.Any(x => x.ProcessTypeFieldTypeId == 12 || x.ProcessTypeFieldTypeId == 13))
                    {
                    }
                    //Organization
                    if (Process.Fields.Any(x => x.ProcessTypeFieldTypeId == 14 || x.ProcessTypeFieldTypeId == 15))
                    {
                    }
                    //Project
                    if (Process.Fields.Any(x => x.ProcessTypeFieldTypeId == 16 || x.ProcessTypeFieldTypeId == 17))
                    {
                    }
                    //Language
                    if (Process.Fields.Any(x => x.ProcessTypeFieldTypeId == 18 || x.ProcessTypeFieldTypeId == 19))
                    {
                    }
                    //Classification
                    if (Process.Fields.Any(x => x.ProcessTypeFieldTypeId == 20 || x.ProcessTypeFieldTypeId == 21))
                    {
                    }
                    //Classification value
                    if (Process.Fields.Any(x => x.ProcessTypeFieldTypeId == 22 || x.ProcessTypeFieldTypeId == 23))
                    {
                    }
                    //Content
                    if (Process.Fields.Any(x => x.ProcessTypeFieldTypeId == 24 || x.ProcessTypeFieldTypeId == 25))
                    {
                    }
                    //Country
                    if (Process.Fields.Any(x => x.ProcessTypeFieldTypeId == 26 || x.ProcessTypeFieldTypeId == 27))
                    {
                    }
                    //Security level
                    if (Process.Fields.Any(x => x.ProcessTypeFieldTypeId == 28 || x.ProcessTypeFieldTypeId == 29))
                    {
                    }
                    //Role
                    if (Process.Fields.Any(x => x.ProcessTypeFieldTypeId == 30 || x.ProcessTypeFieldTypeId == 31))
                    {
                    }
                    //Person
                    if (Process.Fields.Any(x => x.ProcessTypeFieldTypeId == 36 || x.ProcessTypeFieldTypeId == 37))
                    {
                    }
                }
                return(Ok(Process));
            }
            return(BadRequest(new
            {
                IsSuccess = false,
                Message = "No rights",
            }));
        }