Commit 15e45c49cc202203a2162c26b913726eb5d38624
1 parent
90bfa52489
Exists in
master
and in
2 other branches
세척 에러 유형 추가 및 에러 발생 동작 수정
- 에러 팝업 문구 수정 - 에러 사운드 추가
Showing
8 changed files
with
305 additions
and
187 deletions
Show diff stats
app/gui/oven_control/configmastervolumedlg.cpp
| 1 | + | |
| 1 | 2 | #include "configmastervolumedlg.h" |
| 2 | 3 | #include "ui_configmastervolumedlg.h" |
| 3 | 4 | |
| ... | ... | @@ -19,8 +20,9 @@ ConfigVolumeDlg::ConfigVolumeDlg(QWidget *parent, ConfigType type) : |
| 19 | 20 | qApp->setActiveWindow(this); |
| 20 | 21 | this->setFocus(); |
| 21 | 22 | |
| 22 | - foreach (QPushButton *button, findChildren<QPushButton *>()) | |
| 23 | - connect(button, &QPushButton::pressed, SoundPlayer::playClick); | |
| 23 | + | |
| 24 | + connect(ui->ctrBtnOk, &QPushButton::pressed, SoundPlayer::playClick); | |
| 25 | + connect(ui->ctrBtnCancel, &QPushButton::pressed, SoundPlayer::playClick); | |
| 24 | 26 | |
| 25 | 27 | |
| 26 | 28 | if(type == config_keypad_sound2){ | ... | ... |
app/gui/oven_control/configwindow.cpp
| ... | ... | @@ -283,17 +283,18 @@ void ConfigWindow::reloadUi(void){ |
| 283 | 283 | |
| 284 | 284 | Config* cfg = Config::getInstance(); |
| 285 | 285 | QString strtemp=""; |
| 286 | + | |
| 286 | 287 | for(i = 0; i < m_vectorMenuList.count();i++){ |
| 287 | 288 | pw = pws[i]; |
| 288 | 289 | ui->scrollAreaMenuLayout->removeWidget(pw); |
| 289 | - delete pw; | |
| 290 | + pw->deleteLater(); | |
| 290 | 291 | } |
| 291 | 292 | m_vectorMenuList.clear(); |
| 292 | 293 | |
| 293 | 294 | for(i=0;i<m_vectorFavorMenuList.count();i++){ |
| 294 | 295 | fpw = fpws[i]; |
| 295 | 296 | ui->scrollAreaMenuLayout->removeWidget(fpw); |
| 296 | - delete fpw; | |
| 297 | + fpw->deleteLater(); | |
| 297 | 298 | } |
| 298 | 299 | m_vectorFavorMenuList.clear(); |
| 299 | 300 | ... | ... |
app/gui/oven_control/define.h
app/gui/oven_control/errorpopupdlg.cpp
| ... | ... | @@ -5,7 +5,7 @@ |
| 5 | 5 | #include "soundplayer.h" |
| 6 | 6 | #include "udphandler.h" |
| 7 | 7 | |
| 8 | -ErrorPopupDlg::ErrorPopupDlg(QWidget *parent, const QString &MsgDesc, const QString &MsgTitle, bool sendClrCmd,int erridx) : | |
| 8 | +ErrorPopupDlg::ErrorPopupDlg(QWidget *parent, const QString &MsgDesc, const QString &MsgTitle, bool sendClrCmd,int erridx, int errsound) : | |
| 9 | 9 | QDialog(parent), |
| 10 | 10 | ui(new Ui::ErrorPopupDlg) |
| 11 | 11 | { |
| ... | ... | @@ -15,14 +15,36 @@ ErrorPopupDlg::ErrorPopupDlg(QWidget *parent, const QString &MsgDesc, const QStr |
| 15 | 15 | this->setWindowFlags(Qt::FramelessWindowHint); |
| 16 | 16 | |
| 17 | 17 | //ui->centralwidget->setWindowFlags(Qt::FramelessWindowHint); |
| 18 | + | |
| 19 | + //if(MsgDesc.length()> ) | |
| 20 | + | |
| 21 | + qDebug() << "msgdesc length is " << MsgDesc.length(); | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + if(MsgDesc.size()>100){ | |
| 26 | + QFont font = ui->ctrlWarnDescription->font(); | |
| 27 | + font.setPointSize(font.pointSize() - 1); | |
| 28 | + ui->ctrlWarnDescription->setFont(font); | |
| 29 | + } | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 18 | 33 | ui->ctrlWarnDescription->setText(MsgDesc); |
| 19 | 34 | ui->ctrlWarnTitle->setText(MsgTitle); |
| 20 | 35 | m_pParent = parent; |
| 21 | 36 | |
| 22 | - foreach (QPushButton *button, findChildren<QPushButton *>()) | |
| 23 | - connect(button, &QPushButton::pressed, SoundPlayer::playClick); | |
| 37 | +// foreach (QPushButton *button, findChildren<QPushButton *>()) | |
| 38 | +// connect(button, &QPushButton::pressed, SoundPlayer::playClick); | |
| 24 | 39 | m_bClrCmd = sendClrCmd; |
| 25 | 40 | m_nErrIdx = erridx; |
| 41 | + | |
| 42 | + if(errsound == 1){ | |
| 43 | + SoundPlayer::repeatError1(); | |
| 44 | + } | |
| 45 | + else if(errsound ==2){ | |
| 46 | + SoundPlayer::repeatError2(); | |
| 47 | + } | |
| 26 | 48 | } |
| 27 | 49 | |
| 28 | 50 | ErrorPopupDlg::~ErrorPopupDlg() |
| ... | ... | @@ -32,6 +54,7 @@ ErrorPopupDlg::~ErrorPopupDlg() |
| 32 | 54 | |
| 33 | 55 | void ErrorPopupDlg::on_ctrlOkBtn_clicked() |
| 34 | 56 | { |
| 57 | + SoundPlayer::stop(); | |
| 35 | 58 | emit closedErrorPopup(m_nErrIdx); |
| 36 | 59 | qApp->setActiveWindow(m_pParent); |
| 37 | 60 | this->hide(); | ... | ... |
app/gui/oven_control/errorpopupdlg.h
| ... | ... | @@ -12,7 +12,7 @@ class ErrorPopupDlg : public QDialog |
| 12 | 12 | Q_OBJECT |
| 13 | 13 | |
| 14 | 14 | public: |
| 15 | - explicit ErrorPopupDlg(QWidget *parent = 0, const QString &MsgDesc=0, const QString &MsgTitle=0, bool sendClrCmd = false, int erridx = -1); | |
| 15 | + explicit ErrorPopupDlg(QWidget *parent = 0, const QString &MsgDesc=0, const QString &MsgTitle=0, bool sendClrCmd = false, int erridx = -1, int errsound=0); | |
| 16 | 16 | ~ErrorPopupDlg(); |
| 17 | 17 | |
| 18 | 18 | signals: | ... | ... |
app/gui/oven_control/ovenstatics.cpp
| ... | ... | @@ -74,6 +74,7 @@ void OvenStatistics::onDataChanged() |
| 74 | 74 | time(<ime); |
| 75 | 75 | |
| 76 | 76 | if((control.cooking || oven->cooking() || oven->preheating() || oven->cooldown())) cookingstate = 1; |
| 77 | + else if(state.cleaning_sate != 0 ) cookingstate = 2; | |
| 77 | 78 | |
| 78 | 79 | if(oven->cooking() && control.system){ |
| 79 | 80 | if(state.door_state ==1 && curdoorstate==0){ |
| ... | ... | @@ -121,71 +122,72 @@ void OvenStatistics::processSensorError(uint16_t errflag, time_t ltime){ |
| 121 | 122 | if( control.system==0 && !bCookingState ) state = SYS_OFF_COOK_OFF; |
| 122 | 123 | else if(control.system != 0 && !bCookingState) state = SYS_ON_COOK_OFF; |
| 123 | 124 | else if(control.system !=0 && bCookingState) state = SYS_ON_COOK_ON; |
| 125 | + else if(control.system !=0 && this->state.cleaning_sate !=0 ) state = SYS_ON_WASH; | |
| 124 | 126 | else state = SYS_ON_COOK_OFF; |
| 125 | 127 | |
| 126 | 128 | if(errflag & MAKE_MASK(SENSOR_ERR_SENSOR_1)){ |
| 127 | 129 | item = &(srvdata->err_log.items.inner_temp_fail); |
| 128 | - strTitle = tr("내부 온도 이상 발생"); | |
| 129 | - strMsg = tr("내부 온도 센서에 이상이 발생하였습니다."); | |
| 130 | - processErrorItems(item,sensor_err_type_def[state][SENSOR_ERR_SENSOR_1],strMsg,strTitle, ltime); | |
| 130 | + strTitle = tr("내부 온도 센서 이상"); | |
| 131 | + strMsg = tr("조리실 내부 온도센서 오류가 발생하였습니다.\n제품의 전원을 OFF한 후 다시 ON해 주십시오.\n이 후에도 문제가 해결되지 않을 경우, 서비스센터로 연락하여 주십시오."); | |
| 132 | + processErrorItems(item,sensor_err_type_def[state][SENSOR_ERR_SENSOR_1],strMsg,strTitle, ltime, sensor_err_sound_def[SENSOR_ERR_SENSOR_1]); | |
| 131 | 133 | } |
| 132 | 134 | if(errflag & MAKE_MASK(SENSOR_ERR_SENSOR_2)){ |
| 133 | 135 | item = &(srvdata->err_log.items.qunching_temp_fail); |
| 134 | - strTitle = tr("퀀칭 온도 이상 발생"); | |
| 135 | - strMsg = tr("퀀칭 온도에 이상이 발생하였습니다."); | |
| 136 | - processErrorItems(item,sensor_err_type_def[state][SENSOR_ERR_SENSOR_2],strMsg,strTitle, ltime); | |
| 136 | + strTitle = tr("배수 탱크 온도 센서 이상"); | |
| 137 | + strMsg = tr("배수 탱크 온도센서 오류가 발생하였습니다.\n제품의 전원을 OFF한 후 다시 ON해 주십시오.\n이 후에도 문제가 해결되지 않을 경우, 서비스센터로 연락하여 주십시오."); | |
| 138 | + processErrorItems(item,sensor_err_type_def[state][SENSOR_ERR_SENSOR_2],strMsg,strTitle, ltime,sensor_err_sound_def[SENSOR_ERR_SENSOR_2]); | |
| 137 | 139 | } |
| 138 | 140 | if(errflag & MAKE_MASK(SENSOR_ERR_SENSOR_3)){ |
| 139 | 141 | //Reserved allerrornoe 설정 |
| 140 | 142 | item = &(srvdata->err_log.items.qunching_temp_fail); |
| 141 | - strTitle = tr("퀀칭 온도 이상 발생"); | |
| 142 | - strMsg = tr("퀀칭 온도 센서에 이상이 발생하였습니다."); | |
| 143 | - processErrorItems(item,sensor_err_type_def[state][SENSOR_ERR_SENSOR_3],strMsg,strTitle, ltime); | |
| 143 | + strTitle = tr("퀀칭 온도 센서 발생"); | |
| 144 | + strMsg = tr("퀀칭 온도센서 오류가 발생하였습니다.\n제품의 전원을 OFF한 후 다시 ON해 주십시오.\n이 후에도 문제가 해결되지 않을 경우, 서비스센터로 연락하여 주십시오."); | |
| 145 | + processErrorItems(item,sensor_err_type_def[state][SENSOR_ERR_SENSOR_3],strMsg,strTitle, ltime,sensor_err_sound_def[SENSOR_ERR_SENSOR_3]); | |
| 144 | 146 | } |
| 145 | 147 | if(errflag & MAKE_MASK(SENSOR_ERR_SENSOR_4)){ |
| 146 | 148 | item = &(srvdata->err_log.items.wall_temp1_fail); |
| 147 | - strTitle = tr("벽면 온도 이상 발생"); | |
| 148 | - strMsg = tr("벽면 온도 센서에 이상이 발생하였습니다."); | |
| 149 | - processErrorItems(item,sensor_err_type_def[state][SENSOR_ERR_SENSOR_4],strMsg,strTitle, ltime); | |
| 149 | + strTitle = tr("벽면 온도 센서 이상"); | |
| 150 | + strMsg = tr("조리실 벽면 센서 오류가 발생하였습니다.\n제품의 전원을 OFF한 후 다시 ON해 주십시오.\n이 후에도 문제가 해결되지 않을 경우, 서비스센터로 연락하여 주십시오."); | |
| 151 | + processErrorItems(item,sensor_err_type_def[state][SENSOR_ERR_SENSOR_4],strMsg,strTitle, ltime,sensor_err_sound_def[SENSOR_ERR_SENSOR_4]); | |
| 150 | 152 | } |
| 151 | 153 | if(errflag & MAKE_MASK(SENSOR_ERR_SENSOR_5)){ |
| 152 | 154 | item = &(srvdata->err_log.items.steam_gen_temp_fail); |
| 153 | - strTitle = tr("스팀제네레이터 온도 이상 발생"); | |
| 154 | - strMsg = tr("스팀제네레이터 온도 센서에 이상이 발생하였습니다."); | |
| 155 | - processErrorItems(item,sensor_err_type_def[state][SENSOR_ERR_SENSOR_5],strMsg,strTitle, ltime); | |
| 155 | + strTitle = tr("스팀발생기 온도 센서 이상"); | |
| 156 | + strMsg = tr("스팀발생기 내부 센서 오류가 발생하였습니다.\n제품의 전원을 OFF한 후 다시 ON해 주십시오.\n이 후에도 문제가 해결되지 않을 경우, 서비스센터로 연락하여 주십시오."); | |
| 157 | + processErrorItems(item,sensor_err_type_def[state][SENSOR_ERR_SENSOR_5],strMsg,strTitle, ltime,sensor_err_sound_def[SENSOR_ERR_SENSOR_5]); | |
| 156 | 158 | } |
| 157 | 159 | if(errflag & MAKE_MASK(SENSOR_ERR_SENSOR_6)){ |
| 158 | 160 | item = &(srvdata->err_log.items.meatprove_temp1_fail); |
| 159 | - strTitle = tr("미트프로브 온도 이상 발생"); | |
| 160 | - strMsg = tr("미트프로브 온도 센서에 이상이 발생하였습니다."); | |
| 161 | - processErrorItems(item,sensor_err_type_def[state][SENSOR_ERR_SENSOR_6],strMsg,strTitle, ltime); | |
| 161 | + strTitle = tr("중심온도 센서 이상"); | |
| 162 | + strMsg = tr("중심온도계 센서 오류가 발생하였습니다.\n제품의 전원을 OFF한 후 다시 ON해 주십시오.\n이 후에도 문제가 해결되지 않을 경우, 서비스센터로 연락하여 주십시오."); | |
| 163 | + processErrorItems(item,sensor_err_type_def[state][SENSOR_ERR_SENSOR_6],strMsg,strTitle, ltime,sensor_err_sound_def[SENSOR_ERR_SENSOR_6]); | |
| 162 | 164 | } |
| 163 | 165 | if(errflag & MAKE_MASK(SENSOR_ERR_SENSOR_7)){ |
| 164 | 166 | //Reseved |
| 165 | 167 | item = &(srvdata->err_log.items.meatprove_temp2_fail); |
| 166 | - strTitle = tr("미트프로브2 온도 이상 발생"); | |
| 167 | - strMsg = tr("미트프로브2 온도 센서에 이상이 발생하였습니다."); | |
| 168 | - processErrorItems(item,sensor_err_type_def[state][SENSOR_ERR_SENSOR_7],strMsg , strTitle, ltime); | |
| 168 | + strTitle = tr("중심온도 센서 이상"); | |
| 169 | + strMsg = tr("중심온도계 센서 오류가 발생하였습니다.\n제품의 전원을 OFF한 후 다시 ON해 주십시오.\n이 후에도 문제가 해결되지 않을 경우, 서비스센터로 연락하여 주십시오."); | |
| 170 | + processErrorItems(item,sensor_err_type_def[state][SENSOR_ERR_SENSOR_7],strMsg , strTitle, ltime,sensor_err_sound_def[SENSOR_ERR_SENSOR_7]); | |
| 169 | 171 | } |
| 170 | 172 | if(errflag & MAKE_MASK(SENSOR_ERR_SENSOR_8)){ |
| 171 | 173 | //Reserved |
| 172 | 174 | item = &(srvdata->err_log.items.meatprove_temp3_fail); |
| 173 | - strMsg = tr("미트프로브3 온도 센서에 이상이 발생하였습니다."); | |
| 174 | - strTitle = tr("미트프로브3 온도 이상 발생"); | |
| 175 | - processErrorItems(item,sensor_err_type_def[state][SENSOR_ERR_SENSOR_8],strMsg,strTitle, ltime); | |
| 175 | + strTitle = tr("중심온도 센서 이상"); | |
| 176 | + strMsg = tr("중심온도계 센서 오류가 발생하였습니다.\n제품의 전원을 OFF한 후 다시 ON해 주십시오.\n이 후에도 문제가 해결되지 않을 경우, 서비스센터로 연락하여 주십시오."); | |
| 177 | + processErrorItems(item,sensor_err_type_def[state][SENSOR_ERR_SENSOR_8],strMsg,strTitle, ltime,sensor_err_sound_def[SENSOR_ERR_SENSOR_8]); | |
| 176 | 178 | } |
| 177 | 179 | if(errflag & MAKE_MASK(SENSOR_ERR_SENSOR_9)){ |
| 178 | 180 | //Reserved |
| 179 | 181 | item = &(srvdata->err_log.items.meatprove_temp4_fail); |
| 180 | - strMsg = tr("미트프로브4 온도 센서에 이상이 발생하였습니다."); | |
| 181 | - strTitle = tr("미트프로브4 온도 이상 발생"); | |
| 182 | - processErrorItems(item,sensor_err_type_def[state][SENSOR_ERR_SENSOR_9],strMsg,strTitle, ltime); | |
| 182 | + strTitle = tr("중심온도 센서 이상"); | |
| 183 | + strMsg = tr("중심온도계 센서 오류가 발생하였습니다.\n제품의 전원을 OFF한 후 다시 ON해 주십시오.\n이 후에도 문제가 해결되지 않을 경우, 서비스센터로 연락하여 주십시오."); | |
| 184 | + processErrorItems(item,sensor_err_type_def[state][SENSOR_ERR_SENSOR_9],strMsg,strTitle, ltime,sensor_err_sound_def[SENSOR_ERR_SENSOR_9]); | |
| 183 | 185 | } |
| 184 | 186 | if(errflag & MAKE_MASK(SENSOR_ERR_SENSOR_10)){ |
| 185 | 187 | item = &(srvdata->err_log.items.pcb_temp_fail); |
| 186 | - strMsg = tr("PCB 온도 센서에 이상이 발생하였습니다."); | |
| 187 | - strTitle = tr("PCB 온도 이상 발생"); | |
| 188 | - processErrorItems(item,sensor_err_type_def[state][SENSOR_ERR_SENSOR_10],strMsg,strTitle, ltime); | |
| 188 | + strTitle = tr("PCB온도 과열 이상"); | |
| 189 | + strMsg = tr("PCB 과열 안전장치가 작동하였습니다.\n제품의 전원을 OFF한 뒤, 즉시 서비스센터에 연락하여 주십시오."); | |
| 190 | + processErrorItems(item,sensor_err_type_def[state][SENSOR_ERR_SENSOR_10],strMsg,strTitle, ltime,sensor_err_sound_def[SENSOR_ERR_SENSOR_10]); | |
| 189 | 191 | } |
| 190 | 192 | } |
| 191 | 193 | |
| ... | ... | @@ -197,37 +199,38 @@ void OvenStatistics::processCommError(uint16_t errflag, time_t ltime){ |
| 197 | 199 | if( control.system==0 && !bCookingState ) state = SYS_OFF_COOK_OFF; |
| 198 | 200 | else if(control.system != 0 && !bCookingState) state = SYS_ON_COOK_OFF; |
| 199 | 201 | else if(control.system !=0 && bCookingState) state = SYS_ON_COOK_ON; |
| 202 | + else if(control.system !=0 && this->state.cleaning_sate !=0 ) state = SYS_ON_WASH; | |
| 200 | 203 | else state = SYS_ON_COOK_OFF; |
| 201 | 204 | |
| 202 | 205 | if(errflag & MAKE_MASK(COMM_ERR_BUNNER1)){ |
| 203 | 206 | item = &(srvdata->err_log.items.upper_pan_fail); |
| 204 | - strMsg = tr("상부 송풍기 통신 이상 발생"); | |
| 205 | - strTitle = tr("상부 송풍기 이상 발생"); | |
| 206 | - processErrorItems(item,comm_err_type_def[state][COMM_ERR_BUNNER1],strMsg,strTitle, ltime); | |
| 207 | + strTitle = tr("상부 버너 컨트롤러 통신 이상"); | |
| 208 | + strMsg = tr("상부 버너 컨트롤러 PCB 통신 불량이 발생하였습니다.\n제품의 전원을 OFF한 후 다시 ON해 주십시오.\n이 후에도 문제가 해결되지 않을 경우, 서비스센터로 연락하여 주십시오."); | |
| 209 | + processErrorItems(item,comm_err_type_def[state][COMM_ERR_BUNNER1],strMsg,strTitle, ltime, comm_err_sound_def[COMM_ERR_BUNNER1]); | |
| 207 | 210 | } |
| 208 | 211 | if(errflag & MAKE_MASK(COMM_ERR_BUNNER2)){ |
| 209 | 212 | item = &(srvdata->err_log.items.lower_pan_fail); |
| 210 | - strMsg = tr("하부 송풍기 통신 이상 발생"); | |
| 211 | - strTitle = tr("하부 송풍기 이상 발생"); | |
| 212 | - processErrorItems(item,comm_err_type_def[state][COMM_ERR_BUNNER2],strMsg,strTitle, ltime); | |
| 213 | + strTitle = tr("하부 버너 컨트롤러 통신 이상"); | |
| 214 | + strMsg = tr("하 버너 컨트롤러 PCB 통신 불량이 발생하였습니다.\n제품의 전원을 OFF한 후 다시 ON해 주십시오.\n이 후에도 문제가 해결되지 않을 경우, 서비스센터로 연락하여 주십시오."); | |
| 215 | + processErrorItems(item,comm_err_type_def[state][COMM_ERR_BUNNER2],strMsg,strTitle, ltime, comm_err_sound_def[COMM_ERR_BUNNER2]); | |
| 213 | 216 | } |
| 214 | 217 | if(errflag & MAKE_MASK(COMM_ERR_BUNNER3)){ |
| 215 | 218 | item = &(srvdata->err_log.items.steam_pan_fail); |
| 216 | - strMsg = tr("스팀 송풍기 통신 이상 발생"); | |
| 217 | - strTitle = tr("스팀 송풍기 이상 발생"); | |
| 218 | - processErrorItems(item,comm_err_type_def[state][COMM_ERR_BUNNER3],strMsg,strTitle, ltime); | |
| 219 | + strTitle = tr("스팀 버너 컨트롤러 통신 이상"); | |
| 220 | + strMsg = tr("스팀발생기 버너 컨트롤러 PCB 통신 불량이 발생하였습니다.\n제품의 전원을 OFF한 후 다시 ON해 주십시오.\n이 후에도 문제가 해결되지 않을 경우, 서비스센터로 연락하여 주십시오."); | |
| 221 | + processErrorItems(item,comm_err_type_def[state][COMM_ERR_BUNNER3],strMsg,strTitle, ltime, comm_err_sound_def[COMM_ERR_BUNNER3]); | |
| 219 | 222 | } |
| 220 | 223 | if(errflag & MAKE_MASK(COMM_ERR_LOWERFAN)){ |
| 221 | 224 | item = &(srvdata->err_log.items.lower_motor_fail); |
| 222 | - strMsg = tr("하부 FAN 컨트롤러 통신 이상 발생"); | |
| 223 | - strTitle = tr("하부 FAN 컨트롤러 이상 발생"); | |
| 224 | - processErrorItems(item,comm_err_type_def[state][COMM_ERR_BUNNER2],strMsg,strTitle, ltime); | |
| 225 | + strTitle = tr("하부 FAN 모터 컨트롤러 이상"); | |
| 226 | + strMsg = tr("하부 Fan 모터 컨트롤러 이상 상황이 발생하였습니다.\n제품의 전원을 OFF한 후 다시 ON해 주십시오.\n이 후에도 문제가 해결되지 않을 경우, 서비스센터로 연락하여 주십시오."); | |
| 227 | + processErrorItems(item,comm_err_type_def[state][COMM_ERR_BUNNER2],strMsg,strTitle, ltime, comm_err_sound_def[COMM_ERR_LOWERFAN]); | |
| 225 | 228 | } |
| 226 | 229 | if(errflag & MAKE_MASK(COMM_ERR_UPPERFAN)){ |
| 227 | 230 | item = &(srvdata->err_log.items.upper_motor_fail); |
| 228 | - strMsg = tr("상부 FAN 컨트롤러 통신 이상 발생"); | |
| 229 | - strTitle = tr("상부 FAN 컨트롤러 이상 발생"); | |
| 230 | - processErrorItems(item,comm_err_type_def[state][COMM_ERR_BUNNER2],strMsg,strTitle, ltime); | |
| 231 | + strTitle = tr("상부 FAN 모터 컨트롤러 이상"); | |
| 232 | + strMsg = tr("상부 Fan 모터 컨트롤러 이상 상황이 발생하였습니다.\n제품의 전원을 OFF한 후 다시 ON해 주십시오.\n이 후에도 문제가 해결되지 않을 경우, 서비스센터로 연락하여 주십시오."); | |
| 233 | + processErrorItems(item,comm_err_type_def[state][COMM_ERR_BUNNER2],strMsg,strTitle, ltime, comm_err_sound_def[COMM_ERR_UPPERFAN]); | |
| 231 | 234 | } |
| 232 | 235 | } |
| 233 | 236 | |
| ... | ... | @@ -239,37 +242,38 @@ void OvenStatistics::processStateError(uint16_t errflag, time_t ltime){ |
| 239 | 242 | if( control.system==0 && !bCookingState ) state = SYS_OFF_COOK_OFF; |
| 240 | 243 | else if(control.system != 0 && !bCookingState) state = SYS_ON_COOK_OFF; |
| 241 | 244 | else if(control.system !=0 && bCookingState) state = SYS_ON_COOK_ON; |
| 245 | + else if(control.system !=0 && this->state.cleaning_sate !=0 ) state = SYS_ON_WASH; | |
| 242 | 246 | else state = SYS_ON_COOK_OFF; |
| 243 | 247 | |
| 244 | 248 | if(errflag & MAKE_MASK(STATE_ERR_BUNNER1)){ |
| 245 | 249 | item = &(srvdata->err_log.items.upper_pan_fail); |
| 246 | 250 | strMsg = tr("버너컨트롤러 1 이상 발생하였습니다."); |
| 247 | 251 | strTitle = tr("버너컨트롤러 1 이상 발생"); |
| 248 | - processErrorItems(item,state_err_type_def[state][STATE_ERR_BUNNER1],strMsg,strTitle, ltime); | |
| 252 | + processErrorItems(item,state_err_type_def[state][STATE_ERR_BUNNER1],strMsg,strTitle, ltime, state_err_sound_def[STATE_ERR_BUNNER1]); | |
| 249 | 253 | } |
| 250 | 254 | if(errflag & MAKE_MASK(STATE_ERR_BUNNER2)){ |
| 251 | 255 | item = &(srvdata->err_log.items.lower_pan_fail); |
| 252 | 256 | strMsg = tr("버너컨트롤러 2 이상 발생하였습니다."); |
| 253 | 257 | strTitle = tr("버너컨트롤러 2 이상 발생"); |
| 254 | - processErrorItems(item,state_err_type_def[state][STATE_ERR_BUNNER2],strMsg,strTitle, ltime); | |
| 258 | + processErrorItems(item,state_err_type_def[state][STATE_ERR_BUNNER2],strMsg,strTitle, ltime, state_err_sound_def[STATE_ERR_BUNNER2]); | |
| 255 | 259 | } |
| 256 | 260 | if(errflag & MAKE_MASK(STATE_ERR_BUNNER3)){ |
| 257 | 261 | item = &(srvdata->err_log.items.steam_pan_fail); |
| 258 | 262 | strMsg = tr("버너컨트롤러 3 이상 발생하였습니다."); |
| 259 | 263 | strTitle = tr("버너컨트롤러 3 이상 발생"); |
| 260 | - processErrorItems(item,state_err_type_def[state][STATE_ERR_BUNNER3],strMsg,strTitle, ltime); | |
| 264 | + processErrorItems(item,state_err_type_def[state][STATE_ERR_BUNNER3],strMsg,strTitle, ltime, state_err_sound_def[STATE_ERR_BUNNER3]); | |
| 261 | 265 | } |
| 262 | 266 | if(errflag & MAKE_MASK(STATE_ERR_LOWERFAN)){ |
| 263 | 267 | item = &(srvdata->err_log.items.lower_motor_fail); |
| 264 | 268 | strMsg = tr("하부 FAN 컨트롤러 이상 발생하였습니다."); |
| 265 | 269 | strTitle = tr("하부 FAN 컨트롤러 이상 발생"); |
| 266 | - processErrorItems(item,state_err_type_def[state][STATE_ERR_BUNNER2],strMsg,strTitle, ltime); | |
| 270 | + processErrorItems(item,state_err_type_def[state][STATE_ERR_BUNNER2],strMsg,strTitle, ltime, state_err_sound_def[STATE_ERR_LOWERFAN]); | |
| 267 | 271 | } |
| 268 | 272 | if(errflag & MAKE_MASK(STATE_ERR_UPPERFAN)){ |
| 269 | 273 | item = &(srvdata->err_log.items.upper_motor_fail); |
| 270 | 274 | strMsg = tr("상부 FAN 컨트롤러 이상 발생하였습니다."); |
| 271 | 275 | strTitle = tr("상부 FAN 컨트롤러 이상 발생"); |
| 272 | - processErrorItems(item,state_err_type_def[state][STATE_ERR_BUNNER2],strMsg,strTitle, ltime); | |
| 276 | + processErrorItems(item,state_err_type_def[state][STATE_ERR_BUNNER2],strMsg,strTitle, ltime, state_err_sound_def[STATE_ERR_UPPERFAN]); | |
| 273 | 277 | } |
| 274 | 278 | } |
| 275 | 279 | |
| ... | ... | @@ -281,73 +285,74 @@ void OvenStatistics::processSystemError(uint16_t errflag,time_t ltime){ |
| 281 | 285 | if( control.system==0 && !bCookingState ) state = SYS_OFF_COOK_OFF; |
| 282 | 286 | else if(control.system != 0 && !bCookingState) state = SYS_ON_COOK_OFF; |
| 283 | 287 | else if(control.system !=0 && bCookingState) state = SYS_ON_COOK_ON; |
| 288 | + else if(control.system !=0 && this->state.cleaning_sate !=0 ) state = SYS_ON_WASH; | |
| 284 | 289 | else state = SYS_ON_COOK_OFF; |
| 285 | 290 | |
| 286 | 291 | if( errflag & MAKE_MASK(SYS_ERR_FIRE_TRIGGER1)){ |
| 287 | 292 | //버너 컨트롤러 1 착화 이상 |
| 288 | 293 | item = &(srvdata->err_log.items.upper_fire_fail); |
| 289 | - strMsg = tr("상부 버너 착화가 되지 않습니다."); | |
| 290 | - strTitle = tr("상부 버너 착화 이상 발생"); | |
| 291 | - processErrorItems(item, sys_err_type_def[state][SYS_ERR_FIRE_TRIGGER1],strMsg,strTitle,ltime); | |
| 294 | + strTitle = tr("상부 버너 착화 이상"); | |
| 295 | + strMsg = tr("상부 버너 착화 이상 안전장치가 작동하였습니다.\n제품의 전원을 OFF한 후 가스 밸브가 잠겨있는지 확인 해 주십시오.\n가스 밸브가 열려 있는데도 에러 발생 시, 즉시 서비스센터에 연락하여 주십시오."); | |
| 296 | + processErrorItems(item, sys_err_type_def[state][SYS_ERR_FIRE_TRIGGER1],strMsg,strTitle,ltime, sys_err_sound_def[SYS_ERR_FIRE_TRIGGER1]); | |
| 292 | 297 | } |
| 293 | 298 | if(errflag & MAKE_MASK(SYS_ERR_FIRE_TRIGGER2)){ |
| 294 | 299 | //버너 컨트롤러 2 착화 이상 |
| 295 | 300 | item = &(srvdata->err_log.items.lower_fire_fail); |
| 296 | - strMsg = tr("하부 버너 착화가 되지 않습니다."); | |
| 297 | - strTitle = tr("하부 버너 착화 이상 발생"); | |
| 298 | - processErrorItems(item, sys_err_type_def[state][SYS_ERR_FIRE_TRIGGER2],strMsg,strTitle,ltime); | |
| 301 | + strTitle = tr("하부 버너 착화 이상"); | |
| 302 | + strMsg = tr("하부 버너 착화 이상 안전장치가 작동하였습니다.\n제품의 전원을 OFF한 후 가스 밸브가 잠겨있는지 확인 해 주십시오.\n가스 밸브가 열려 있는데도 에러 발생 시, 즉시 서비스센터에 연락하여 주십시오."); | |
| 303 | + processErrorItems(item, sys_err_type_def[state][SYS_ERR_FIRE_TRIGGER2],strMsg,strTitle,ltime, sys_err_sound_def[SYS_ERR_FIRE_TRIGGER1]); | |
| 299 | 304 | } |
| 300 | 305 | if(errflag & MAKE_MASK(SYS_ERR_FIRE_TRIGGER3)){ |
| 301 | 306 | item = &(srvdata->err_log.items.steam_fire_fail); |
| 302 | - strMsg = tr("스팀 버너 착화가 되지 않습니다."); | |
| 303 | - strTitle = tr("스팀 버너 착화 이상 발생"); | |
| 304 | - processErrorItems(item, sys_err_type_def[state][SYS_ERR_FIRE_TRIGGER3],strMsg,strTitle,ltime); | |
| 307 | + strTitle = tr("스팀 버너 착화 이상"); | |
| 308 | + strMsg = tr("스팀발생기 버너 착화 이상 안전장치가 작동하였습니다.\n제품의 전원을 OFF한 후 가스 밸브가 잠겨있는지 확인 해 주십시오.\n가스 밸브가 열려 있는데도 에러 발생 시, 즉시 서비스센터에 연락하여 주십시오."); | |
| 309 | + processErrorItems(item, sys_err_type_def[state][SYS_ERR_FIRE_TRIGGER3],strMsg,strTitle,ltime, sys_err_sound_def[SYS_ERR_FIRE_TRIGGER3]); | |
| 305 | 310 | } |
| 306 | 311 | if(errflag & MAKE_MASK(SYS_ERR_OVNE_TEMP_ALARM)){ |
| 307 | 312 | item = &(srvdata->err_log.items.inner_temp_high_alarm); |
| 308 | - strMsg = tr("내부 온도가 과열되었습니다."); | |
| 309 | - strTitle = tr("내부 온도 과열 발생"); | |
| 310 | - processErrorItems(item, sys_err_type_def[state][SYS_ERR_OVNE_TEMP_ALARM],strMsg,strTitle,ltime); | |
| 313 | + strTitle = tr("내부 온도 과열 이상"); | |
| 314 | + strMsg = tr("조리실 내부 과열 안전장치가 작동하였습니다.\n제품의 전원을 OFF한 뒤, 즉시 서비스센터에 연락하여 주십시오."); | |
| 315 | + processErrorItems(item, sys_err_type_def[state][SYS_ERR_OVNE_TEMP_ALARM],strMsg,strTitle,ltime,sys_err_sound_def[SYS_ERR_OVNE_TEMP_ALARM]); | |
| 311 | 316 | } |
| 312 | 317 | if(errflag & MAKE_MASK(SYS_ERR_QUN_TEMP_ALARM)){ |
| 313 | 318 | //퀀칭 온도 센서 과열 |
| 314 | 319 | item = &(srvdata->err_log.items.qunching_temp_high_alarm); |
| 315 | - strTitle = tr("퀀칭 온도 센서 이상 발생"); | |
| 316 | - strMsg = tr("퀀칭 온도 센서가 과열되었습니다"); | |
| 317 | - processErrorItems(item, sys_err_type_def[state][SYS_ERR_QUN_TEMP_ALARM],strMsg,strTitle,ltime); | |
| 320 | + strTitle = tr("배수 탱크 온도 과열 이상"); | |
| 321 | + strMsg = tr("배수 탱크 과열 안전장치가 작동하였습니다.\n제품의 전원을 OFF한 뒤, 즉시 서비스센터에 연락하여 주십시오."); | |
| 322 | + processErrorItems(item, sys_err_type_def[state][SYS_ERR_QUN_TEMP_ALARM],strMsg,strTitle,ltime,sys_err_sound_def[SYS_ERR_QUN_TEMP_ALARM]); | |
| 318 | 323 | } |
| 319 | 324 | if(errflag & MAKE_MASK(SYS_ERR_CENTER_TEMP_ALARM)){ |
| 320 | 325 | //중심 온도 과열 |
| 321 | 326 | item = &(srvdata->err_log.items.meatprove_temp1_high_alarm); |
| 322 | - strTitle = tr("미트프로브 온도 센서 이상 발생."); | |
| 323 | - strMsg = tr("미트프로브 온도 센서 과열되었습니다."); | |
| 324 | - processErrorItems(item, sys_err_type_def[state][SYS_ERR_CENTER_TEMP_ALARM],strMsg,strTitle,ltime); | |
| 327 | + strTitle = tr("중심 온도 과열 이상"); | |
| 328 | + strMsg = tr("중심온도계 과열 안전장치가 작동하였습니다.\n제품의 전원을 OFF한 뒤, 즉시 서비스센터에 연락하여 주십시오."); | |
| 329 | + processErrorItems(item, sys_err_type_def[state][SYS_ERR_CENTER_TEMP_ALARM],strMsg,strTitle,ltime, sys_err_sound_def[SYS_ERR_CENTER_TEMP_ALARM]); | |
| 325 | 330 | } |
| 326 | 331 | if(errflag & MAKE_MASK(SYS_ERR_WALL_TEMP_ALARM)){ |
| 327 | 332 | item = &(srvdata->err_log.items.wall_temp1_high_alarm); |
| 328 | - strTitle = tr("벽면 온도 센서 이상 발생."); | |
| 329 | - strMsg = tr("벽면 온도 센서가 과열 되었습니다."); | |
| 330 | - processErrorItems(item, sys_err_type_def[state][SYS_ERR_WALL_TEMP_ALARM],strMsg,strTitle,ltime); | |
| 333 | + strTitle = tr("벽면 온도 과열 이상"); | |
| 334 | + strMsg = tr("조리실 벽면 과열 안전장치가 작동하였습니다.\n제품의 전원을 OFF한 뒤, 즉시 서비스센터에 연락하여 주십시오."); | |
| 335 | + processErrorItems(item, sys_err_type_def[state][SYS_ERR_WALL_TEMP_ALARM],strMsg,strTitle,ltime, sys_err_sound_def[SYS_ERR_WALL_TEMP_ALARM]); | |
| 331 | 336 | } |
| 332 | 337 | if(errflag & MAKE_MASK(SYS_ERR_STAM_TEMP_ALARM)){ |
| 333 | 338 | item = &(srvdata->err_log.items.steam_gen_temp_high_alram); |
| 334 | - strTitle = tr("스팀제네레이터 온도 이상 발생."); | |
| 335 | - strMsg = tr("스팀제네레이터 온도 센서가 과열 되었습니다."); | |
| 336 | - processErrorItems(item, sys_err_type_def[state][SYS_ERR_STAM_TEMP_ALARM],strMsg,strTitle,ltime); | |
| 339 | + strTitle = tr("스팀 온도 과열 이상"); | |
| 340 | + strMsg = tr("스팀통 내부 과열 안전장치가 작동하였습니다.\n제품의 전원을 OFF한 뒤, 즉시 서비스센터에 연락하여 주십시오."); | |
| 341 | + processErrorItems(item, sys_err_type_def[state][SYS_ERR_STAM_TEMP_ALARM],strMsg,strTitle,ltime, sys_err_sound_def[SYS_ERR_STAM_TEMP_ALARM]); | |
| 337 | 342 | } |
| 338 | 343 | if(errflag & MAKE_MASK(SYS_ERR_WATER_SPLY_FAIL)){ |
| 339 | 344 | //급수 이상 -> 유량 센서 이상 |
| 340 | 345 | item = &(srvdata->err_log.items.water_level_sensor_fail); |
| 341 | - strTitle = tr("급수 이상 발생"); | |
| 342 | - strMsg = tr("급수가 되지 않습니다."); | |
| 343 | - processErrorItems(item, sys_err_type_def[state][SYS_ERR_WATER_SPLY_FAIL],strMsg,strTitle,ltime); | |
| 346 | + strTitle = tr("급수 이상"); | |
| 347 | + strMsg = tr("제품 급수이상 안전장치가 작동하였습니다.\n제품에 들어가는 물 공급을 확인하십시오.\n물 공급이 정상적으로 들어갈 시 즉시 서비스센터에 연락하여 주십시오.\n단수 유무는 샤워건을 사용하십시오."); | |
| 348 | + processErrorItems(item, sys_err_type_def[state][SYS_ERR_WATER_SPLY_FAIL],strMsg,strTitle,ltime, sys_err_sound_def[SYS_ERR_WATER_SPLY_FAIL]); | |
| 344 | 349 | } |
| 345 | 350 | if(errflag & MAKE_MASK(SYS_ERR_WATER_LEVEL_FAIL)){ |
| 346 | 351 | //급수 이상 -> 수위 센서 이상 |
| 347 | 352 | item = &(srvdata->err_log.items.water_level_sensor_fail); |
| 348 | - strTitle = tr("급수 이상 발생"); | |
| 349 | - strMsg = tr("급수가 되지 않습니다."); | |
| 350 | - processErrorItems(item, sys_err_type_def[state][SYS_ERR_WATER_LEVEL_FAIL],strMsg,strTitle,ltime); | |
| 353 | + strTitle = tr("수위 센서 이상"); | |
| 354 | + strMsg = tr("스팀통 수위 감지 안전장치가 작동하였습니다.\n제품에 들어가는 물 공급을 확인하십시오.\n물 공급이 정상적으로 들어갈 시 즉시 서비스센터에 연락하여 주십시오.\n단수 유무는 샤워건을 사용하십시오."); | |
| 355 | + processErrorItems(item, sys_err_type_def[state][SYS_ERR_WATER_LEVEL_FAIL],strMsg,strTitle,ltime, sys_err_sound_def[SYS_ERR_WATER_LEVEL_FAIL]); | |
| 351 | 356 | } |
| 352 | 357 | } |
| 353 | 358 | |
| ... | ... | @@ -374,6 +379,7 @@ void OvenStatistics::oneSecTimerFired(void){ |
| 374 | 379 | uint16_t errstatetemp=0; |
| 375 | 380 | int cookingstate=0; |
| 376 | 381 | if((control.cooking || oven->cooking() || oven->preheating() || oven->cooldown())) cookingstate =1; |
| 382 | + else if(state.cleaning_sate !=0) cookingstate = 2; | |
| 377 | 383 | |
| 378 | 384 | ltime = time(NULL); |
| 379 | 385 | |
| ... | ... | @@ -393,14 +399,14 @@ void OvenStatistics::oneSecTimerFired(void){ |
| 393 | 399 | nCommErrVal = state.communication_error; |
| 394 | 400 | if(nCommErrVal ==0) { |
| 395 | 401 | curCommErrorState = nCommErrVal; |
| 396 | - nCommErrValStableCnt = 60; | |
| 402 | + nCommErrValStableCnt = DELAY_ERROR_TIME; | |
| 397 | 403 | } |
| 398 | 404 | else { |
| 399 | 405 | nCommErrValStableCnt=0; |
| 400 | 406 | } |
| 401 | 407 | } |
| 402 | 408 | else{ |
| 403 | - if(nCommErrValStableCnt >=60){ | |
| 409 | + if(nCommErrValStableCnt >=DELAY_ERROR_TIME){ | |
| 404 | 410 | errstatetemp = state.communication_error; |
| 405 | 411 | if(errstatetemp!=0 && errstatetemp != curCommErrorState ){ |
| 406 | 412 | processCommError( (errstatetemp & comm_err_mask[cookingstate][cfg->getConfigValue(Define::config_model).d32]),ltime ); |
| ... | ... | @@ -414,14 +420,14 @@ void OvenStatistics::oneSecTimerFired(void){ |
| 414 | 420 | nStateErrVal = state.controller_error; |
| 415 | 421 | if(nStateErrVal == 0 ) { |
| 416 | 422 | curControlErrorState = nStateErrVal; |
| 417 | - nStateErrValStableCnt=60; | |
| 423 | + nStateErrValStableCnt=DELAY_ERROR_TIME; | |
| 418 | 424 | } |
| 419 | 425 | else{ |
| 420 | 426 | nStateErrValStableCnt=0; |
| 421 | 427 | } |
| 422 | 428 | } |
| 423 | 429 | else{ |
| 424 | - if(nStateErrValStableCnt>=60){ | |
| 430 | + if(nStateErrValStableCnt>=DELAY_ERROR_TIME){ | |
| 425 | 431 | errstatetemp = state.controller_error; |
| 426 | 432 | if(errstatetemp != 0 && errstatetemp != curControlErrorState){ |
| 427 | 433 | processStateError((errstatetemp&state_err_mask[cookingstate][cfg->getConfigValue(Define::config_model).d32]),ltime); |
| ... | ... | @@ -604,7 +610,7 @@ void OvenStatistics::oneSecTimerFired(void){ |
| 604 | 610 | |
| 605 | 611 | } |
| 606 | 612 | |
| 607 | -void OvenStatistics::processErrorItems(error_item *item, error_exe_type errtype, const QString &MsgDesc, const QString &MsgTitle, time_t ltime){ | |
| 613 | +void OvenStatistics::processErrorItems(error_item *item, error_exe_type errtype, const QString &MsgDesc, const QString &MsgTitle, time_t ltime, error_sound_type sndtype){ | |
| 608 | 614 | QWidget* pParent; |
| 609 | 615 | uint32_t erridx = (uint32_t) (item - &(srvdata->err_log.values[0])); |
| 610 | 616 | |
| ... | ... | @@ -646,7 +652,7 @@ void OvenStatistics::processErrorItems(error_item *item, error_exe_type errtype, |
| 646 | 652 | case error_type_popclrstopcmd: |
| 647 | 653 | { |
| 648 | 654 | if(m_mapPopupList.find(erridx) == m_mapPopupList.end()){ |
| 649 | - ErrorPopupDlg *dlg = new ErrorPopupDlg(pParent,MsgDesc,MsgTitle , (errtype > error_type_clrsplit), erridx); | |
| 655 | + ErrorPopupDlg *dlg = new ErrorPopupDlg(pParent,MsgDesc,MsgTitle , (errtype > error_type_clrsplit), erridx, sndtype); | |
| 650 | 656 | connect(dlg,SIGNAL(closedErrorPopup(int)), this, SLOT(onErrorPopupClosed(int))); |
| 651 | 657 | m_mapPopupList.insert(erridx,dlg); |
| 652 | 658 | qApp->setActiveWindow(dlg); |
| ... | ... | @@ -662,7 +668,7 @@ void OvenStatistics::processErrorItems(error_item *item, error_exe_type errtype, |
| 662 | 668 | //EngineerMenuWindow *w = new EngineerMenuWindow(0); |
| 663 | 669 | //w->showFullScreen(); |
| 664 | 670 | if(m_mapPopupList.find(erridx)==m_mapPopupList.end()){ |
| 665 | - ErrorPopupDlg *dlg = new ErrorPopupDlg(pParent,MsgDesc,MsgTitle, false,erridx); | |
| 671 | + ErrorPopupDlg *dlg = new ErrorPopupDlg(pParent,MsgDesc,MsgTitle, false,erridx,sndtype); | |
| 666 | 672 | connect(dlg,SIGNAL(closedErrorPopup(int)),this,SLOT(onErrorPopupClosed(int))); |
| 667 | 673 | m_mapPopupList.insert(erridx,dlg); |
| 668 | 674 | dlg->showFullScreen(); | ... | ... |
app/gui/oven_control/ovenstatics.h
| ... | ... | @@ -12,8 +12,8 @@ |
| 12 | 12 | |
| 13 | 13 | |
| 14 | 14 | #define MAX_MODEL_COUNT 12 |
| 15 | -#define SYS_STATE_MAX 4 | |
| 16 | - | |
| 15 | +#define SYS_STATE_MAX 5 | |
| 16 | +#define DELAY_ERROR_TIME 10 //Secs | |
| 17 | 17 | |
| 18 | 18 | #define SYS_ERR_MAX 10 |
| 19 | 19 | |
| ... | ... | @@ -93,7 +93,8 @@ enum sys_state_type{ |
| 93 | 93 | SYS_OFF_COOK_OFF=0, |
| 94 | 94 | SYS_ON_COOK_OFF=1, |
| 95 | 95 | SYS_ON_COOK_ON=2, |
| 96 | - SYS_OFF_COOK_ON=3 //unnormal state | |
| 96 | + SYS_ON_WASH=3, | |
| 97 | + SYS_OFF_COOK_ON=4 //unnormal state | |
| 97 | 98 | }; |
| 98 | 99 | |
| 99 | 100 | enum sys_error_id{ |
| ... | ... | @@ -155,6 +156,12 @@ enum error_exe_type{ |
| 155 | 156 | error_type_engclrstopcmd, |
| 156 | 157 | }; |
| 157 | 158 | |
| 159 | +enum error_sound_type{ | |
| 160 | + error_sound_none=0, | |
| 161 | + error_sound1, | |
| 162 | + error_sound2 | |
| 163 | +}; | |
| 164 | + | |
| 158 | 165 | |
| 159 | 166 | enum wash_mode_type{ |
| 160 | 167 | wash_mode_nocleanser=1, |
| ... | ... | @@ -211,35 +218,48 @@ public: |
| 211 | 218 | |
| 212 | 219 | private: |
| 213 | 220 | |
| 214 | - const uint32_t sys_err_mask[2][MAX_MODEL_COUNT] = { | |
| 215 | - {0x00f8, //ele_10 | |
| 216 | - 0x00f8, //ele_20 | |
| 217 | - 0x00f8, //ele_24 | |
| 218 | - 0x00f8, //ele_40 | |
| 219 | - 0x00f8, //lpg_10 | |
| 220 | - 0x00f8, //lpg_20 | |
| 221 | - 0x00f8, //lpg_24 | |
| 222 | - 0x00f8, //lpg_40 | |
| 223 | - 0x00f8, //lng_10 | |
| 224 | - 0x00f8, //lng_20 | |
| 225 | - 0x00f8, //lng_24 | |
| 226 | - 0x00f8 //lng_40 | |
| 227 | - },// end of noncooking state | |
| 228 | - {0x03fd, //ele_10 | |
| 229 | - 0x03ff, //ele_20 | |
| 230 | - 0x03fd, //ele_24 | |
| 231 | - 0x03ff, //ele_40 | |
| 232 | - 0x03fd, //lpg_10 | |
| 233 | - 0x03ff, //lpg_20 | |
| 234 | - 0x03fd, //lpg_24 | |
| 235 | - 0x03ff, //lpg_40 | |
| 236 | - 0x03fd, //lng_10 | |
| 237 | - 0x03ff, //lng_20 | |
| 238 | - 0x03fd, //lng_24 | |
| 239 | - 0x03ff //lng_40 | |
| 240 | - }, | |
| 221 | + const uint32_t sys_err_mask[3][MAX_MODEL_COUNT] = { | |
| 222 | + {0x00b8, //ele_10 | |
| 223 | + 0x00b8, //ele_20 | |
| 224 | + 0x00b8, //ele_24 | |
| 225 | + 0x00b8, //ele_40 | |
| 226 | + 0x00b8, //lpg_10 | |
| 227 | + 0x00b8, //lpg_20 | |
| 228 | + 0x00b8, //lpg_24 | |
| 229 | + 0x00b8, //lpg_40 | |
| 230 | + 0x00b8, //lng_10 | |
| 231 | + 0x00b8, //lng_20 | |
| 232 | + 0x00b8, //lng_24 | |
| 233 | + 0x00b8 //lng_40 | |
| 234 | + },// noncooking state | |
| 235 | + {0x03bd, //ele_10 | |
| 236 | + 0x03bf, //ele_20 | |
| 237 | + 0x03bd, //ele_24 | |
| 238 | + 0x03bf, //ele_40 | |
| 239 | + 0x03bd, //lpg_10 | |
| 240 | + 0x03bf, //lpg_20 | |
| 241 | + 0x03bd, //lpg_24 | |
| 242 | + 0x03bf, //lpg_40 | |
| 243 | + 0x03bd, //lng_10 | |
| 244 | + 0x03bf, //lng_20 | |
| 245 | + 0x03bd, //lng_24 | |
| 246 | + 0x03bf //lng_40 | |
| 247 | + },//cooking state | |
| 248 | + {0x03bd, //ele_10 | |
| 249 | + 0x03bf, //ele_20 | |
| 250 | + 0x03bd, //ele_24 | |
| 251 | + 0x03bf, //ele_40 | |
| 252 | + 0x03bd, //lpg_10 | |
| 253 | + 0x03bf, //lpg_20 | |
| 254 | + 0x03bd, //lpg_24 | |
| 255 | + 0x03bf, //lpg_40 | |
| 256 | + 0x03bd, //lng_10 | |
| 257 | + 0x03bf, //lng_20 | |
| 258 | + 0x03bd, //lng_24 | |
| 259 | + 0x03bf //lng_40 | |
| 260 | + } //washing state | |
| 241 | 261 | }; |
| 242 | - const uint32_t comm_err_mask[2][MAX_MODEL_COUNT] = { | |
| 262 | + const uint32_t comm_err_mask[3][MAX_MODEL_COUNT] = { | |
| 243 | 263 | {0x000d, //ele_10 |
| 244 | 264 | 0x001f, //ele_20 |
| 245 | 265 | 0x000d, //ele_24 |
| ... | ... | @@ -252,7 +272,20 @@ private: |
| 252 | 272 | 0x001f, //lng_20 |
| 253 | 273 | 0x000d, //lng_24 |
| 254 | 274 | 0x001f //lng_40 |
| 255 | - }, // end of noncooking state | |
| 275 | + }, // noncooking state | |
| 276 | + {0x000d, //ele_10 | |
| 277 | + 0x001f, //ele_20 | |
| 278 | + 0x000d, //ele_24 | |
| 279 | + 0x001f, //ele_40 | |
| 280 | + 0x000d, //lpg_10 | |
| 281 | + 0x001f, //lpg_20 | |
| 282 | + 0x000d, //lpg_24 | |
| 283 | + 0x001f, //lpg_40 | |
| 284 | + 0x000d, //lng_10 | |
| 285 | + 0x001f, //lng_20 | |
| 286 | + 0x000d, //lng_24 | |
| 287 | + 0x001f //lng_40 | |
| 288 | + }, //cooking state | |
| 256 | 289 | {0x000d, //ele_10 |
| 257 | 290 | 0x001f, //ele_20 |
| 258 | 291 | 0x000d, //ele_24 |
| ... | ... | @@ -265,7 +298,8 @@ private: |
| 265 | 298 | 0x001f, //lng_20 |
| 266 | 299 | 0x000d, //lng_24 |
| 267 | 300 | 0x001f //lng_40 |
| 268 | - }}; | |
| 301 | + } // washing state | |
| 302 | + }; | |
| 269 | 303 | // const uint32_t sensor_err_mask[MAX_MODEL_COUNT] = {0x0213, //ele10 |
| 270 | 304 | // 0x0213, //ele 20 |
| 271 | 305 | // 0x0213, //ele 24 |
| ... | ... | @@ -280,60 +314,89 @@ private: |
| 280 | 314 | // 0x0213 //lng40 |
| 281 | 315 | // }; |
| 282 | 316 | |
| 283 | - const uint32_t sensor_err_mask[2][MAX_MODEL_COUNT] = { | |
| 284 | - {0x0213, //ele10 | |
| 285 | - 0x0213, //ele 20 | |
| 286 | - 0x0213, //ele 24 | |
| 287 | - 0x0213, //ele 40 | |
| 288 | - 0x0213, //lpg 10 | |
| 289 | - 0x0213, //lpg 20 | |
| 290 | - 0x0213, //lpg 24 | |
| 291 | - 0x0213, //lpg 40 | |
| 292 | - 0x0213, //lng 10 | |
| 293 | - 0x0213, //lng 20 | |
| 294 | - 0x0213, //lng 24 | |
| 295 | - 0x0213 //lng40 | |
| 317 | + const uint32_t sensor_err_mask[3][MAX_MODEL_COUNT] = { | |
| 318 | + {0x03f3, //ele10 | |
| 319 | + 0x03f3, //ele 20 | |
| 320 | + 0x03f3, //ele 24 | |
| 321 | + 0x03f3, //ele 40 | |
| 322 | + 0x03f3, //lpg 10 | |
| 323 | + 0x03f3, //lpg 20 | |
| 324 | + 0x03f3, //lpg 24 | |
| 325 | + 0x03f3, //lpg 40 | |
| 326 | + 0x03f3, //lng 10 | |
| 327 | + 0x03f3, //lng 20 | |
| 328 | + 0x03f3, //lng 24 | |
| 329 | + 0x03f3 //lng40 | |
| 296 | 330 | }, // end of noncooking state |
| 297 | - {0x0213, //ele10 | |
| 298 | - 0x0213, //ele 20 | |
| 299 | - 0x0213, //ele 24 | |
| 300 | - 0x0213, //ele 40 | |
| 301 | - 0x0213, //lpg 10 | |
| 302 | - 0x0213, //lpg 20 | |
| 303 | - 0x0213, //lpg 24 | |
| 304 | - 0x0213, //lpg 40 | |
| 305 | - 0x0213, //lng 10 | |
| 306 | - 0x0213, //lng 20 | |
| 307 | - 0x0213, //lng 24 | |
| 308 | - 0x0213 //lng40 | |
| 309 | - }}; | |
| 310 | - const uint32_t state_err_mask[2][MAX_MODEL_COUNT] = { | |
| 311 | - {0x0008, //ele 10 | |
| 312 | - 0x0018, //ele 20 | |
| 313 | - 0x0008, //ele 24 | |
| 314 | - 0x0018, //ele 40 | |
| 315 | - 0x0008, //lpg 10 | |
| 316 | - 0x0018, //lpg 20 | |
| 317 | - 0x0008, //lpg 24 | |
| 318 | - 0x0018, //lpg 40 | |
| 319 | - 0x0008, //lng 10 | |
| 320 | - 0x0018, //lng 20 | |
| 321 | - 0x0008, //lng 24 | |
| 322 | - 0x0018 //lng 40 | |
| 331 | + {0x03f3, //ele10 | |
| 332 | + 0x03f3, //ele 20 | |
| 333 | + 0x03f3, //ele 24 | |
| 334 | + 0x03f3, //ele 40 | |
| 335 | + 0x03f3, //lpg 10 | |
| 336 | + 0x03f3, //lpg 20 | |
| 337 | + 0x03f3, //lpg 24 | |
| 338 | + 0x03f3, //lpg 40 | |
| 339 | + 0x03f3, //lng 10 | |
| 340 | + 0x03f3, //lng 20 | |
| 341 | + 0x03f3, //lng 24 | |
| 342 | + 0x03f3 //lng40 | |
| 343 | + }, //cooking state | |
| 344 | + {0x03f3, //ele10 | |
| 345 | + 0x03f3, //ele 20 | |
| 346 | + 0x03f3, //ele 24 | |
| 347 | + 0x03f3, //ele 40 | |
| 348 | + 0x03f3, //lpg 10 | |
| 349 | + 0x03f3, //lpg 20 | |
| 350 | + 0x03f3, //lpg 24 | |
| 351 | + 0x03f3, //lpg 40 | |
| 352 | + 0x03f3, //lng 10 | |
| 353 | + 0x03f3, //lng 20 | |
| 354 | + 0x03f3, //lng 24 | |
| 355 | + 0x03f3 //lng40 | |
| 356 | + } // washing state | |
| 357 | + }; | |
| 358 | + | |
| 359 | + const uint32_t state_err_mask[3][MAX_MODEL_COUNT] = { | |
| 360 | + {0x0000, //ele 10 | |
| 361 | + 0x0000, //ele 20 | |
| 362 | + 0x0000, //ele 24 | |
| 363 | + 0x0000, //ele 40 | |
| 364 | + 0x0000, //lpg 10 | |
| 365 | + 0x0000, //lpg 20 | |
| 366 | + 0x0000, //lpg 24 | |
| 367 | + 0x0000, //lpg 40 | |
| 368 | + 0x0000, //lng 10 | |
| 369 | + 0x0000, //lng 20 | |
| 370 | + 0x0000, //lng 24 | |
| 371 | + 0x0000 //lng 40 | |
| 323 | 372 | }, //end of noncooking state |
| 324 | - {0x0008, //ele 10 | |
| 325 | - 0x0018, //ele 20 | |
| 326 | - 0x0008, //ele 24 | |
| 327 | - 0x0018, //ele 40 | |
| 328 | - 0x0008, //lpg 10 | |
| 329 | - 0x0018, //lpg 20 | |
| 330 | - 0x0008, //lpg 24 | |
| 331 | - 0x0018, //lpg 40 | |
| 332 | - 0x0008, //lng 10 | |
| 333 | - 0x0018, //lng 20 | |
| 334 | - 0x0008, //lng 24 | |
| 335 | - 0x0018 //lng 40 | |
| 336 | - }}; | |
| 373 | + {0x0000, //ele 10 | |
| 374 | + 0x0000, //ele 20 | |
| 375 | + 0x0000, //ele 24 | |
| 376 | + 0x0000, //ele 40 | |
| 377 | + 0x0000, //lpg 10 | |
| 378 | + 0x0000, //lpg 20 | |
| 379 | + 0x0000, //lpg 24 | |
| 380 | + 0x0000, //lpg 40 | |
| 381 | + 0x0000, //lng 10 | |
| 382 | + 0x0000, //lng 20 | |
| 383 | + 0x0000, //lng 24 | |
| 384 | + 0x0000 //lng 40 | |
| 385 | + }, | |
| 386 | + {0x0000, //ele 10 | |
| 387 | + 0x0000, //ele 20 | |
| 388 | + 0x0000, //ele 24 | |
| 389 | + 0x0000, //ele 40 | |
| 390 | + 0x0000, //lpg 10 | |
| 391 | + 0x0000, //lpg 20 | |
| 392 | + 0x0000, //lpg 24 | |
| 393 | + 0x0000, //lpg 40 | |
| 394 | + 0x0000, //lng 10 | |
| 395 | + 0x0000, //lng 20 | |
| 396 | + 0x0000, //lng 24 | |
| 397 | + 0x0000 //lng 40 | |
| 398 | + }//washing state | |
| 399 | + }; | |
| 337 | 400 | |
| 338 | 401 | |
| 339 | 402 | const error_exe_type sys_err_type_def[SYS_STATE_MAX][SYS_ERR_MAX]={ //30047 |
| ... | ... | @@ -344,6 +407,8 @@ private: |
| 344 | 407 | {error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd, |
| 345 | 408 | error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd}, // SYS_ON_COOK_ON state |
| 346 | 409 | {error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr, |
| 410 | + error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr}, // SYS_ON_WASH state | |
| 411 | + {error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr, | |
| 347 | 412 | error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr}, // SYS_OFF_COOK_ON state |
| 348 | 413 | }; |
| 349 | 414 | |
| ... | ... | @@ -351,6 +416,7 @@ private: |
| 351 | 416 | {error_type_popnonclr,error_type_popnonclr,error_type_popnonclr,error_type_engnonclr,error_type_engnonclr}, //SYS_OFF_COO_OFF |
| 352 | 417 | {error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd}, //SYS_ON_COO_OFF |
| 353 | 418 | {error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd}, //SYS_ON_COO_ON |
| 419 | + {error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr}, //SYS_ON_WASH | |
| 354 | 420 | {error_type_popnonclr,error_type_popnonclr,error_type_popnonclr,error_type_engnonclr,error_type_engnonclr}, //SYS_OFF_COO_ON |
| 355 | 421 | }; |
| 356 | 422 | |
| ... | ... | @@ -358,20 +424,38 @@ private: |
| 358 | 424 | {error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr}, //SYS_OFF_COO_OFF |
| 359 | 425 | {error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd}, //SYS_ON_COO_OFF |
| 360 | 426 | {error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd}, //SYS_ON_COO_ON |
| 427 | + {error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd}, //SYS_ON_WASH | |
| 361 | 428 | {error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr}, //SYS_OFF_COO_ON |
| 362 | 429 | }; |
| 363 | 430 | |
| 364 | 431 | const error_exe_type sensor_err_type_def[SYS_STATE_MAX][SENSOR_ERR_MAX]={ //30049 |
| 365 | - {error_type_engnonclr,error_type_popnonclr,error_type_allnone,error_type_popnonclr,error_type_onlychk, | |
| 366 | - error_type_popnonclr,error_type_allnone,error_type_allnone,error_type_allnone,error_type_popnonclr}, // SYS_OFF_COOK_OFF state | |
| 432 | + {error_type_popclr,error_type_popclr,error_type_allnone,error_type_popclr,error_type_popclr, | |
| 433 | + error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr}, // SYS_OFF_COOK_OFF state | |
| 367 | 434 | {error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_allnone,error_type_popclrstopcmd,error_type_popclrstopcmd, |
| 368 | 435 | error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd}, // SYS_ON_COOK_OFF state |
| 369 | 436 | {error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_allnone,error_type_popclrstopcmd,error_type_popclrstopcmd, |
| 370 | 437 | error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd,error_type_popclrstopcmd}, // SYS_ON_COOK_ON state |
| 438 | + {error_type_popclr,error_type_popclr,error_type_allnone,error_type_allnone,error_type_popclr, | |
| 439 | + error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr,error_type_popclr}, // SYS_ON_WASH | |
| 371 | 440 | {error_type_engnonclr,error_type_popnonclr,error_type_allnone,error_type_popnonclr,error_type_onlychk, |
| 372 | 441 | error_type_popnonclr,error_type_allnone,error_type_allnone,error_type_allnone,error_type_popnonclr}, // SYS_OFF_COOK_ON state same with SYS_OFF_COOK_OFF |
| 373 | 442 | }; |
| 374 | 443 | |
| 444 | + | |
| 445 | + const error_sound_type sys_err_sound_def[SYS_ERR_MAX]={ //30047 | |
| 446 | + error_sound2,error_sound2,error_sound2,error_sound2,error_sound2, | |
| 447 | + error_sound2,error_sound2,error_sound2,error_sound2,error_sound2}; | |
| 448 | + | |
| 449 | + const error_sound_type comm_err_sound_def[COMM_ERR_MAX] ={ //30048 | |
| 450 | + error_sound1,error_sound1,error_sound1,error_sound1,error_sound1}; | |
| 451 | + | |
| 452 | + const error_sound_type state_err_sound_def[STATE_ERR_MAX] ={ //30057 | |
| 453 | + error_sound1,error_sound1,error_sound1,error_sound1,error_sound1}; | |
| 454 | + | |
| 455 | + const error_sound_type sensor_err_sound_def[SENSOR_ERR_MAX]={ //30049 | |
| 456 | + error_sound1,error_sound1,error_sound1,error_sound1,error_sound1, | |
| 457 | + error_sound1,error_sound1,error_sound1,error_sound1,error_sound2}; | |
| 458 | + | |
| 375 | 459 | const uint8_t sensorTypeInfo[MAX_LOG_SENSOR] = { |
| 376 | 460 | 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, |
| 377 | 461 | 1, 1, 2, 0, 1, 1 |
| ... | ... | @@ -409,7 +493,7 @@ private: |
| 409 | 493 | void processCommError(uint16_t errflag,time_t ltime); |
| 410 | 494 | void processSensorError(uint16_t errflag, time_t ltime); |
| 411 | 495 | void processStateError(uint16_t errflat, time_t ltime); |
| 412 | - void processErrorItems(error_item *item, error_exe_type errtype, const QString &MsgDesc,const QString &MsgTitle, time_t ltime); | |
| 496 | + void processErrorItems(error_item *item, error_exe_type errtype, const QString &MsgDesc,const QString &MsgTitle, time_t ltime, error_sound_type errsnd=error_sound1); | |
| 413 | 497 | |
| 414 | 498 | public: |
| 415 | 499 | bool loadWashState(void){return srvdata->loadWashState();} | ... | ... |
app/gui/oven_control/servicepassinputdlg.cpp
| ... | ... | @@ -19,8 +19,10 @@ ServicePassInputDlg::ServicePassInputDlg(QWidget *parent, service_pass_type mode |
| 19 | 19 | ui->ctrProgressBar->setFocus(); |
| 20 | 20 | |
| 21 | 21 | this->setResult(QDialog::Accepted); |
| 22 | - foreach (QPushButton *button, findChildren<QPushButton *>()) | |
| 23 | - connect(button, &QPushButton::pressed, SoundPlayer::playClick); | |
| 22 | +// foreach (QPushButton *button, findChildren<QPushButton *>()) | |
| 23 | +// connect(button, &QPushButton::pressed, SoundPlayer::playClick); | |
| 24 | + connect(ui->ctrBtnOk, &QPushButton::pressed, SoundPlayer::playClick); | |
| 25 | + connect(ui->ctrBtnCancel, &QPushButton::pressed, SoundPlayer::playClick); | |
| 24 | 26 | ui->ctrProgressBar->setMaxProgress(0,MAX_PASSWORD); |
| 25 | 27 | m_nCurInputCount = 0; |
| 26 | 28 | memset(m_strInputPass, 0x00, MAX_PASSWORD+1); | ... | ... |