⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hfcj001view.cpp

📁 170话费催交系统
💻 CPP
📖 第 1 页 / 共 2 页
字号:
// hfcj001View.cpp : implementation of the CHfcj001View class
//

#include "stdafx.h"
#include "hfcj001.h"

//#include "hfcj001Set.h"
#include "hfcj001Doc.h"
#include "hfcj001View.h"
#include "datafunc.h"
//#include "hfcjzc.h"
#include "dialogcjarg.h"
#include "dialoghtharg.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CHfcj001View

IMPLEMENT_DYNCREATE(CHfcj001View, CFormView)

BEGIN_MESSAGE_MAP(CHfcj001View, CFormView)
	//{{AFX_MSG_MAP(CHfcj001View)
	ON_COMMAND(ID_STARTZDCJ, OnStartzdcj)
	ON_COMMAND(ID_ENDZDCJ, OnEndzdcj)
	ON_UPDATE_COMMAND_UI(ID_STARTZDCJ, OnUpdateStartzdcj)
	ON_WM_TIMER()
	ON_COMMAND(ID_SETCJARG, OnSetcjarg)
	ON_MESSAGE(WM_COPY, OnCopyZdcj)
	ON_COMMAND(ID_SETCJHTH, OnSetcjhth)
	ON_BN_CLICKED(IDC_BUTTON1, OnButtonsx1)
	ON_BN_CLICKED(IDC_BUTTON10, OnButtonsx10)
	ON_BN_CLICKED(IDC_BUTTON2, OnButtonsx2)
	ON_BN_CLICKED(IDC_BUTTON3, OnButtonsx3)
	ON_BN_CLICKED(IDC_BUTTON4, OnButtonsx4)
	ON_BN_CLICKED(IDC_BUTTON5, OnButtonsx5)
	ON_BN_CLICKED(IDC_BUTTON6, OnButtonsx6)
	ON_BN_CLICKED(IDC_BUTTON7, OnButtonsx7)
	ON_BN_CLICKED(IDC_BUTTON8, OnButtonsx8)
	ON_BN_CLICKED(IDC_BUTTON9, OnButtonsx9)
	ON_UPDATE_COMMAND_UI(ID_ENDZDCJ, OnUpdateStartzdcj)
	ON_UPDATE_COMMAND_UI(ID_APP_EXIT, OnUpdateStartzdcj)
	ON_WM_MOUSEMOVE()
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CHfcj001View construction/destruction

CHfcj001View::CHfcj001View()
	: CFormView(CHfcj001View::IDD)
{
	//{{AFX_DATA_INIT(CHfcj001View)
	m_endtime1 = _T("");
	m_endtime10 = _T("");
	m_endtime2 = _T("");
	m_endtime3 = _T("");
	m_endtime4 = _T("");
	m_endtime5 = _T("");
	m_endtime6 = _T("");
	m_endtime7 = _T("");
	m_endtime8 = _T("");
	m_endtime9 = _T("");
	m_jieguo1 = _T("");
	m_jieguo10 = _T("");
	m_jieguo2 = _T("");
	m_jieguo3 = _T("");
	m_jieguo4 = _T("");
	m_jieguo5 = _T("");
	m_jieguo6 = _T("");
	m_jieguo7 = _T("");
	m_jieguo8 = _T("");
	m_jieguo9 = _T("");
	m_money1 = _T("");
	m_money10 = _T("");
	m_money2 = _T("");
	m_money3 = _T("");
	m_money4 = _T("");
	m_money5 = _T("");
	m_money6 = _T("");
	m_money7 = _T("");
	m_money8 = _T("");
	m_money9 = _T("");
	m_starttime1 = _T("");
	m_starttime10 = _T("");
	m_starttime2 = _T("");
	m_starttime3 = _T("");
	m_starttime4 = _T("");
	m_starttime5 = _T("");
	m_starttime6 = _T("");
	m_starttime7 = _T("");
	m_starttime8 = _T("");
	m_starttime9 = _T("");
	m_tele1 = _T("");
	m_tele10 = _T("");
	m_tele2 = _T("");
	m_tele3 = _T("");
	m_tele4 = _T("");
	m_tele5 = _T("");
	m_tele6 = _T("");
	m_tele7 = _T("");
	m_tele8 = _T("");
	m_tele9 = _T("");
	m_zt1 = _T("");
	m_zt10 = _T("");
	m_zt2 = _T("");
	m_zt3 = _T("");
	m_zt4 = _T("");
	m_zt5 = _T("");
	m_zt6 = _T("");
	m_zt7 = _T("");
	m_zt8 = _T("");
	m_zt9 = _T("");
	m_cjsystime = _T("");
	m_currenttime = _T("");
	m_readdbzt = _T("");
	m_writedbzt = _T("");
	m_allcounts = 0;
	m_rdrecords = 0;
	m_successcounts = 0;
	m_lrecord = 0;
	//}}AFX_DATA_INIT
	// TODO: add construction code here
	//催缴合同号条件赋值
	strcpy(ls_htharg,"*");
	strcpy(ls_fjhth,"*");
	strcpy(gs_htharg[0],"*");
	hthcounts=1;
	//OnStartzdcj();
}

