void VirtualMeasurement::FinishMeasurement(COleDateTime odtMTime) { _iMPMeasurementDateYear = odtMTime.GetYear(); _iMPMeasurementDateMonth = odtMTime.GetMonth(); _iMPMeasurementDateDay = odtMTime.GetDay(); _fMPNChanA = (float)_dAve.val[NeutA]; _fMPNChanB = (float)_dAve.val[NeutB]; _fMPNChanC = (float)_dAve.val[NeutC]; _fMPGDose1 = (float)_dAve.val[Gamma1]; _fMPGDose2 = (float)_dAve.val[Gamma2]; COleDateTimeSpan delta = odtMTime; delta -= delta.GetDays(); _fMPNChanBThresh = (float)delta.GetTotalSeconds(); CalcCoolingTime(); ApplyAdjustments(); //SetDetectorID(); Certify(); }
struct state* CXenoChannel::XenoUserMoney() { CString strQuery; strQuery.Format( "select * from Xcostcard" " where xcostcode = '%s' and xcostpwd = '%s'", XenoCard, XenoWord ); TRACE( strQuery + "\n" ); xOpenRecordset(m_pRecordcar, theApp.m_pConnection, (_bstr_t)strQuery); if ( m_pRecordcar->adoEOF ) { XenoError = XENO_INVALID; return &ReputCard; } _variant_t TheValue; TheValue = m_pRecordcar->GetCollect( "xcostuse" ); if ( VT_NULL == TheValue.vt || _tcscmp( (_bstr_t)TheValue, "0 " ) ) { XenoError = XENO_REJECT; return &ReputCard; } TheValue = m_pRecordcar->GetCollect( "xcostrun" ); if ( VT_NULL == TheValue.vt || _tcscmp( (_bstr_t)TheValue, "1 " ) ) { XenoError = XENO_REJECT; return &ReputCard; } TheValue = m_pRecordcar->GetCollect( "xcostdate" ); if ( VT_NULL != TheValue.vt ) { COleDateTime tt = COleDateTime( TheValue ); COleDateTimeSpan tSpan = tt - COleDateTime::GetCurrentTime(); if ( tSpan.GetDays() < 0 ) { XenoError = XENO_EXPIRED; return &ReputCard; } } #if 1 COleDateTime tt = COleDateTime::GetCurrentTime(); m_pRecordcar->PutCollect( "xcostuse", _variant_t("1") ); m_pRecordcar->Update(); #endif TheValue = m_pRecordcar->GetCollect( "xcostmoney" ); double xCostMoney = (double)TheValue; double xBalance = xCostMoney; TheValue = m_pRecordusr->GetCollect( "xBalance" ); if ( VT_NULL != TheValue.vt ) xBalance += (double)TheValue; m_pRecordusr->PutCollect( "xBalance", _variant_t(xBalance) ); m_pRecordusr->PutCollect( "xStatus", _variant_t("1") ); m_pRecordusr->Update(); TheValue = m_pRecordusr->GetCollect( "xjsjbh" ); strQuery.Format( "insert into Xusercost(xjsjbh, xtimestart, xcostcode, Xcode, xpar_value)" " values('%s', getdate(), '%s', 99999999, '%i')", (LPCTSTR)(_bstr_t)TheValue, XenoCard, (INT)xCostMoney ); TRACE( strQuery + "\n" ); xExecute(theApp.m_pConnection, (_bstr_t)strQuery, adExecuteNoRecords); return &PlayXnOk; }
void CBCGPPlannerViewMulti::OnDrawAppointmentsDuration (CDC* pDC) { if ((GetPlanner ()->GetDrawFlags () & BCGP_PLANNER_DRAW_VIEW_NO_DURATION) == BCGP_PLANNER_DRAW_VIEW_NO_DURATION) { return; } XBCGPAppointmentArray& arQueryApps = GetQueryedAppointments (); XBCGPAppointmentArray& arDragApps = GetDragedAppointments (); if (arQueryApps.GetSize () == 0 && arDragApps.GetSize () == 0) { return; } BOOL bDragDrop = IsDragDrop (); DROPEFFECT dragEffect = GetDragEffect (); BOOL bDragMatch = IsCaptureMatched (); COleDateTime dtS = GetDateStart (); COleDateTime dtE = GetDateEnd (); const int nMinuts = CBCGPPlannerView::GetTimeDeltaInMinuts (GetTimeDelta ()); const int nCount = GetViewHours() * 60 / nMinuts; const int yOffset = GetViewHourOffset () * m_nRowHeight; for (int nApp = 0; nApp < 2; nApp++) { XBCGPAppointmentArray& arApps = nApp == 1 ? arDragApps : arQueryApps; if (nApp == 1) { bDragDrop = bDragDrop && arDragApps.GetSize (); } if (arApps.GetSize () == 0) { continue; } for (int i = 0; i < arApps.GetSize (); i++) { CBCGPAppointment* pApp = arApps [i]; if (pApp == NULL || !(pApp->IsAllDay () || pApp->IsMultiDay ()) || pApp->GetDurationColor () == CLR_DEFAULT) { continue; } BOOL bDraw = FALSE; if (bDragDrop && dragEffect != DROPEFFECT_NONE && pApp->IsSelected () && nApp == 0) { if ((dragEffect & DROPEFFECT_COPY) == DROPEFFECT_COPY || bDragMatch) { bDraw = TRUE; } } else { bDraw = TRUE; } if(!bDraw) { continue; } int nResourceIndex = FindResourceIndexByID (pApp->GetResourceID ()); ASSERT(nResourceIndex != -1); XResource& resource = m_Resources[nResourceIndex]; COleDateTime dtStart = pApp->GetStart (); COleDateTime dtFinish = pApp->GetFinish (); dtStart.SetDate (dtStart.GetYear (), dtStart.GetMonth (), dtStart.GetDay ()); dtFinish.SetDate (dtFinish.GetYear (), dtFinish.GetMonth (), dtFinish.GetDay ()); BOOL bStart = FALSE; BOOL bEnd = FALSE; if (dtStart < dtS) { dtStart = dtS; bStart = TRUE; } if (dtE < dtFinish) { dtFinish = dtE; bEnd = TRUE; } COleDateTimeSpan span (dtFinish - dtStart); int nStart = (dtStart - dtS).GetDays (); int nEnd = min(nStart + span.GetDays () + 1, GetViewDuration ()); CBrush br (pApp->GetDurationColor () == CLR_DEFAULT ? globalData.clrWindow : pApp->GetDurationColor ()); for(int i = nStart; i < nEnd; i++) { CRect rt (resource.m_Rects[i]); rt.right = rt.left + CBCGPPlannerViewMulti::BCGP_PLANNER_DURATION_BAR_WIDTH + 1; rt.left -= (i == 0) ? 1 : 0; rt.top -= 1; rt.bottom = rt.top + nCount * m_nRowHeight; rt.DeflateRect (1, 0); if (!pApp->IsAllDay ()) { rt.OffsetRect (0, -yOffset); if (i == (nEnd - 1) && !bEnd) { dtFinish = pApp->GetFinish (); const double dDelta = (dtFinish.GetHour () * 60 + dtFinish.GetMinute ()) / (double)nMinuts; rt.bottom = rt.top + CBCGPPlannerView::round(dDelta * m_nRowHeight); } if (i == nStart && !bStart) { dtStart = pApp->GetStart (); const double dDelta = (dtStart.GetHour () * 60 + dtStart.GetMinute ()) / (double)nMinuts; rt.top += CBCGPPlannerView::round(dDelta * m_nRowHeight); } rt.IntersectRect (rt, resource.m_Rects[i]); } pDC->FillRect (rt, &br); } } } }
void CBCGPPlannerViewMulti::AdjustLayout (CDC* /*pDC*/, const CRect& rectClient) { if (IsCurrentTimeVisible ()) { StartTimer (FALSE); } else { StopTimer (FALSE); } m_nHeaderHeight = 2; m_nHeaderAllDayHeight = 1; const int nMinuts = CBCGPPlannerView::GetTimeDeltaInMinuts (GetTimeDelta ()); const int nCount = GetViewHours() * 60 / nMinuts; m_rectTimeBar = rectClient; m_rectTimeBar.right = m_rectTimeBar.left + (long)(m_nRowHeight * (nMinuts == 60 ? 2.5 : 3.0)) + 5; m_rectApps.left = m_rectTimeBar.right; { // finding allday or multiday events const int nDays = GetViewDuration (); CDWordArray arDays; arDays.SetSize (nDays); COleDateTime dtS = GetDateStart (); XBCGPAppointmentArray& arQueryApps = GetQueryedAppointments (); XBCGPAppointmentArray& arDragApps = GetDragedAppointments (); BOOL bDragDrop = IsDragDrop (); DROPEFFECT dragEffect = GetDragEffect (); BOOL bDragMatch = IsCaptureMatched (); bDragDrop = !bDragDrop || (bDragDrop && ((dragEffect & DROPEFFECT_COPY) == DROPEFFECT_COPY && bDragMatch) || !bDragMatch); bDragDrop = bDragDrop && arDragApps.GetSize (); DWORD maxCount = 0; for (int nRes = 0; nRes < m_Resources.GetSize (); nRes++) { UINT nResourceID = m_Resources[nRes].m_ResourceID; for (int nApp = 0; nApp < 2; nApp++) { if (!bDragDrop && nApp == 0) { continue; } XBCGPAppointmentArray& arApps = nApp == 0 ? arDragApps : arQueryApps; int nStartIndex = 0; int i = 0; for (i = 0; i < arApps.GetSize (); i++) { const CBCGPAppointment* pApp = arApps[i]; if (pApp != NULL && pApp->GetResourceID () == nResourceID) { nStartIndex = i; break; } } for (i = nStartIndex; i < (int)arApps.GetSize (); i++) { const CBCGPAppointment* pApp = arApps[i]; if (pApp == NULL) { continue; } ASSERT_VALID (pApp); if (pApp->GetResourceID () != nResourceID) { break; } if (pApp->IsAllDay () || pApp->IsMultiDay ()) { if (nDays > 1) { COleDateTime dtStart = pApp->GetStart (); COleDateTime dtFinish = pApp->GetFinish (); dtStart = COleDateTime (dtStart.GetYear (), dtStart.GetMonth (), dtStart.GetDay (), 0, 0, 0); if (pApp->IsAllDay ()) { dtFinish += COleDateTimeSpan (1, 0, 0, 0); } else if (pApp->GetFinish ().GetHour () != 0 || pApp->GetFinish ().GetMinute () != 0) { dtFinish = COleDateTime (dtFinish.GetYear (), dtFinish.GetMonth (), dtFinish.GetDay (), 0, 0, 0); dtFinish += COleDateTimeSpan (1, 0, 0, 0); } if (dtStart < dtS) { dtStart = dtS; } COleDateTimeSpan span (dtFinish - dtStart); int nStart = (dtStart - dtS).GetDays (); int nEnd = nStart + span.GetDays (); if (nEnd > (int) nDays) { nEnd = (int) nDays; } for (int j = nStart; j < nEnd; j++) { arDays[j] = arDays[j] + 1; } } else { arDays[0] = arDays[0] + 1; } } } } for (int i = 0; i < nDays; i++) { if (maxCount < arDays[i]) { maxCount = arDays[i]; } arDays[i] = 0; } } if (maxCount > 0) { m_nHeaderAllDayHeight = maxCount; } } int nRow = rectClient.Height () / (nCount + m_nHeaderHeight + m_nHeaderAllDayHeight); int nOldRowHeight = m_nRowHeight; if (nRow > m_nRowHeight) { m_nRowHeight = nRow; } const int nRowHeightPadding = m_nRowHeight + s_HeaderAllDayPadding; int nHeaderAllDayCount = m_nHeaderAllDayHeight; m_nHeaderHeight *= m_nRowHeight; m_nHeaderAllDayHeight *= nRowHeightPadding; m_rectApps.top += m_nHeaderHeight; m_nHeaderScrollTotal = 0; m_nHeaderScrollPage = 1; if (GetPlanner()->IsHeaderScrollingEnabled() && nHeaderAllDayCount > 0 && m_nHeaderAllDayHeight > m_rectApps.Height () / 2) { m_nHeaderAllDayHeight = min(m_rectApps.Height () / (nRowHeightPadding * 2), nHeaderAllDayCount); if (m_nHeaderAllDayHeight == 0) { m_nHeaderAllDayHeight = 1; } if (m_nHeaderAllDayHeight != nHeaderAllDayCount) { m_nHeaderScrollTotal = nHeaderAllDayCount - 1; m_nHeaderScrollPage = m_nHeaderAllDayHeight; } m_nHeaderAllDayHeight *= nRowHeightPadding; } nRow = (m_rectApps.Height () - m_nHeaderAllDayHeight) / nCount; if (nRow > nOldRowHeight) { m_nRowHeight = nRow; } int delta = m_rectApps.Height () - m_nHeaderAllDayHeight; if (delta < 0) { m_nHeaderAllDayHeight = m_rectApps.Height (); } else { int nc = (int)(delta / m_nRowHeight); if (nc >= nCount) { m_nHeaderAllDayHeight = m_rectApps.Height () - nCount * m_nRowHeight; } else { m_nHeaderAllDayHeight += delta - nc * m_nRowHeight; } } m_rectApps.top += m_nHeaderAllDayHeight; AdjustScrollSizes (); // correct selection COleDateTime sel1 (GetSelectionStart ()); COleDateTime sel2 (GetSelectionEnd ()); SetSelection (sel1, sel2, FALSE); }