/// <summary> /// Insert Update the material overview /// </summary> /// <param name="viewModel"></param> /// <returns></returns> public IResult ManageMaterialPartProperties(PartPropertyViewModel viewModel) { var result = new Result { Status = Status.Success }; try { if (string.IsNullOrEmpty(viewModel.PartPropertyId) || viewModel.PartPropertyId == null) { viewModel.PartPropertyId = null; var partProperty = new PartProperty(); partProperty.MapFromViewModel(viewModel, (ClaimsIdentity)_principal.Identity); partProperty.PartPropertyId = ObjectId.GenerateNewId(); var updateDefinition = Builders <Material> .Update.Set(x => x.ModifiedDate, GenericHelper.CurrentDate).AddToSet(t => t.PartProperties, partProperty); _materialRepository.UpdateOne(t => t.MaterialId.Equals(ObjectId.Parse(viewModel.RegardingId)), updateDefinition); result.Body = partProperty; result.Message = MaterialNotification.OverviewCreated; result.Operation = Operation.Create; } else { var updateDefinition = Builders <Material> .Update.Set(x => x.ModifiedDate, GenericHelper.CurrentDate).Set(t => t.PartProperties[-1].PropertyName, viewModel.PropertyName). Set(t => t.PartProperties[-1].PropertyValue, viewModel.PropertyValue); _materialRepository.UpdateOne( t => t.MaterialId.Equals(ObjectId.Parse(viewModel.RegardingId)) && t.PartProperties.Any(o => o.PartPropertyId.Equals(ObjectId.Parse(viewModel.PartPropertyId))), updateDefinition); result.Body = viewModel; result.Message = MaterialNotification.OverviewUpdated; result.Operation = Operation.Update; } } catch (Exception e) { result.Message = e.Message; result.Status = Status.Fail; } return(result); }
public IResult ManageMaterialPartProperties([FromBody] PartPropertyViewModel partPropertyViewModel) { var result = _materialManager.ManageMaterialPartProperties(partPropertyViewModel); return(result); }
public IResult ManageEquipmentPartProperties([FromBody] PartPropertyViewModel partPropertyViewModel) { var result = _equipmentManager.ManageEquipmentPartProperties(partPropertyViewModel); return(result); }