Exemple #1
0
        public Stream Save_iOS_EquipmentsInspectionsData(EquipmentInspectionListEntity EquipList)
        {
            List <BLL.Core.Domain.ResultMessageExtended> rmList = new List <BLL.Core.Domain.ResultMessageExtended>();

            try
            {
                rmList = EquipmentInspectionList.Instance.SaveEquipmentInspections(EquipList);
            }
            catch (Exception ex)
            {
                BLL.Core.Domain.ResultMessageExtended rmException = new BLL.Core.Domain.ResultMessageExtended();
                rmException.ActionLog = "In Service " + ex.Message;
                if (ex.InnerException != null)
                {
                    rmException.ActionLog += ex.InnerException.Message;
                }
                rmException.OperationSucceed = false;
                rmException.Id          = -1;
                rmException.LastMessage = ex.Message;
                rmList.Add(rmException);
            }

            //return rmList.First().Id;
            var stream = new MemoryStream();
            var writer = new StreamWriter(stream);

            writer.Write(JsonConvert.SerializeObject(rmList));
            writer.Flush();
            stream.Position = 0;
            return(stream);
        }
Exemple #2
0
        public List <BLL.Core.Domain.ResultMessageExtended> SaveEquipmentsInspectionsData(EquipmentInspectionListEntity EquipList)
        {
            List <BLL.Core.Domain.ResultMessageExtended> rmList = new List <BLL.Core.Domain.ResultMessageExtended>();

            try
            {
                rmList = EquipmentInspectionList.Instance.SaveEquipmentInspections(EquipList);
            }
            catch (Exception ex)
            {
                BLL.Core.Domain.ResultMessageExtended rmException = new BLL.Core.Domain.ResultMessageExtended();
                rmException.ActionLog = "In Service " + ex.Message;
                if (ex.InnerException != null)
                {
                    rmException.ActionLog += ex.InnerException.Message;
                }
                rmException.OperationSucceed = false;
                rmException.Id          = -1;
                rmException.LastMessage = ex.Message;
                rmList.Add(rmException);
            }
            return(rmList);
        }
Exemple #3
0
        public List <BLL.Core.Domain.ResultMessageExtended> SaveRopeShovelEquipmentInspections(EquipmentInspectionListEntity inspectionsList)
        {
            List <BLL.Core.Domain.ResultMessageExtended> rmList = new List <BLL.Core.Domain.ResultMessageExtended>();

            try
            {
                if (inspectionsList.EquipmentsInspectionsList != null)
                {
                    //List through existing equipments list
                    foreach (var obj in inspectionsList.EquipmentsInspectionsList)
                    {
                        BLL.Core.Domain.ResultMessageExtended rm =
                            Classes.UndercarriageInspection.Instance.SaveUcRopeShovelInspection(obj);
                        if (!rm.OperationSucceed)
                        {
                            rm.LastMessage = rm.LastMessage + "(SMU: " + obj.SMU + ")";
                        }
                        rmList.Add(rm);
                    }
                }
            }
            catch (Exception ex)
            {
                BLL.Core.Domain.ResultMessageExtended rmException = new BLL.Core.Domain.ResultMessageExtended();

                rmException.ActionLog = "In Equipment " + ex.Message;
                if (ex.InnerException != null)
                {
                    rmException.ActionLog += ex.InnerException.Message;
                }
                rmException.OperationSucceed = false;
                rmException.Id          = -1;
                rmException.LastMessage = ex.Message;
                rmList.Add(rmException);
            }
            return(rmList);
        }
