|
@@ -117,7 +117,7 @@ CHSPScannerFSM::CHSPScannerFSM(void)
|
|
|
m_nSrcState(sIdle),
|
|
|
m_desiredAction(USER_EVT_QUIT),
|
|
|
dwLastUserCode(0),
|
|
|
- m_dwMaxImageSize(500)
|
|
|
+ m_dwMaxImageSize(500), m_lightOn(false)
|
|
|
{
|
|
|
HARDWARE_ENTITY_RESET_ENTITYID(m_entCode, 0x217);
|
|
|
}
|
|
@@ -1126,6 +1126,7 @@ unsigned int CHSPScannerFSM::s6_HidePreview_on_event(FSMEvent* e)
|
|
|
uRet = 0;
|
|
|
}
|
|
|
else {
|
|
|
+ ToSwithLight();
|
|
|
pEvt->m_ctx->Answer(Error_Succeed);
|
|
|
uRet = 1;
|
|
|
}
|
|
@@ -1514,7 +1515,8 @@ int CHSPScannerFSM::StartPreview(SpReqAnsContext<HSPScannerService_StartPreview_
|
|
|
if (FAILURED(erroCode)) {
|
|
|
nRes = 1;
|
|
|
} else {
|
|
|
- LogEvent(Severity_Middle, LOG_EVT_HSPS_LIGHT_ON, "HSPScanner warning on.");
|
|
|
+ /** 无论如何都打开一次灯,所以这里应该是有所冗余的 [Gifur@2025325]*/
|
|
|
+ ToSwithLight();
|
|
|
}
|
|
|
ctx->Answer(TransECWithRepeat(erroCode), GetLastUserCode());
|
|
|
return nRes;
|
|
@@ -1560,7 +1562,8 @@ int CHSPScannerFSM::StopPreview(SpReqAnsContext<HSPScannerService_CancelPreview_
|
|
|
}
|
|
|
}
|
|
|
if (ISSUCCEEDED(erroCode)) {
|
|
|
- LogEvent(Severity_Middle, LOG_EVT_HSPS_LIGHT_OFF, "HSPScanner warning off.");
|
|
|
+ /** 取消预览时如果仅仅是隐藏也会关闭灯 [Gifur@2025325]*/
|
|
|
+ ToSwithLight(false);
|
|
|
}
|
|
|
ctx->Answer(TransECWithRepeat(erroCode), GetLastUserCode());
|
|
|
return nRes;
|
|
@@ -1707,6 +1710,7 @@ int CHSPScannerFSM::ScanImage(SpReqAnsContext<HSPScannerService_ScanImage_Req,
|
|
|
//RTA2N0Q
|
|
|
SetErrorAndLog(eHide, MEC_DEVAPI_HSPSCANNER_SetParam, "DevAdapter::SetParam", __FUNCTION__, IsInBusiness(), ullEnd - ullStart, HSPScannerService_LogCode_ScanImage, CombineJsonContext("HSPS_VIEW_HIDE"));
|
|
|
}
|
|
|
+ /** 拍照成功虽然隐藏了但没有关闭灯 [Gifur@2025325]*/
|
|
|
}
|
|
|
|
|
|
DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_USER).setLogCode(HSPScannerService_LogCode_ScanImage).setAPI(__FUNCTION__)("ScanImage succ");
|
|
@@ -2087,7 +2091,7 @@ ErrorCodeEnum CHSPScannerFSM::OnDevExit()
|
|
|
const ULONGLONG ullEnd = SP::Module::Comm::RVCGetTickCount();
|
|
|
if (ISSUCCEEDED(erroCode)) {
|
|
|
DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_SYSTEM).setLogCode(__FUNCTION__).setAPI("DevAdapter::CancelPreview").setCostTime(ullEnd - ullStart)("SetPreview");
|
|
|
- LogEvent(Severity_Middle, LOG_EVT_HSPS_LIGHT_OFF, "HSPScanner warning off.");
|
|
|
+ ToSwithLight(false);
|
|
|
LogWarn(Severity_Low, Error_Debug, LOG_EVT_HSPSCANNER_SetPreview_Close, "cancelPreview succ.");
|
|
|
} else {
|
|
|
//RTA2N04
|
|
@@ -2141,7 +2145,7 @@ int CHSPScannerFSM::StartPreviewJS(SpReqAnsContext<HSPScannerService_StartPrevie
|
|
|
}
|
|
|
else {
|
|
|
DbgWithLink(LOG_LEVEL_INFO, LOG_TYPE_USER).setLogCode(HSPScannerService_LogCode_StartPreviewJS).setAPI("DevAdapter::SetPreview").setCostTime(ullEnd - ullStart)("StartPreview::SetPreview(1)");
|
|
|
- LogEvent(Severity_Middle, LOG_EVT_HSPS_LIGHT_ON, "HSPScanner warning on.");
|
|
|
+ ToSwithLight();
|
|
|
}
|
|
|
ctx->Answer(erroCode, GetLastUserCode());
|
|
|
return ret;
|
|
@@ -2182,7 +2186,7 @@ int CHSPScannerFSM::CancelPreview(SpReqAnsContext<HSPScannerService_CancelPrevie
|
|
|
}
|
|
|
|
|
|
if (ISSUCCEEDED(erroCode)) {
|
|
|
- LogEvent(Severity_Middle, LOG_EVT_HSPS_LIGHT_OFF, "HSPScanner warning off.");
|
|
|
+ ToSwithLight(false);
|
|
|
}
|
|
|
return ret;
|
|
|
}
|
|
@@ -2195,6 +2199,7 @@ int CHSPScannerFSM::ScanImageJS(SpReqAnsContext<HSPScannerService_ScanImageJS_Re
|
|
|
SetLastUserCode();
|
|
|
CSimpleStringA csImageFile(true);
|
|
|
GetCurImageName(csImageFile);
|
|
|
+ DelAndGetNewFileName(csImageFile);
|
|
|
ULONGLONG ullStart = SP::Module::Comm::RVCGetTickCount();
|
|
|
erroCode = m_hDevHelper->ScanImage((LPCTSTR)csImageFile);
|
|
|
ULONGLONG ullEnd = SP::Module::Comm::RVCGetTickCount();
|
|
@@ -2344,6 +2349,15 @@ ErrorCodeEnum CHSPScannerFSM::SetPreviewProperty(const JS::PreviewSettings& val,
|
|
|
return erroCode;
|
|
|
}
|
|
|
|
|
|
+void CHSPScannerFSM::ToSwithLight(bool turnOn /*= true*/)
|
|
|
+{
|
|
|
+ if (m_lightOn != turnOn) {
|
|
|
+ if (turnOn) LogEvent(Severity_Middle, LOG_EVT_HSPS_LIGHT_ON, "HSPScanner warning on.");
|
|
|
+ else LogEvent(Severity_Middle, LOG_EVT_HSPS_LIGHT_OFF, "HSPScanner warning off.");
|
|
|
+ m_lightOn = turnOn;
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
//TODO: JS完全替换后,这个函数要废弃换成SetPreviewProperty替代 [Gifur@2025318]
|
|
|
int CHSPScannerFSM::SetPreviewParam(int colorType, int rotateType, int scanType, bool abortIfFault)
|
|
|
{
|