public async Task Add(JobDetail jobDetail)
        {
            var newSequenceId = await _jobContext.JobIdentifierSequences.MaxAsync(_ => _.Id) + 1; //check this

            Entities.JobDetail jobDetailEntity = new Entities.JobDetail()
            {
                Identifier         = jobDetail.Identifier + "00000000" + newSequenceId,
                Name               = jobDetail.Name,
                Description        = jobDetail.Description,
                EffectiveStartDate = jobDetail.EffectiveStartDate,
                Type               = (int)jobDetail.Type
            };
            //jobDetailEntity.Identifier += "00000000" + latestSequenceId + 1;


            Entities.JobIdentifierSequence jobIdentifierSequence = new Entities.JobIdentifierSequence();
            await _jobContext.JobIdentifierSequences.AddAsync(jobIdentifierSequence); //_jobIdentifierSequenceRepository.Get();

            await _jobContext.JobDetails.AddAsync(jobDetailEntity);                   // either change the identity column or change the reading logic

            Entities.ActionState actionState = new Entities.ActionState()             // check this : is it a good practice when we have a seperate ActionStateRepository
            {
                ActionId       = (int)jobDetail.ActionState.Action,
                StatusId       = (int)jobDetail.ActionState.Status,
                JobDetail      = jobDetailEntity,
                EIN            = 12323,// temp
                UserName       = "******",
                ActionDateTime = jobDetail.ActionState.ActionDateTime
            };
            await _jobContext.ActionStates.AddAsync(actionState);

            await _jobContext.SaveChangesAsync();
        }
Exemplo n.º 2
0
        public async Task <JobIdentifierSequence> Get()
        {
            Entities.JobIdentifierSequence jobIdentifierSequence = new Entities.JobIdentifierSequence();
            //Add(jobIdentifierSequence);
            //Save();
            await _jobContext.JobIdentifierSequences.AddAsync(jobIdentifierSequence);

            await _jobContext.SaveChangesAsync();

            return(new JobIdentifierSequence(jobIdentifierSequence.Id));
        }