Exemple #4
0
        /// <summary>
        /// Mining Shovel APIs
        /// </summary>
        /// <param name="Equip"></param>
        /// <returns></returns>
        public Stream PostValidateMiningShovelEquipInfo(BLL.Core.MiningShovel.Models.SyncModel Equip)
        {
            List <BLL.Core.Domain.ResultMessageExtended> rmList = new List <BLL.Core.Domain.ResultMessageExtended>();

            try
            {
                ///////////////////////////////////////////////////////////
                // Update TRACK_INSPECTION and TRACK_INSPECTION_DETAIL
                EquipmentInspectionListEntity EquipList = new EquipmentInspectionListEntity();

                ///////////////////
                // Equipment count
                EquipList.EquipmentsCount = 1;

                ///////////////////
                // New equipment
                List <NewEquipmentEntity> newEquip = new List <NewEquipmentEntity>();
                EquipList.NewEquipmentsInspectionsList = newEquip;

                ///////////////////
                // Equipment list
                List <UndercarriageInspectionEntity> EquipmentsInspectionsList = new List <UndercarriageInspectionEntity>();
                UndercarriageInspectionEntity        equipInspection           = new UndercarriageInspectionEntity();
                equipInspection.Abrasive              = Equip.abrasive;
                equipInspection.Impact                = Equip.impact;
                equipInspection.Moisture              = Equip.moisture;
                equipInspection.Packing               = Equip.packing;
                equipInspection.SMU                   = Equip.smu.ToString();
                equipInspection.DryJointsLeft         = 0;
                equipInspection.DryJointsRight        = 0;
                equipInspection.EquipmentIdAuto       = Equip.equipmentid_auto;
                equipInspection.Examiner              = Equip.examiner;
                equipInspection.ExtCannonLeft         = 0;
                equipInspection.ExtCannonRight        = 0;
                equipInspection.InspectionDate        = Equip.currentDateandTime;
                equipInspection.InspectorComments     = Equip.notes;
                equipInspection.JobsiteComments       = Equip.Jobsite_Comms;
                equipInspection.leftCannonExtComment  = "";
                equipInspection.leftCannonExtImage    = "";
                equipInspection.leftScallop           = 0;
                equipInspection.leftTrackSagComment   = "";
                equipInspection.leftTrackSagImage     = "";
                equipInspection.rightCannonExtComment = "";
                equipInspection.rightCannonExtImage   = "";
                equipInspection.rightScallop          = 0;
                equipInspection.rightTrackSagComment  = "";
                equipInspection.rightTrackSagImage    = "";
                equipInspection.TrackSagLeft          = 0;
                equipInspection.TrackSagRight         = 0;
                equipInspection.travelForward         = 0;
                equipInspection.travelReverse         = 0;
                equipInspection.TrammingHours         = Equip.TrammingHours;
                equipInspection.CustomerContact       = Equip.CustomerContact;

                // InspectionDetails
                //equipInspection.Details = ???
                List <InspectionDetails> inspectionDetailList = new List <InspectionDetails>();
                foreach (var item in Equip.InspectionDetails)
                {
                    InspectionDetails inspectionDetail = new InspectionDetails();
                    inspectionDetail.AttachmentType = 0;
                    inspectionDetail.Comments       = "";
                    inspectionDetail.TrackUnitAuto  = item.EqunitAuto;

                    DAL.LU_COMPART            compart   = new LU_COMPART();
                    BLL.Core.Domain.Component component = new BLL.Core.Domain.Component(new UndercarriageContext());
                    compart = component.getCompart(item.EqunitAuto);

                    inspectionDetail.CompartIdAuto   = compart.compartid_auto;
                    inspectionDetail.FlangeType      = "";
                    inspectionDetail.Image           = "";
                    inspectionDetail.InspectionImage = "";
                    inspectionDetail.PercentageWorn  = 0;
                    inspectionDetail.Reading         = "";
                    inspectionDetail.ToolUsed        = "";

                    inspectionDetailList.Add(inspectionDetail);
                }

                equipInspection.Details = inspectionDetailList;

                EquipmentsInspectionsList.Add(equipInspection);

                EquipList.EquipmentsInspectionsList = EquipmentsInspectionsList;

                /////////////
                // Validate
                //List<BLL.Core.Domain.ResultMessageExtended> returnList = SaveEquipmentsInspectionsData(EquipList);
                try
                {
                    rmList = EquipmentInspectionList.Instance.SaveRopeShovelEquipmentInspections(EquipList);
                }
                catch (Exception ex)
                {
                    BLL.Core.Domain.ResultMessageExtended rmException = new BLL.Core.Domain.ResultMessageExtended();
                    rmException.ActionLog = "In Service " + ex.Message;
                    if (ex.InnerException != null)
                    {
                        rmException.ActionLog += ex.InnerException.Message;
                    }
                    rmException.OperationSucceed = false;
                    rmException.Id          = -1;
                    rmException.LastMessage = ex.Message;
                    rmList.Add(rmException);
                }
            }
            catch (Exception ex)
            {
                BLL.Core.Domain.ResultMessageExtended rmException = new BLL.Core.Domain.ResultMessageExtended();
                rmException.ActionLog = "In Service " + ex.Message;
                if (ex.InnerException != null)
                {
                    rmException.ActionLog += ex.InnerException.Message;
                }
                rmException.OperationSucceed = false;
                rmException.Id          = -1;
                rmException.LastMessage = ex.Message;
                rmList.Add(rmException);
            }

            //return rmList.First().Id;
            var stream = new MemoryStream();
            var writer = new StreamWriter(stream);

            writer.Write(JsonConvert.SerializeObject(rmList));
            writer.Flush();
            stream.Position = 0;
            return(stream);
        }