CHfcj001View::~CHfcj001View()
{
}

void CHfcj001View::DoDataExchange(CDataExchange* pDX)
{
	CFormView::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CHfcj001View)
	DDX_Control(pDX, IDC_BUTTON9, m_sx9);
	DDX_Control(pDX, IDC_BUTTON8, m_sx8);
	DDX_Control(pDX, IDC_BUTTON7, m_sx7);
	DDX_Control(pDX, IDC_BUTTON6, m_sx6);
	DDX_Control(pDX, IDC_BUTTON5, m_sx5);
	DDX_Control(pDX, IDC_BUTTON4, m_sx4);
	DDX_Control(pDX, IDC_BUTTON3, m_sx3);
	DDX_Control(pDX, IDC_BUTTON2, m_sx2);
	DDX_Control(pDX, IDC_BUTTON10, m_sx10);
	DDX_Control(pDX, IDC_BUTTON1, m_sx1);
	DDX_Text(pDX, IDC_EDIT_ENDTIME1, m_endtime1);
	DDX_Text(pDX, IDC_EDIT_ENDTIME10, m_endtime10);
	DDX_Text(pDX, IDC_EDIT_ENDTIME2, m_endtime2);
	DDX_Text(pDX, IDC_EDIT_ENDTIME3, m_endtime3);
	DDX_Text(pDX, IDC_EDIT_ENDTIME4, m_endtime4);
	DDX_Text(pDX, IDC_EDIT_ENDTIME5, m_endtime5);
	DDX_Text(pDX, IDC_EDIT_ENDTIME6, m_endtime6);
	DDX_Text(pDX, IDC_EDIT_ENDTIME7, m_endtime7);
	DDX_Text(pDX, IDC_EDIT_ENDTIME8, m_endtime8);
	DDX_Text(pDX, IDC_EDIT_ENDTIME9, m_endtime9);
	DDX_Text(pDX, IDC_EDIT_JIEGUO1, m_jieguo1);
	DDX_Text(pDX, IDC_EDIT_JIEGUO10, m_jieguo10);
	DDX_Text(pDX, IDC_EDIT_JIEGUO2, m_jieguo2);
	DDX_Text(pDX, IDC_EDIT_JIEGUO3, m_jieguo3);
	DDX_Text(pDX, IDC_EDIT_JIEGUO4, m_jieguo4);
	DDX_Text(pDX, IDC_EDIT_JIEGUO5, m_jieguo5);
	DDX_Text(pDX, IDC_EDIT_JIEGUO6, m_jieguo6);
	DDX_Text(pDX, IDC_EDIT_JIEGUO7, m_jieguo7);
	DDX_Text(pDX, IDC_EDIT_JIEGUO8, m_jieguo8);
	DDX_Text(pDX, IDC_EDIT_JIEGUO9, m_jieguo9);
	DDX_Text(pDX, IDC_EDIT_MONEY1, m_money1);
	DDX_Text(pDX, IDC_EDIT_MONEY10, m_money10);
	DDX_Text(pDX, IDC_EDIT_MONEY2, m_money2);
	DDX_Text(pDX, IDC_EDIT_MONEY3, m_money3);
	DDX_Text(pDX, IDC_EDIT_MONEY4, m_money4);
	DDX_Text(pDX, IDC_EDIT_MONEY5, m_money5);
	DDX_Text(pDX, IDC_EDIT_MONEY6, m_money6);
	DDX_Text(pDX, IDC_EDIT_MONEY7, m_money7);
	DDX_Text(pDX, IDC_EDIT_MONEY8, m_money8);
	DDX_Text(pDX, IDC_EDIT_MONEY9, m_money9);
	DDX_Text(pDX, IDC_EDIT_STARTTIME1, m_starttime1);
	DDX_Text(pDX, IDC_EDIT_STARTTIME10, m_starttime10);
	DDX_Text(pDX, IDC_EDIT_STARTTIME2, m_starttime2);
	DDX_Text(pDX, IDC_EDIT_STARTTIME3, m_starttime3);
	DDX_Text(pDX, IDC_EDIT_STARTTIME4, m_starttime4);
	DDX_Text(pDX, IDC_EDIT_STARTTIME5, m_starttime5);
	DDX_Text(pDX, IDC_EDIT_STARTTIME6, m_starttime6);
	DDX_Text(pDX, IDC_EDIT_STARTTIME7, m_starttime7);
	DDX_Text(pDX, IDC_EDIT_STARTTIME8, m_starttime8);
	DDX_Text(pDX, IDC_EDIT_STARTTIME9, m_starttime9);
	DDX_Text(pDX, IDC_EDIT_TELE1, m_tele1);
	DDX_Text(pDX, IDC_EDIT_TELE10, m_tele10);
	DDX_Text(pDX, IDC_EDIT_TELE2, m_tele2);
	DDX_Text(pDX, IDC_EDIT_TELE3, m_tele3);
	DDX_Text(pDX, IDC_EDIT_TELE4, m_tele4);
	DDX_Text(pDX, IDC_EDIT_TELE5, m_tele5);
	DDX_Text(pDX, IDC_EDIT_TELE6, m_tele6);
	DDX_Text(pDX, IDC_EDIT_TELE7, m_tele7);
	DDX_Text(pDX, IDC_EDIT_TELE8, m_tele8);
	DDX_Text(pDX, IDC_EDIT_TELE9, m_tele9);
	DDX_Text(pDX, IDC_EDIT_ZT1, m_zt1);
	DDX_Text(pDX, IDC_EDIT_ZT10, m_zt10);
	DDX_Text(pDX, IDC_EDIT_ZT2, m_zt2);
	DDX_Text(pDX, IDC_EDIT_ZT3, m_zt3);
	DDX_Text(pDX, IDC_EDIT_ZT4, m_zt4);
	DDX_Text(pDX, IDC_EDIT_ZT5, m_zt5);
	DDX_Text(pDX, IDC_EDIT_ZT6, m_zt6);
	DDX_Text(pDX, IDC_EDIT_ZT7, m_zt7);
	DDX_Text(pDX, IDC_EDIT_ZT8, m_zt8);
	DDX_Text(pDX, IDC_EDIT_ZT9, m_zt9);
	DDX_Text(pDX, IDC_EDITCJSYSTIME, m_cjsystime);
	DDX_Text(pDX, IDC_EDITCURRENTTIME, m_currenttime);
	DDX_Text(pDX, IDC_EDITREADDBZT, m_readdbzt);
	DDX_Text(pDX, IDC_EDITWRITEDBZT, m_writedbzt);
	DDX_Text(pDX, IDC_EDITALL, m_allcounts);
	DDX_Text(pDX, IDC_EDITRDRECORDS, m_rdrecords);
	DDX_Text(pDX, IDC_EDITSUCCESS, m_successcounts);
	DDX_Text(pDX, IDC_EDITCURRECORD, m_lrecord);
	//}}AFX_DATA_MAP
}

