Example #1
0
 private void OnMachiningCutClick()
 {
     _MachiningLib_Content = new MachiningLibCutDataGrid();
     ChangeMachiningLibMenuButtonCheckedStatus(btn1: true);
 }
Example #2
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;
                }
            });
        }