Exemple #5
0
        public List <BLL.Core.Domain.ResultMessageExtended> SaveEquipmentInspections(EquipmentInspectionListEntity inspectionsList)
        {
            List <BLL.Core.Domain.ResultMessageExtended> rmList = new List <BLL.Core.Domain.ResultMessageExtended>();

            //System.Web.Script.Serialization.JavaScriptSerializer js = new System.Web.Script.Serialization.JavaScriptSerializer();
            //string strResult = js.Serialize(rmList);
            try
            {
                if (inspectionsList.EquipmentsInspectionsList != null)
                {
                    //List through existing equipments list
                    foreach (var obj in inspectionsList.EquipmentsInspectionsList)
                    {
                        BLL.Core.Domain.ResultMessageExtended rm =
                            Classes.UndercarriageInspection.Instance.SaveUcInspection(obj);
                        if (!rm.OperationSucceed)
                        {
                            rm.LastMessage = rm.LastMessage + "(SMU: " + obj.SMU + ")";
                        }
                        rmList.Add(rm);
                    }
                }
                using (TransactionScope scope = new TransactionScope())
                {
                    if (inspectionsList.NewEquipmentsInspectionsList != null)
                    {
                        foreach (var obj2 in inspectionsList.NewEquipmentsInspectionsList)
                        {
                            BLL.Core.Domain.ResultMessageExtended rm = new BLL.Core.Domain.ResultMessageExtended();
                            int smu = 0;
                            rm.PreValidation = new BLL.Core.Domain.ActionPreValidationResult
                            {
                                IsValid      = true,
                                EquipmentId  = obj2._equipmentId.LongNullableToInt(),
                                Id           = 0,
                                ProvidedDate = DateTime.Now,
                                ProvidedSMU  = Int32.TryParse(obj2._smu, out smu) ? smu : 0,
                                EarliestValidDateForProvidedSMU = DateTime.Now,
                                SmallestValidSmuForProvidedDate = 0,
                                Status = BLL.Core.Domain.ActionValidationStatus.Valid
                            };
                            rm.OperationSucceed = Classes.Equipments.Instance.SaveEquipment(obj2);
                            if (rm.OperationSucceed)
                            {
                                rm.LastMessage = "Data Successfully Synced";
                            }
                            else
                            {
                                rm.LastMessage = "Save Equipment Failed";
                            }
                            rmList.Add(rm);
                        }
                    }
                    scope.Complete();
                }
            }
            catch (Exception ex)
            {
                BLL.Core.Domain.ResultMessageExtended rmException = new BLL.Core.Domain.ResultMessageExtended();

                rmException.ActionLog = "In Equipment " + ex.Message;
                if (ex.InnerException != null)
                {
                    rmException.ActionLog += ex.InnerException.Message;
                }
                rmException.OperationSucceed = false;
                rmException.Id          = -1;
                rmException.LastMessage = ex.Message;
                rmList.Add(rmException);
            }
            return(rmList);
        }
        /// <summary>
        /// Rope shovel
        /// </summary>
        /// <param name="inspection"></param>
        /// <returns></returns>
        public BLL.Core.Domain.ResultMessageExtended SaveUcRopeShovelInspection(UndercarriageInspectionEntity inspection)
        {
            var rm = new BLL.Core.Domain.ResultMessageExtended
            {
                OperationSucceed = false,
                ActionLog        = " ",
                LastMessage      = " ",
                Id = 0,
            };

            BLL.Interfaces.IUser user = GetUserIdByExaminer(inspection.Examiner);
            if (user == null)
            {
                rm.LastMessage = "User Not Found!";
                return(rm);
            }
            inspection.Examiner = user.userName;
            BLL.Core.Domain.InsertInspectionParams Params = getInsertInspectionParams(inspection);
            if (Params.EquipmentInspection.docket_no == null || Params.EquipmentInspection.docket_no.Length < 2)
            {
                Params.EquipmentInspection.docket_no = GetUniqueDocketNo();
            }


            BLL.Interfaces.IEquipmentActionRecord EquipmentAction = new BLL.Core.Domain.EquipmentActionRecord
            {
                ActionDate    = Params.EquipmentInspection.inspection_date,
                ActionUser    = user,
                EquipmentId   = Params.EquipmentInspection.equipmentid_auto > int.MaxValue ? int.MaxValue : (int)Params.EquipmentInspection.equipmentid_auto,
                Comment       = Params.EquipmentInspection.inspection_comments,
                ReadSmuNumber = Params.EquipmentInspection.smu == null ? 0 : (int)Params.EquipmentInspection.smu,
                TypeOfAction  = BLL.Core.Domain.ActionType.InsertInspection,
                Cost          = 0
            };

            /////////////////
            // Rope Shovel
            BLL.Interfaces.IGeneralInspectionModel GeneralInspection = new BLL.Core.ViewModel.GeneralInspectionViewModel
            {
                Date            = Params.EquipmentInspection.inspection_date,
                SMU             = (int)Params.EquipmentInspection.smu,
                TrammingHours   = inspection.TrammingHours,
                CustomerContact = inspection.CustomerContact,
                InspectionNotes = inspection.InspectorComments,
                DocketNo        = Params.EquipmentInspection.docket_no,
                Impact          = inspection.Impact,
                Abrasive        = inspection.Abrasive,
                Moisture        = inspection.Moisture,
                Packing         = inspection.Packing,
                JobSiteNotes    = inspection.JobsiteComments
            };

            /////////////////
            // Rope Shovel
            //using (BLL.Core.Domain.Action UCAction = new BLL.Core.Domain.Action(new DAL.UndercarriageContext(), EquipmentAction, Params))
            using (BLL.Core.Domain.Action UCAction = new BLL.Core.Domain.Action(new DAL.UndercarriageContext(), EquipmentAction, GeneralInspection))
            {
                rm.PreValidation = UCAction.PreValidate(EquipmentAction);
                if (!rm.PreValidation.IsValid)
                {
                    rm.LastMessage      = "Validation Failed!";
                    rm.ActionLog        = "PreValidation Failed";
                    rm.OperationSucceed = false;
                    return(rm);
                }

                UCAction.Operation.Start();
                if (UCAction.Operation.Status == BLL.Core.Domain.ActionStatus.Close)
                {
                    rm.OperationSucceed = false;
                    //rm.ActionLog = UCAction.Operation.ActionLog;
                    rm.LastMessage = UCAction.Operation.Message;
                }
                if (UCAction.Operation.Status == BLL.Core.Domain.ActionStatus.Started)
                {
                    UCAction.Operation.Validate();
                }

                if (UCAction.Operation.Status == BLL.Core.Domain.ActionStatus.Invalid)
                {
                    rm.OperationSucceed = false;
                    //rm.ActionLog = UCAction.Operation.ActionLog;
                    rm.LastMessage = UCAction.Operation.Message;
                }
                if (UCAction.Operation.Status == BLL.Core.Domain.ActionStatus.Valid)
                {
                    UCAction.Operation.Commit();
                }
                if (UCAction.Operation.Status == BLL.Core.Domain.ActionStatus.Failed)
                {
                    rm.OperationSucceed = false;
                    //rm.ActionLog = UCAction.Operation.ActionLog;
                    rm.LastMessage = UCAction.Operation.Message;
                }
                if (UCAction.Operation.Status == BLL.Core.Domain.ActionStatus.Succeed)
                {
                    rm.OperationSucceed = true;
                    //rm.ActionLog = UCAction.Operation.ActionLog;
                    rm.LastMessage = UCAction.Operation.Message;
                }
                rm.Id = UCAction.Operation.UniqueId;
            }

            try
            {
                BLL.Core.Domain.Equipment LogicalEquipment = new BLL.Core.Domain.Equipment(new DAL.UndercarriageContext(), EquipmentAction.EquipmentId);
                //if (LogicalEquipment.Id == 0 || LogicalEquipment.GetEquipmentFamily() != BLL.Core.Domain.EquipmentFamily.MEX_Mining_Shovel)
                //    return rm;
                //LogicalEquipment.UpdateMiningShovelInspectionParentsFromChildren(rm.Id);
                return(rm);
            }
            catch (Exception ex)
            {
                string message = ex.Message;
                return(rm);
            }
        }
        public BLL.Core.Domain.ResultMessageExtended SaveUcInspection(UndercarriageInspectionEntity inspection)
        {
            var rm = new BLL.Core.Domain.ResultMessageExtended
            {
                OperationSucceed = false,
                ActionLog        = " ",
                LastMessage      = " ",
                Id = 0,
            };

            BLL.Interfaces.IUser user = GetUserIdByExaminer(inspection.Examiner);
            if (user == null)
            {
                rm.LastMessage = "User Not Found!";
                return(rm);
            }
            inspection.Examiner = user.userName;
            BLL.Core.Domain.InsertInspectionParams Params = getInsertInspectionParams(inspection);
            if (Params.EquipmentInspection.docket_no == null || Params.EquipmentInspection.docket_no.Length < 2)
            {
                Params.EquipmentInspection.docket_no = GetUniqueDocketNo();
            }
            BLL.Interfaces.IEquipmentActionRecord EquipmentAction = new BLL.Core.Domain.EquipmentActionRecord
            {
                ActionDate    = Params.EquipmentInspection.inspection_date,
                ActionUser    = user,
                EquipmentId   = Params.EquipmentInspection.equipmentid_auto > int.MaxValue ? int.MaxValue : (int)Params.EquipmentInspection.equipmentid_auto,
                Comment       = Params.EquipmentInspection.inspection_comments,
                ReadSmuNumber = Params.EquipmentInspection.smu == null ? 0 : (int)Params.EquipmentInspection.smu,
                TypeOfAction  = BLL.Core.Domain.ActionType.InsertInspection,
                Cost          = 0
            };

            using (BLL.Core.Domain.Action UCAction = new BLL.Core.Domain.Action(new DAL.UndercarriageContext(), EquipmentAction, Params))
            {
                rm.PreValidation = UCAction.PreValidate(EquipmentAction);
                if (!rm.PreValidation.IsValid)
                {
                    rm.LastMessage      = "Validation Failed!";
                    rm.ActionLog        = "PreValidation Failed";
                    rm.OperationSucceed = false;
                    return(rm);
                }
                UCAction.Operation.Start();
                if (UCAction.Operation.Status == BLL.Core.Domain.ActionStatus.Close)
                {
                    rm.OperationSucceed = false;
                    //rm.ActionLog = UCAction.Operation.ActionLog;
                    rm.LastMessage = UCAction.Operation.Message;
                }
                if (UCAction.Operation.Status == BLL.Core.Domain.ActionStatus.Started)
                {
                    UCAction.Operation.Validate();
                }

                if (UCAction.Operation.Status == BLL.Core.Domain.ActionStatus.Invalid)
                {
                    rm.OperationSucceed = false;
                    //rm.ActionLog = UCAction.Operation.ActionLog;
                    rm.LastMessage = UCAction.Operation.Message;
                }
                if (UCAction.Operation.Status == BLL.Core.Domain.ActionStatus.Valid)
                {
                    UCAction.Operation.Commit();
                }
                if (UCAction.Operation.Status == BLL.Core.Domain.ActionStatus.Failed)
                {
                    rm.OperationSucceed = false;
                    //rm.ActionLog = UCAction.Operation.ActionLog;
                    rm.LastMessage = UCAction.Operation.Message;
                }
                if (UCAction.Operation.Status == BLL.Core.Domain.ActionStatus.Succeed)
                {
                    rm.OperationSucceed = true;
                    //rm.ActionLog = UCAction.Operation.ActionLog;
                    rm.LastMessage = UCAction.Operation.Message;

                    // TT-49
                    if (inspection.EquipmentImage != null)
                    {
                        UpdateEquipmentImageFromInspection(inspection.EquipmentIdAuto, inspection.EquipmentImage);
                    }
                }
                rm.Id = UCAction.Operation.UniqueId;
            }

            try
            {
                BLL.Core.Domain.Equipment LogicalEquipment = new BLL.Core.Domain.Equipment(new DAL.UndercarriageContext(), EquipmentAction.EquipmentId);
                if (LogicalEquipment.Id == 0 || LogicalEquipment.GetEquipmentFamily() != BLL.Core.Domain.EquipmentFamily.MEX_Mining_Shovel)
                {
                    return(rm);
                }
                LogicalEquipment.UpdateMiningShovelInspectionParentsFromChildren(rm.Id);
                return(rm);
            }
            catch (Exception ex)
            {
                string message = ex.Message;
                return(rm);
            }
        }