예제 #1
0
        public static void Register()
        {
            //ServiceLocator.SetLocatorProvider(() => SimpleIoc.Default);

            //automapper
            SimpleIoc.Default.Register <IMapper>(() => AutoMapperConfig.GetMapperConfiguration().CreateMapper());

            //fanuc
            SimpleIoc.Default.Register <Fanuc>(() => Fanuc.CreateInstance());

            //datacenter
            SimpleIoc.Default.Register <MachiningLibService>(() => MachiningLibService.CreateInstance());
            SimpleIoc.Default.Register <LibInfoService>();
            SimpleIoc.Default.Register <ManualService>();
            SimpleIoc.Default.Register <SparePartService>();
            SimpleIoc.Default.Register <UserService>();

            //usercenter
            SimpleIoc.Default.Register <User>(() => User.CreateInstance());

            //viewmodel
            SimpleIoc.Default.Register <LoadingWaitViewModel>();
            SimpleIoc.Default.Register <MainViewModel>();
            SimpleIoc.Default.Register <HomeViewModel>();
            SimpleIoc.Default.Register <MachiningViewModel>();
            SimpleIoc.Default.Register <MachiningLibCutDataGridViewModel>();
            SimpleIoc.Default.Register <MachiningLibEdgeCuttingDataGridViewModel>();
            SimpleIoc.Default.Register <MachiningLibPiercingDataGridViewModel>();
            SimpleIoc.Default.Register <MachiningLibSlopeControlDataGridViewModel>();
            SimpleIoc.Default.Register <MOPViewModel>();
            SimpleIoc.Default.Register <DiagnoseViewModel>();
            SimpleIoc.Default.Register <SimulationViewModel>();
            SimpleIoc.Default.Register <ProgramTransViewModel>();
            SimpleIoc.Default.Register <MachineOffsetViewModel>();
            SimpleIoc.Default.Register <SoftwareOffsetViewModel>();
            SimpleIoc.Default.Register <ManualViewModel>();
            SimpleIoc.Default.Register <ManualAddViewModel>();
            SimpleIoc.Default.Register <SparePartViewModel>();
            SimpleIoc.Default.Register <SparePartAddViewModel>();
            SimpleIoc.Default.Register <SimpleCornerMachiningViewModel>();
            SimpleIoc.Default.Register <AutoFindSideViewModel>();
            SimpleIoc.Default.Register <AutoCutterCleanViewModel>();
            SimpleIoc.Default.Register <CutterResetCheckViewModel>();
            SimpleIoc.Default.Register <CutCenterViewModel>();
            SimpleIoc.Default.Register <UserPopViewModel>();
            SimpleIoc.Default.Register <RemainCutViewModel>();
            SimpleIoc.Default.Register <ManuelChangeWorkStationViewModel>();
            SimpleIoc.Default.Register <SimpleNestViewModel>();
            SimpleIoc.Default.Register <AuxGasCheckViewModel>();
            SimpleIoc.Default.Register <AutoFocalPointViewModel>();
            SimpleIoc.Default.Register <AddMatrialWindowViewModel>();
            SimpleIoc.Default.Register <DelMatrialWindowViewModel>();
            SimpleIoc.Default.Register <AlarmListViewModel>();
            SimpleIoc.Default.Register <OpMessageViewModel>();
            SimpleIoc.Default.Register <NcFolderSelectionViewModel>();
            SimpleIoc.Default.Register <ManualFindSideViewModel>();
        }
예제 #2
0
        public DelMatrialWindowViewModel(Fanuc fanuc, MachiningLibService mchiningSrv, IMapper mapper)
        {
            _fanuc        = fanuc;
            _mapper       = mapper;
            m_mchiningSrv = mchiningSrv;


            LoadPageCommand   = new RelayCommand(ON_LoadPageCommand);
            UnLoadPageCommand = new RelayCommand(ON_UnLoadPageCommand);

            _DelMatrialCmd            = new RelayCommand(OnDelMatrialCommand);
            _DelThicknessCmd          = new RelayCommand(OnDelThicknessCommand);
            _Material_Changed_Command = new RelayCommand(OnMaterialChangedCmd);
        }
