Esempio n. 1
0
        private void labelLock_Click(object sender, EventArgs e)
        {
            try
            {
                PalletDTO palletDTO = this.fastBarcodes.SelectedObject as PalletDTO;
                if (palletDTO != null)
                {
                    PalletViewModel  palletViewModel  = CommonNinject.Kernel.Get <PalletViewModel>();
                    PalletController palletController = new PalletController(CommonNinject.Kernel.Get <IPalletService>(), palletViewModel);

                    palletController.Lock(palletDTO.PalletID);

                    if (CustomMsgBox.Show(this, "Are you sure you want to " + (palletViewModel.Lockable ? "lock" : "un-lock") + " this entry data" + "?", "Warning", MessageBoxButtons.YesNo, (palletViewModel.Lockable ? MessageBoxIcon.Information : MessageBoxIcon.Warning)) == DialogResult.Yes)
                    {
                        if (palletController.LockConfirmed())
                        {
                            ((PalletDTO)this.fastBarcodes.SelectedObject).Locked = !palletViewModel.Locked;
                            this.fastBarcodes.RefreshObject(this.fastBarcodes.SelectedObject);
                        }
                        else
                        {
                            throw new Exception("Lỗi khóa hay mở khóa pallet: " + palletViewModel.Code + "\r\n\r\nVui lòng đóng phần mềm và thử lại sau.");
                        }
                    }
                }
            }
            catch (Exception exception)
            {
                ExceptionHandlers.ShowExceptionMessageBox(this, exception);
            }
        }
Esempio n. 2
0
        //Motor de la aplicación Estaciones, Bandejas, Moldes, Operaciones, Ordenes de fabricación y piezas
        private void TimerComunicationStatus_Tick(object sender, EventArgs e)
        {
            TimerS7ComunicationStatus.Stop();

            foreach (var station in AppGlobal.Stations)
            {
                if (station.Bussy)
                {
                    continue;
                }

                if (!S7.GetBitAt(AppGlobal.Snap7Server.Read(station.StatusChangeS7), 0, 0))
                {
                    continue;
                }

                var data = AppGlobal.Snap7Server.Read(station.DataAddressS7);
                station.DataContent = Common.GetDataContent(data);

                var pallet    = PalletController.GetByCode(station.DataContent.PalletCode);
                var operation = OperationController.GetByCode(station.DataContent.OperationCode);
                var mold      = MoldRepository.GetByCode(station.DataContent.MoldCode);

                station.ActiveOperation = operation;

                if (operation.InitPart || operation.EndPart)
                {
                    station.Bussy = true;
                    Thread AskForReferencePartThread = new Thread(new ThreadStart(() => AskForReferencePart(station, pallet, operation, mold)));
                    AskForReferencePartThread.Start();
                }
                else
                {
                    OperationRegisterController.Register(station, pallet, operation, mold, "Pieza 1");
                    AppGlobal.Snap7Server.WriteWord(station.StatusChangeS7Ack, (ushort)operation.Code);
                }
            }

            TimerS7ComunicationStatus.Start();
        }