Example #1
0
        public int SaveEquipment(EquipmentGetRequestModel model)
        {
            var data = model.GetEquipment();

            if (model.PhotoFileData != null)
            {
                if (model != null)
                {
                    if (data.PictureName != null && data.PictureName.Length > 0)
                    {
                        string path = Path.Combine(Environment.CurrentDirectory, "images", data.PictureName);
                        File.Delete(path);
                    }
                }
                data.PictureName = UploadImageHelper.UploadFile(model.PhotoFileData);
            }
            var res = new Equipment
            {
                Id                      = data.Id,
                Title                   = data.Title,
                InventoryNumber         = data.InventoryNumber,
                Destinations            = data.Destinations,
                Year                    = data.Year,
                Zoom                    = data.Zoom,
                PowerVoltage            = data.PowerVoltage,
                SafetyFuses             = data.SafetyFuses,
                AmbientTemperature      = data.AmbientTemperature,
                RelativeHumidity        = data.RelativeHumidity,
                CertificateOfConformity = data.CertificateOfConformity,
                StateCheck              = data.StateCheck,
                Passport                = data.Passport,
                PictureName             = data.PictureName,
                EquipmentStatusId       = data.StatusId
            };

            Db.Equipments.InsertOrUpdate(res);
            Db.Complete();
            try
            {
                var tec    = Db.Equipments.GetTechnicalMaintenancesByEquipmentId(res.Id);
                var empDel = tec.Where(t => !data.TechnicalMaintenances.Select(tm => tm.Id).Contains(t.Id));
                var empIns = data.TechnicalMaintenances.Where(t => !tec.Select(tm => tm.Id).Contains(t.Id));

                Db.EquipmentTechnicalMaintenances.RemoveRange(empDel);

                var tech = data.TechnicalMaintenances != null?
                           data.TechnicalMaintenances.Select(tm => new EquipmentTechnicalMaintenance()
                {
                    Id          = tm.Id,
                    EquipmentId = res.Id,
                    StartDate   = tm.StartDate,
                    EndDate     = tm.EndDate,
                    Description = tm.Description,
                    DescriptionAfterMaintenance = tm.DescriptionAfterMaintenance,
                    ServicePassed = tm.ServicePassed
                }) : null;

                if (tech != null)
                {
                    Db.EquipmentTechnicalMaintenances.InsertOrUpdateRange(tech);
                    Db.Complete();
                }
            }
            catch (Exception e)
            {
                Db.Dispose();
                throw new Exception(e.Message);
            }
            return(res.Id);
        }
Example #2
0
        public IActionResult Save([FromForm] EquipmentGetRequestModel model)
        {
            var res = _equpmentService.SaveEquipment(model);

            return(Ok(res));
        }