예제 #3
0
        public SoftwareOffsetViewModel(IMapper mapper, Fanuc fanuc, LibInfoService liSrv, User user, MachiningLibService maclibSrv)
        {
            this._LiSrv     = liSrv;
            this._user      = user;
            this._maclibSrv = maclibSrv;

            EnglishCommand         = new RelayCommand(ONEnglishCommand);
            ChineseCommand         = new RelayCommand(ONChineseCommand);
            UpdataLibCommand       = new RelayCommand(ONUpdataLib);
            ChangeLibToBootCommand = new RelayCommand(ONChangeLibToBoot);
            ChangeLibToUserCommand = new RelayCommand(ONChangeLibToUser);
            InitialUserLibCommand  = new RelayCommand(ONInitialUserLib);
            Phb02bRestartCommand   = new RelayCommand(ONPhb02bRestart);

            Messenger.Default.Register <string>(this, "SetLibPathMsg", msg =>
            {
                System.Windows.Forms.OpenFileDialog file = new System.Windows.Forms.OpenFileDialog();
                if (file.ShowDialog() == System.Windows.Forms.DialogResult.OK || file.ShowDialog() == System.Windows.Forms.DialogResult.Yes)
                {
                    LibUpdataPath = System.IO.Path.GetFullPath(file.FileName);
                }
            });

            Messenger.Default.Register <string>(this, "RootLibOperateMsg", msg =>
            {
                RootLibOperate = msg;
            });
            _user.GetUserLibRootRoles();

            var    config = new ConfigHelper();
            string lang;

            config.GetLanguage(out lang);

            if (lang == "en-us.xaml")
            {
                LanguageEnglishButtonStatus = true;
                LanguageChineseButtonStatus = false;
            }
            else
            {
                LanguageEnglishButtonStatus = false;
                LanguageChineseButtonStatus = true;
            }

            config.GetSoftwareInfo(out m_SoftwareInfo);

            LibInfo = _LiSrv.GetCurrentLibInfo();
        }
