Commit 703618ec34ecd6e88edbfc273cec83ec35559df9
1 parent
3210318c77
Exists in
master
and in
2 other branches
세척 상황에서 에러 발생시 이벤트 발생 알림으로 수정
- ovenstatics에 stopClean signal 추가
Showing
2 changed files
with
48 additions
and
16 deletions
Show diff stats
app/gui/oven_control/ovenstatics.cpp
... | ... | @@ -22,6 +22,7 @@ OvenStatistics* OvenStatistics::getInstance(QObject *parent){ |
22 | 22 | // MainWindow* mw = (MainWindow*)parent; |
23 | 23 | // connect(mw->pcombiButton, SIGNAL(clicked()),p_singtonInstance, SLOT(onDataChanged())); |
24 | 24 | connect(p_singletonInstance->udp , SIGNAL(changed()), p_singletonInstance, SLOT(onDataChanged())); |
25 | + connect(p_singletonInstance->udp, SIGNAL(timeout()), p_singletonInstance, SLOT(onCommTimeoutFired())); | |
25 | 26 | QTimer *timer = new QTimer(p_singletonInstance); |
26 | 27 | connect(timer, SIGNAL(timeout()),p_singletonInstance,SLOT(oneSecTimerFired())); |
27 | 28 | timer->start(1000); //1000ms fired |
... | ... | @@ -359,9 +360,9 @@ void OvenStatistics::processSystemError(uint16_t errflag,time_t ltime){ |
359 | 360 | processErrorItems(item, sys_err_type_def[state][SYS_ERR_WATER_SPLY_FAIL],strMsg,strTitle,ltime, sys_err_sound_def[SYS_ERR_WATER_SPLY_FAIL]); |
360 | 361 | } |
361 | 362 | if(errflag & MAKE_MASK(SYS_ERR_WATER_LEVEL_FAIL)){ |
362 | - //급수 이상 -> 수위 센서 이상 | |
363 | + //급수 이상 -> 수위 상태 확인 | |
363 | 364 | item = &(srvdata->err_log.items.water_level_sensor_fail); |
364 | - strTitle = tr("수위 센서 이상"); | |
365 | + strTitle = tr("수위 상태 확인"); | |
365 | 366 | strMsg = tr("스팀통 수위 감지 안전장치가 작동하였습니다.\n제품에 들어가는 물 공급을 확인하십시오.\n물 공급이 정상적으로 들어갈 시 즉시 서비스센터에 연락하여 주십시오.\n단수 유무는 샤워건을 사용하십시오."); |
366 | 367 | processErrorItems(item, sys_err_type_def[state][SYS_ERR_WATER_LEVEL_FAIL],strMsg,strTitle,ltime, sys_err_sound_def[SYS_ERR_WATER_LEVEL_FAIL]); |
367 | 368 | } |
... | ... | @@ -645,7 +646,11 @@ void OvenStatistics::processErrorItems(error_item *item, error_exe_type errtype, |
645 | 646 | |
646 | 647 | if(errtype>=error_type_chkclrstopcmd){ |
647 | 648 | qDebug() << "exec killchild"; |
648 | - if(MainWindow::killChildCook()){ | |
649 | + if(state.cleaning_sate != 0){ | |
650 | + emit stopClean(); | |
651 | + pParent = QApplication::activeWindow(); | |
652 | + } | |
653 | + else if(MainWindow::killChildCook()){ | |
649 | 654 | pParent = MainWindow::getInstance(); |
650 | 655 | } |
651 | 656 | else{ |
... | ... | @@ -663,7 +668,7 @@ void OvenStatistics::processErrorItems(error_item *item, error_exe_type errtype, |
663 | 668 | case error_type_popclr: |
664 | 669 | case error_type_popnonclr: |
665 | 670 | case error_type_popclrstopcmd: |
666 | - { | |
671 | + { | |
667 | 672 | if(m_mapPopupList.find(erridx) == m_mapPopupList.end()){ |
668 | 673 | ErrorPopupDlg *dlg = new ErrorPopupDlg(pParent,MsgDesc,MsgTitle , (errtype > error_type_clrsplit), erridx, sndtype); |
669 | 674 | connect(dlg,SIGNAL(closedErrorPopup(int)), this, SLOT(onErrorPopupClosed(int))); |
... | ... | @@ -738,3 +743,27 @@ void OvenStatistics::onErrorPopupClosed(int erridx){ |
738 | 743 | m_mapPopupList.remove(erridx); |
739 | 744 | } |
740 | 745 | } |
746 | + | |
747 | +void OvenStatistics::onCommTimeoutFired() | |
748 | +{ | |
749 | + QWidget* pParent; | |
750 | + int erridx = MAX_ERROR_TYPE_CNT; | |
751 | + HACCP::error(tr("제어보드 통신에러 발생")); | |
752 | + | |
753 | + qDebug() << "exec killchild"; | |
754 | + if(MainWindow::killChildCook()){ | |
755 | + pParent = MainWindow::getInstance(); | |
756 | + } | |
757 | + else{ | |
758 | + pParent = QApplication::activeWindow(); | |
759 | + } | |
760 | + | |
761 | + if(m_mapPopupList.find(erridx) == m_mapPopupList.end()){ | |
762 | + ErrorPopupDlg *dlg = new ErrorPopupDlg(pParent,tr("제어보드 통신에러 발생"), tr("제어보드 통신에러 발생하였습니다"), | |
763 | + 0, erridx, 1); | |
764 | + connect(dlg,SIGNAL(closedErrorPopup(int)), this, SLOT(onErrorPopupClosed(int))); | |
765 | + m_mapPopupList.insert(erridx,dlg); | |
766 | + qApp->setActiveWindow(dlg); | |
767 | + dlg->showFullScreen(); | |
768 | + } | |
769 | +} | ... | ... |
app/gui/oven_control/ovenstatics.h
... | ... | @@ -224,18 +224,18 @@ private: |
224 | 224 | */ |
225 | 225 | //30047 |
226 | 226 | const uint32_t sys_err_mask[3][MAX_MODEL_COUNT] = { |
227 | - {0x0198, //ele_10 | |
228 | - 0x0198, //ele_20 | |
229 | - 0x0198, //ele_24 | |
230 | - 0x0198, //ele_40 | |
231 | - 0x0198, //lpg_10 | |
232 | - 0x0198, //lpg_20 | |
233 | - 0x0198, //lpg_24 | |
234 | - 0x0198, //lpg_40 | |
235 | - 0x0198, //lng_10 | |
236 | - 0x0198, //lng_20 | |
237 | - 0x0198, //lng_24 | |
238 | - 0x0198 //lng_40 | |
227 | + {0x0098, //ele_10 | |
228 | + 0x0098, //ele_20 | |
229 | + 0x0098, //ele_24 | |
230 | + 0x0098, //ele_40 | |
231 | + 0x0098, //lpg_10 | |
232 | + 0x0098, //lpg_20 | |
233 | + 0x0098, //lpg_24 | |
234 | + 0x0098, //lpg_40 | |
235 | + 0x0098, //lng_10 | |
236 | + 0x0098, //lng_20 | |
237 | + 0x0098, //lng_24 | |
238 | + 0x0098 //lng_40 | |
239 | 239 | },// noncooking state |
240 | 240 | {0x039d, //ele_10 |
241 | 241 | 0x039f, //ele_20 |
... | ... | @@ -524,9 +524,12 @@ public slots: |
524 | 524 | void oneSecTimerFired(void); |
525 | 525 | void onErrorPopupClosed(int erridx); |
526 | 526 | void setWndPassInputNull(void){m_wndSrvpassdlg = NULL;} |
527 | + void onCommTimeoutFired(); | |
527 | 528 | |
528 | 529 | signals: |
529 | 530 | void onErrorFired(int erridx); |
531 | + void stopClean(void); | |
532 | + | |
530 | 533 | }; |
531 | 534 | |
532 | 535 | #endif // OVENSTATICS_H | ... | ... |