Esempio n. 1
0
        public async Task <MachineTypeOperation> Update(MachineTypeOperation entity)
        {
            _context.Update(entity);
            await _context.SaveChangesAsync();

            return(entity);
        }
Esempio n. 2
0
        public async Task <MachineTypeOperation> Create(MachineTypeOperation entity)
        {
            await _context.Set <MachineTypeOperation>().AddAsync(entity);

            await _context.SaveChangesAsync();

            return(entity);
        }
Esempio n. 3
0
        public async Task <OutMachineTypeDTO> UpdateMachineTypeAsync(int machineTypeId, InMachineTypeDTO machineTypeDto)
        {
            //TODO: HERE!
            var machineType = await _machineTypeRepository.GetById(machineTypeId);

            if (machineType == null)
            {
                throw new ApplicationException("Machine Type not found");
            }

            machineType.Description     = machineTypeDto.Description;
            machineType.NameMachineType = machineTypeDto.Name;

            // Delete all old machine - operations relations
            machineType.machineTypeOperations.ToList()
            .ForEach(m => _machineTypeOperationRepository.Delete(m));

            var machineTypeOperations = new List <MachineTypeOperation>();

            foreach (var operationId in machineTypeDto.Operations)
            {
                var foundMachineTypeOp = await _machineTypeOperationRepository.GetById(machineTypeId, operationId);

                if (foundMachineTypeOp != null)
                {
                    machineTypeOperations.Add(foundMachineTypeOp);
                }
                else
                {
                    var operation = await _operationRepository.GetById(operationId);

                    if (operation == null)
                    {
                        throw new ApplicationException("Operation not found");
                    }

                    var newMachineTypeOp = new MachineTypeOperation()
                    {
                        machinetype   = machineType,
                        MachineTypeId = machineTypeId,
                        operation     = operation,
                        OperationId   = operationId
                    };

                    newMachineTypeOp = await _machineTypeOperationRepository.Create(newMachineTypeOp);

                    machineTypeOperations.Add(newMachineTypeOp);
                }
            }

            machineType.machineTypeOperations = machineTypeOperations;

            var machineTypes = await _machineTypeRepository.Update(machineType);

            return(MachineTypeMapping.MachineTypeToOutDto(machineTypes));
        }
Esempio n. 4
0
 public MachineType(MachineTypeDescription type, IList <Operation> ops)
 {
     Type = type;
     //Operations = ops;
     MachineTypeOperations = new List <MachineTypeOperation>();
     foreach (Operation op in ops)
     {
         MachineTypeOperation machineTypeOperation = new MachineTypeOperation(this, op);
         MachineTypeOperations.Add(machineTypeOperation);
     }
 }
Esempio n. 5
0
        public async Task UpdateMachineTypeOperation(Guid id, IList <string> operationsId)
        {
            MachineType machineType = getMachineType(id).Result;

            ICollection <Operation> operations = ValidateOperations(operationsId).Result;

            List <MachineTypeOperation> machineTypeOperations = new List <MachineTypeOperation>();

            foreach (Operation op in operations)
            {
                MachineTypeOperation machineTypeOperation = new MachineTypeOperation(machineType, op);
                machineTypeOperations.Add(machineTypeOperation);
            }
            machineType.MachineTypeOperations = machineTypeOperations;

            await _machineTypeRepository.UpdateWithRelationship(id, machineType);
        }
Esempio n. 6
0
 public void Delete(MachineTypeOperation entity)
 {
     _context.Entry(entity).State = EntityState.Modified;
     _context.Remove(entity);
     _context.SaveChanges();
 }