예제 #4
0
        public MachiningViewModel(Fanuc fanuc, MachiningLibService mchiningSrv, IMapper mapper)
        {
            _fanuc        = fanuc;
            _mapper       = mapper;
            m_mchiningSrv = mchiningSrv;

            _UploadEnable = true;
            _SearchEnable = true;

            LoadPageCommand   = new RelayCommand(ON_LoadPageCommand);
            UnLoadPageCommand = new RelayCommand(ON_UnLoadPageCommand);
            AddMatrialCommand = new RelayCommand(OnAddMatrialCommand);
            DelMatrialCommand = new RelayCommand(OnDelMatrialCommand);


            //初始化分页viewmodel
            SimpleIoc.Default.GetInstance <MachiningLibCutDataGridViewModel>();
            SimpleIoc.Default.GetInstance <MachiningLibEdgeCuttingDataGridViewModel>();
            SimpleIoc.Default.GetInstance <MachiningLibPiercingDataGridViewModel>();
            SimpleIoc.Default.GetInstance <MachiningLibSlopeControlDataGridViewModel>();

            _MachiningCutCmd          = new RelayCommand(OnMachiningCutClick);
            _MachiningHoleCmd         = new RelayCommand(OnMachiningHoleClick);
            _MachiningCornerCmd       = new RelayCommand(OnMachiningCornerClick);
            _MachiningStartCmd        = new RelayCommand(OnMachiningStartClick);
            _MachiningPowerCmd        = new RelayCommand(OnMachiningPowerClick);
            _MachiningLibLoadingCmd   = new RelayCommand(OnMachiningLibLoadingClick);
            _SendToCncCmd             = new RelayCommand(OnMachiningLibSendToCncClick);
            _Material_Changed_Command = new RelayCommand(OnMaterialChangedCmd);


            _MachiningLib_Content = new MachiningLibCutDataGrid();
            ChangeMachiningLibMenuButtonCheckedStatus(btn1: true);

            var config = new ConfigHelper();

            config.GetMachiningConfigurationInfo(out laserType, out cutterType, out opticalType);

            //TODO:加载材料、厚度的选项
            //TODO:根据系统宏变量查找当前选中的材料和厚度
            ReloadMaterialAndThickness();

            //TODO:读取NC的库至PC显示
            GetDataAndMessageToShow();

            Messenger.Default.Register <MachiningLib_CuttingDto>(this, "MachiningLibCutDataSave", msg =>
            {
                var cut = cuttingDtos.Where(x => x.Id == msg.Id).FirstOrDefault();
                if (cut != null)
                {
                    cut = msg;
                }

                var cutting = _mapper.Map <MachiningLib_CuttingDto, MachiningLib_Cutting>(msg);
                var ret     = m_mchiningSrv.UpdateMachiningLibCuttingRecord(cutting);
                if (ret == false)
                {
                    Messenger.Default.Send <string>("保存至数据库失败", "OperateNotice");
                }
                else
                {
                    Messenger.Default.Send <string>("保存至数据库成功", "OperateNotice");
                }
            });

            Messenger.Default.Register <MachiningLib_CuttingDto>(this, "MachiningLibCutDataApplicate", msg =>
            {
                var cut = cuttingDtos.Where(x => x.Id == msg.Id).FirstOrDefault();
                if (cut != null)
                {
                    cut = msg;
                }
            });

            Messenger.Default.Register <MachiningLib_EdgeCuttingDto>(this, "MachiningLibEdgeCuttingDataSave", msg =>
            {
                var ecut = edgeCuttingDtos.Where(x => x.Id == msg.Id).FirstOrDefault();
                if (ecut != null)
                {
                    ecut = msg;
                }

                var edgeCutting = _mapper.Map <MachiningLib_EdgeCuttingDto, MachiningLib_EdgeCutting>(msg);
                var ret         = m_mchiningSrv.UpdateMachiningLibEdgeCuttingRecord(edgeCutting);
                if (ret == false)
                {
                    Messenger.Default.Send <string>("保存至数据库失败", "OperateNotice");
                }
                else
                {
                    Messenger.Default.Send <string>("保存至数据库成功", "OperateNotice");
                }
            });

            Messenger.Default.Register <MachiningLib_EdgeCuttingDto>(this, "MachiningLibEdgeCuttingDataApplicate", msg =>
            {
                var ecut = edgeCuttingDtos.Where(x => x.Id == msg.Id).FirstOrDefault();
                if (ecut != null)
                {
                    ecut = msg;
                }
            });

            Messenger.Default.Register <MachiningLib_PiercingDto>(this, "MachiningLibPiercingDataSave", msg =>
            {
                var pcut = piercingDtos.Where(x => x.Id == msg.Id).FirstOrDefault();
                if (pcut != null)
                {
                    pcut = msg;
                }

                var piercing = _mapper.Map <MachiningLib_PiercingDto, MachiningLib_Piercing>(msg);
                var ret      = m_mchiningSrv.UpdateMachiningLibPiercingRecord(piercing);
                if (ret == false)
                {
                    Messenger.Default.Send <string>("保存至数据库失败", "OperateNotice");
                }
                else
                {
                    Messenger.Default.Send <string>("保存至数据库成功", "OperateNotice");
                }
            });

            Messenger.Default.Register <MachiningLib_PiercingDto>(this, "MachiningLibPiercingDataApplicate", msg =>
            {
                var pcut = piercingDtos.Where(x => x.Id == msg.Id).FirstOrDefault();
                if (pcut != null)
                {
                    pcut = msg;
                }
            });

            Messenger.Default.Register <MachiningLib_SlopeControlDto>(this, "MachiningLibSlopeControlDataSave", msg =>
            {
                var sc = slopeControlDtos.Where(x => x.Id == msg.Id).FirstOrDefault();
                if (sc != null)
                {
                    sc = msg;
                }

                var slopeControl = _mapper.Map <MachiningLib_SlopeControlDto, MachiningLib_SlopeControl>(msg);
                var ret          = m_mchiningSrv.UpdateMachiningLibSlopeControlRecord(slopeControl);
                if (ret == false)
                {
                    Messenger.Default.Send <string>("保存至数据库失败", "OperateNotice");
                }
                else
                {
                    Messenger.Default.Send <string>("保存至数据库成功", "OperateNotice");
                }
            });

            Messenger.Default.Register <MachiningLib_SlopeControlDto>(this, "MachiningLibSlopeControlDataApplicate", msg =>
            {
                var sc = slopeControlDtos.Where(x => x.Id == msg.Id).FirstOrDefault();
                if (sc != null)
                {
                    sc = msg;
                }
            });
        }
예제 #5
0
        public AddMatrialWindowViewModel(MachiningLibService mchiningSrv)
        {
            m_mchiningSrv = mchiningSrv;

            _SaveCmd = new RelayCommand(OnSaveClick);
        }