BOOL CHfcj001View::PreCreateWindow(CREATESTRUCT& cs)
{
	// TODO: Modify the Window class or styles here by modifying
	//  the CREATESTRUCT cs

	return CFormView::PreCreateWindow(cs);
}

void CHfcj001View::OnInitialUpdate()
{
	//m_pSet = &GetDocument()->m_hfcj001Set;
	CFormView::OnInitialUpdate();
}

/////////////////////////////////////////////////////////////////////////////
// CHfcj001View diagnostics

#ifdef _DEBUG
void CHfcj001View::AssertValid() const
{
	CFormView::AssertValid();
}

void CHfcj001View::Dump(CDumpContext& dc) const
{
	CFormView::Dump(dc);
}

CHfcj001Doc* CHfcj001View::GetDocument() // non-debug version is inline
{
	ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CHfcj001Doc)));
	return (CHfcj001Doc*)m_pDocument;
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CHfcj001View database support
//CRecordset* CHfcj001View::OnGetRecordset()
//{
//	return m_pSet;
//}


/////////////////////////////////////////////////////////////////////////////
// CHfcj001View message handlers

void CHfcj001View::OnStartzdcj() 
{
	// TODO: Add your command handler code here
	HWND hWnd;

	CWaitCursor wait;
	m_IDzdcj=LOWORD(GetCurrentMessage()->wParam);

	if(zdcj_action==1) {
		WinPrintf("自动催缴已经启动");
		return;
	}

	//初始化数据库
	Init_data();
	
	//取服务器时间来设定本机器时间
	//GetSysTime(teleinfo[0].start_time);			   	
	//Compare_time(teleinfo[0].start_time);

	//初始化文件和语音卡
	Init_sys();
	if(first_action==0){ //第一次启动时赋值,表示此程序已经起用过
		first_action=1;
		pauseflag=0;

		telecount.success_count=0;
		telecount.all_count=0;
		telecount.retrivecount=0;
	}
	//缓冲区赋初值
	readmain=0;
	writemain=0;
	maincounts=0;
	readappend=0;
	writeappend=0;
	appendcounts=0;
	telecount.rdrecord_count=0;

	GetTime(qssj_time);
	m_cjsystime=qssj_time;
	UpdateData(FALSE);

	//等待事件响应并转入进程处理
	hWnd=GetSafeHwnd();
	myhwnd=hWnd;
	AfxBeginThread(Maincontrol,hWnd);	//启动主线程
	AfxBeginThread(Cjwork,hWnd);		//启动催缴工作线程
	AfxBeginThread(Writedata,hWnd);		//启动读数据库写主缓冲区线程
	datarecord.pThreadOfDbms=AfxBeginThread(RecordData,&datarecord);	//启动写日志线程
	datacon.pThreadOfDbms=AfxBeginThread(DataConnect,&datacon);		//启动数据库自动重连线程
	//设定一个时间函数,用于处理超时情况
	if(!SetTimer(CUSTOM_TIMER,1000,NULL))
	{
		MessageBox(_T("错误"),_T("定时器创建失败"),MB_ICONEXCLAMATION||MB_OK);
		exit(1);
	}
	zdcj_action=1;
	WinPrintf("自动催缴开始");
	//结束时关闭所有通道
}

void CHfcj001View::OnEndzdcj() 
{
	// TODO: Add your command handler code here
	
	CWaitCursor wait;
	m_IDzdcj=LOWORD(GetCurrentMessage()->wParam);
	
	if(zdcj_action==0) {
	    WinPrintf("自动催缴尚未启动");
		return;
	}
	
	stopdata=STOPTRUE;
	zdcj_action=0;

	//sr_putevt(SRL_DEVICE,USEREVT_KEYBOARD,0,NULL,0);
	if(sr_putevt(cjchdev[0], USEREVT_KEYBOARD, 0, NULL, 0)== -1){
		WinPrintf("终止催缴线程失败");
	}
	
	datarecord.chdevno = 0;
	pRecordData.SetEvent();

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -