diff --git a/CC_TDSet_Signature.cpp b/CC_TDSet_Signature.cpp new file mode 100644 index 0000000..a9a64cb --- /dev/null +++ b/CC_TDSet_Signature.cpp @@ -0,0 +1,566 @@ +// CC_TDSet_Signature.cpp: 实现文件 +// +#include "stdafx.h" +#include "SmsManager.h" +#include "afxdialogex.h" +#include "CC_TDSet_Signature.h" + +#include "MainFrm.h" +#include "ProcessSocket.h" +#include "DLG_C_TDSet_Signature_Upload.h" + +// CC_TDSet_Signature 对话框 + +IMPLEMENT_DYNAMIC(CC_TDSet_Signature, CDialogEx) + +CC_TDSet_Signature::CC_TDSet_Signature(CWnd* pParent /*=nullptr*/) + : CDialogEx(IDD_C_TDSET_SIGNATURE, pParent) + , m_bAddTime(FALSE) + , m_tAddTimeBegin(COleDateTime::GetCurrentTime()) + , m_bAuditTime(FALSE) + , m_tAuditTimeBegin(COleDateTime::GetCurrentTime()) + , m_strKey(_T("")) + , m_bModifyTime(FALSE) +{ + + m_bInit = false; + m_bRefresh = false; + m_pMainFrame = NULL; + m_pSocket = NULL; + m_pDlgUpload = NULL; + + +} + +CC_TDSet_Signature::~CC_TDSet_Signature() +{ +} + +void CC_TDSet_Signature::DoDataExchange(CDataExchange* pDX) +{ + CDialogEx::DoDataExchange(pDX); + DDX_Check(pDX, IDC_TDSET_SIGNATURE_ADDTIME, m_bAddTime); + DDX_DateTimeCtrl(pDX, IDC_TDSET_SIGNATURE_ADDTIME_TBEGIN, m_tAddTimeBegin); + DDX_Control(pDX, IDC_TDSET_SIGNATURE_ADDTIME_TEND, m_tAddTimeEnd); + DDX_Check(pDX, IDC_TDSET_SIGNATURE_AUDITTIME, m_bAuditTime); + DDX_DateTimeCtrl(pDX, IDC_TDSET_SIGNATURE_AUDITYTIME_TBEGIN, m_tAuditTimeBegin); + DDX_Control(pDX, IDC_TDSET_SIGNATURE_AUDITYTIME_TEND, m_tAuditTimeEnd); + DDX_Text(pDX, IDC_TDSET_SIGNATURE_KEY, m_strKey); + DDV_MaxChars(pDX, m_strKey, 30); + DDX_Check(pDX, IDC_TDSET_SIGNATURE_MODIFYTIME, m_bModifyTime); + DDX_Control(pDX, IDC_TDSET_SIGNATURE_MODIFYTIME_TBEGIN, m_tModifyTimeBegin); + DDX_Control(pDX, IDC_TDSET_SIGNATURE_MODIFYTIME_TEND, m_tModifyTimeEnd); + DDX_Control(pDX, IDC_TDSET_SIGNATURE_LIST, m_wndList); + DDX_Control(pDX, IDC_TDSET_SIGNATURE_OPERTYPE, m_L_OperType); + DDX_Control(pDX, IDC_TDSET_SIGNATURE_STATUS, m_L_Status); + DDX_Control(pDX, IDC_TDSET_SIGNATURE_TD, m_L_TD); + DDX_Control(pDX, IDC_TDSET_SIGNATURE_S1, m_S_S1); +} + + +BEGIN_MESSAGE_MAP(CC_TDSet_Signature, CDialogEx) + ON_WM_SIZE() + ON_WM_CLOSE() + ON_NOTIFY(NM_DBLCLK, IDC_TDSET_SIGNATURE_LIST, &CC_TDSet_Signature::OnDblclkTdsetSignatureList) + ON_NOTIFY(NM_RCLICK, IDC_TDSET_SIGNATURE_LIST, &CC_TDSet_Signature::OnRclickTdsetSignatureList) + + ON_COMMAND(MENU_TDSET_SIGNATURE_SEE, On_User_See) + ON_COMMAND(MENU_TDSET_SIGNATURE_ADD, On_User_Add) + ON_COMMAND(MENU_TDSET_SIGNATURE_DEL, On_User_Del) + ON_COMMAND(MENU_TDSET_SIGNATURE_UPLOAD, On_User_Upload) + ON_COMMAND(MENU_TDSET_SIGNATURE_COPYDATA, On_User_CopyData) + +END_MESSAGE_MAP() + +BOOL CC_TDSet_Signature::ReShow(BOOL bRefresh) +{ + ShowWindow(SW_SHOW); + if (bRefresh || !m_bRefresh) + { + RefreshInfo(); + } + return true; +} + +BOOL CC_TDSet_Signature::ReHide() +{ + ShowWindow(SW_HIDE); + return true; +} + +BOOL CC_TDSet_Signature::RefreshInfo() +{ + + if (!m_pMainFrame->GetUserPurview(PURVIEW_LIST)) + { + return false; + } +#ifndef SMSMANAGER_KF + if (!m_pMainFrame->GetUserPurview(PURVIEW_TAB)) + { + return false; + } +#endif + + ANS_TD2SignatureTitle_See* pSee = new ANS_TD2SignatureTitle_See; + memset(pSee, 0, sizeof(ANS_TD2SignatureTitle_See)); + + m_pMainFrame->SendFrame(SMSFUNC_TD2SIGNATURETITLE_SEE, (BYTE*)pSee, sizeof(ANS_TD2SignatureTitle_See)); //取通道信息 + + return true; +} + + + +void CC_TDSet_Signature::Close() +{ + Close_TitleData(); + Close_ListData(); +} + +void CC_TDSet_Signature::Close_TitleData() +{ + //清除队列中的内容 + while (!m_TitleData.IsEmpty()) + { + ANS_TD2SignatureTitle_Data* pData = m_TitleData.GetHead(); + m_TitleData.RemoveHead(); + delete pData; + } +} +void CC_TDSet_Signature::Close_ListData() +{ + //清除队列中的内容 + while (!m_ListData.IsEmpty()) + { + ANS_TD2Signature_Data* pData = m_ListData.GetHead(); + m_ListData.RemoveHead(); + delete pData; + } + +} + +BOOL CC_TDSet_Signature::OnInitDialog() +{ + CDialogEx::OnInitDialog(); + + + + //取得共用参数 + //CMainFrame * pFrame = static_cast ((CMainFrame *)AfxGetMainWnd()); + this->GetParent()->GetParentFrame(); + m_pMainFrame = (CMainFrame*)this->GetParent()->GetParentFrame(); + m_pSocket = &m_pMainFrame->m_Socket; + + + //初始化List + m_Image.Create(24, 24, ILC_COLOR16 | ILC_MASK, 5, 5); + m_Image.Add(AfxGetApp()->LoadIcon(IDI_L_BLANK)); + m_Image.Add(AfxGetApp()->LoadIcon(IDI_L_YSK)); + m_Image.Add(AfxGetApp()->LoadIcon(IDI_L_YKP)); + m_Image.Add(AfxGetApp()->LoadIcon(IDI_L_YCX)); + + m_wndList.SubClassWindow2(); + m_wndList.SetGridLines(true); + m_wndList.SetImageList(&m_Image, LVSIL_SMALL); + + m_bInit = true; + + UpdateData(false); + + return TRUE; // return TRUE unless you set the focus to a control + // 异常: OCX 属性页应返回 FALSE +} + + +void CC_TDSet_Signature::OnOK() +{ + // TODO: 在此添加专用代码和/或调用基类 + + CDialogEx::OnOK(); +} + + +void CC_TDSet_Signature::OnCancel() +{ + // TODO: 在此添加专用代码和/或调用基类 + + CDialogEx::OnCancel(); +} + + +void CC_TDSet_Signature::OnSize(UINT nType, int cx, int cy) +{ + CDialogEx::OnSize(nType, cx, cy); + + if (m_bInit) + { + CRect rect; + m_S_S1.GetWindowRect(&rect); + m_wndList.MoveWindow(0, 0 + rect.Height() + 5, cx, cy - rect.Height() - 5); + } +} + + +void CC_TDSet_Signature::OnClose() +{ + Close(); + CDialogEx::OnClose(); +} + + +void CC_TDSet_Signature::OnDblclkTdsetSignatureList(NMHDR* pNMHDR, LRESULT* pResult) +{ + LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast(pNMHDR); + // TODO: 在此添加控件通知处理程序代码 + *pResult = 0; + + On_User_Modify(); +} + + +void CC_TDSet_Signature::OnRclickTdsetSignatureList(NMHDR* pNMHDR, LRESULT* pResult) +{ + LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast(pNMHDR); + // TODO: 在此添加控件通知处理程序代码 + *pResult = 0; + + ShowRMenu(); +} + + +BOOL CC_TDSet_Signature::ProcessSocket(Socket_Head* pHead) +{ + return false; +} + + +BOOL CC_TDSet_Signature::ProcessSocket(Socket_Head_Add* pHead, BYTE* pFrame) +{ + CString strTemp; + CString str; + //查看签名报备信息 + if (pHead->lFuncType == SMSFUNC_TD2SIGNATURE_SEE) + { + ANS_TD2Signature_See* pSee = (ANS_TD2Signature_See*)pFrame; + ANS_TD2Signature_Data* pData = (ANS_TD2Signature_Data*)(pFrame + sizeof(ANS_TD2Signature_See)); + + if (pSee->lCount > 0) + { + //strTemp.Format(_T("查询结果 (%d/%d)"), pSee->lPageCount, pSee->lPageAll); + //m_S_S1.SetWindowText(strTemp); + //添加到List + m_wndList.ShowWindow(SW_HIDE); + long lCount = m_wndList.GetItemCount(); + for (int i = 0; i < pSee->lCount; i++) + { + ANS_TD2Signature_Data* pNewData = new ANS_TD2Signature_Data; + *pNewData = *pData; + POSITION pos = m_ListData.AddTail(pNewData); + + int iIndex = 1; + strTemp.Format(_T("%d"), lCount + i + 1); + // m_wndList.SetHeadings(_T("序号,50; 平台,80;客户类型,80;充值类型,80;企业ID,80; 企业名称,180; 出单人,80;充值方式,80;充值金额,80; 费率,80;小计,70; 赠送,70; 短信量,70;预开票,55;应收,55;测试,55;成本,55;充值时间,130;过期时间,130;收款时间,130; 发票,80;发票状态,80;开票时间,130;赠送礼品,80;礼品价值,80;接受人,80;推荐积分,80; 备 注,130;客户经理,90; 代理商,130;本次余额,70;发票号码,120;实际开票类型,120;发票抬头,120;银行付款人,120;银行流水码,120;")); + m_wndList.InsertItem(lCount + i, strTemp, 0); //序号 + m_wndList.SetItemData(lCount + i, (DWORD)pos); //存Pos + + ShowDataInList(lCount + i, pData); + + pData++; + } + m_wndList.ShowWindow(SW_SHOW); + } + return true; + } + + //查看签名通道信息 + if (pHead->lFuncType == SMSFUNC_TD2SIGNATURETITLE_SEE) + { + ANS_TD2SignatureTitle_See* pSee = (ANS_TD2SignatureTitle_See*)pFrame; + ANS_TD2SignatureTitle_Data* pData = (ANS_TD2SignatureTitle_Data*)(pFrame + sizeof(ANS_TD2SignatureTitle_See)); + + m_L_TD.ResetContent(); //删除原已有的企业 + this->Close_TitleData(); //关闭原队列 + long lItem; + CString strTemp; + lItem = m_L_TD.AddString(_T("所有通道")); + m_L_TD.SetItemData(lItem, (DWORD)-10); + for (int i = 0; i < pSee->lCount; i++) + { + ANS_TD2SignatureTitle_Data* pNewData = new ANS_TD2SignatureTitle_Data; + *pNewData = *pData; + POSITION pos = m_TitleData.AddTail(pNewData); + + //strTemp.Format(_T("%d-%s"), pNewData->lYWYID, pNewData->szYWYName); + + strTemp = pNewData->szSignatureTitle; + lItem = m_L_TD.AddString(strTemp); + m_L_TD.SetItemData( lItem , (DWORD)pos); + //m_L_TD.SetItemData(lItem, (DWORD)pNewData->iTDID); + pData++; + } + m_L_TD.SetCurSel(0); + m_bRefresh = true; //已经刷新过 + return true; + } + + if (pHead->lFuncType == SMSFUNC_TD2SIGNATURE_UPLOAD) + { + if (m_pDlgUpload) + { + m_pDlgUpload->ProcessSocket(pHead, pFrame); + } + } + return false; +} + +long CC_TDSet_Signature::GetCurrentSelected() +{ + POSITION pos = m_wndList.GetFirstSelectedItemPosition(); + if (pos) + { + return m_wndList.GetNextSelectedItem(pos); + } + return -1; +} + + +BOOL CC_TDSet_Signature::ShowDataInList(long lItem, ANS_TD2Signature_Data* pData) +{ + /* + try + { + CString strTemp; + CString str; + int iIndex = 1; + int iIconIndex = 0; + m_wndList.SetItemText(lItem, iIndex++, GetPTName(pData->lPTNum)); //平台号 + m_wndList.SetItemText(lItem, iIndex++, GetUserType(pData->lUserType)); //客户类型 +#ifndef SMSMANAGER_KF + m_wndList.SetItemText(lItem, iIndex++, GetPayType(pData->lPayType)); //充值类型 +#endif + + + + if (pData->lUserType == 1) //代理商 + { + strTemp.Format(_T("A-%d"), pData->lCorpID); + } + else + { + strTemp.Format(_T("%d"), pData->lCorpID); + } + m_wndList.SetItemText(lItem, iIndex++, strTemp); //企业ID + + if (m_iCorpNameIndex == 0) m_iCorpNameIndex = iIndex; + m_wndList.SetItemText(lItem, iIndex++, pData->szCorpName); //企业名称 +#ifndef SMSMANAGER_KF + m_wndList.SetItemText(lItem, iIndex++, pData->szCreateUser); //出单人 +#endif + m_wndList.SetItemText(lItem, iIndex++, pData->szPayMode); //充值方式 + strTemp.Format(_T("%8.2f"), pData->fPrice); + if (m_iPriceIndex == 0) m_iPriceIndex = iIndex; + m_wndList.SetItemText(lItem, iIndex++, strTemp); //充值金额 + +#ifndef SMSMANAGER_KF + strTemp.Format(_T("%8.4f"), pData->fPriceOne); + m_wndList.SetItemText(lItem, iIndex++, strTemp); //单价 + strTemp.Format(_T("%8d"), pData->lPresent); + if (m_iSmsPresentIndex == 0)m_iSmsPresentIndex = iIndex; + m_wndList.SetItemText(lItem, iIndex++, strTemp); //赠送 + strTemp.Format(_T("%8d"), pData->lSMSCount); + if (m_iSmsCountIndex == 0) m_iSmsCountIndex = iIndex; + m_wndList.SetItemText(lItem, iIndex++, strTemp); //短信量 + + //改为显示平均单价 + strTemp = _T(""); + double l = 0.0f; + if ((pData->fPrice - pData->fLPPrice) != 0 && pData->lSMSCount != 0) + { + l = (pData->fPrice - pData->fLPPrice) / pData->lSMSCount; + strTemp.Format(_T("%8.4f"), l); + } + m_iSmsPriceOneIndex = iIndex; + m_wndList.SetItemText(lItem, iIndex++, strTemp); //平均单价 +#endif +#ifndef SMSMANAGER_KF + m_wndList.SetItemText(lItem, iIndex++, GetYSType(pData->lYSType)); //预充票类型 + + if (pData->lYS == 1) + m_wndList.SetItemText(lItem, iIndex++, _T(" 是")); + else + m_wndList.SetItemText(lItem, iIndex++, _T(""));; + if (pData->lTest == 1) + m_wndList.SetItemText(lItem, iIndex++, _T(" 是")); + else + m_wndList.SetItemText(lItem, iIndex++, _T(""));; +#endif + strTemp.Format(_T("%04d.%02d.%02d %02d:%02d"), pData->tPayTime.wYear, pData->tPayTime.wMonth, pData->tPayTime.wDay, pData->tPayTime.wHour, pData->tPayTime.wMinute); + m_wndList.SetItemText(lItem, iIndex++, strTemp); //充值时间 +#ifndef SMSMANAGER_KF + strTemp.Format(_T("%04d.%02d.%02d %02d:%02d"), pData->tOvrTime.wYear, pData->tOvrTime.wMonth, pData->tOvrTime.wDay, pData->tOvrTime.wHour, pData->tOvrTime.wMinute); + m_wndList.SetItemText(lItem, iIndex++, strTemp); //过期时间 + + strTemp.Format(_T("%04d.%02d.%02d %02d:%02d"), pData->tYSTime.wYear, pData->tYSTime.wMonth, pData->tYSTime.wDay, pData->tYSTime.wHour, pData->tYSTime.wMinute); + m_wndList.SetItemText(lItem, iIndex++, strTemp); //收款时间 +#endif + if (pData->lFP > 0) + { + CString strType = DLG_Corp_FP::GetFPType2(pData->lFP); + m_wndList.SetItemText(lItem, iIndex++, strType); //发票类型 + m_wndList.SetItemText(lItem, iIndex++, GetFPStatus(pData->lFPStatus)); //发票状态 + if (pData->lFPStatus > 0) + { + strTemp.Format(_T("%04d.%02d.%02d %02d:%02d"), pData->tFPTime.wYear, pData->tFPTime.wMonth, pData->tFPTime.wDay, pData->tFPTime.wHour, pData->tFPTime.wMinute); + m_wndList.SetItemText(lItem, iIndex++, strTemp); //开票时间 + } + else + { + m_wndList.SetItemText(lItem, iIndex++, _T(""));; + } + m_wndList.SetItemText(lItem, iIndex++, pData->szFPNum); //发票号码 + } + else + { + m_wndList.SetItemText(lItem, iIndex++, _T(""));; + m_wndList.SetItemText(lItem, iIndex++, _T(""));; + m_wndList.SetItemText(lItem, iIndex++, _T(""));; + m_wndList.SetItemText(lItem, iIndex++, _T(""));; + } +#ifndef SMSMANAGER_KF + m_wndList.SetItemText(lItem, iIndex++, GetLPType(pData->lLPType)); //礼品类型 + str.Format(_T("%.2f"), pData->fLPPrice); + if (m_iLPPresentIndex == 0) m_iLPPresentIndex = iIndex; + m_wndList.SetItemText(lItem, iIndex++, str); //礼品价格 + m_wndList.SetItemText(lItem, iIndex++, pData->szLXRName); //礼品接收人 +#endif + + //m_wndList.SetItemText(lItem, iIndex++, pData->szBZ); + + //_stprintf( Buf , _T(" %d") , pData->lAgentID ); + //m_wndList.SetItemText(lItem, iIndex++, GetName_YWY(pData->lYWYID)); + //m_wndList.SetItemText(lItem, iIndex++, GetName_Agent(pData->lAgentID)); + m_wndList.SetItemText(lItem, iIndex++, pData->szYWYName); +#ifndef SMSMANAGER_KF + m_wndList.SetItemText(lItem, iIndex++, pData->szAgentName); + + str.Format(_T("%d"), pData->lBalance); + m_wndList.SetItemText(lItem, iIndex++, str); //本次余额 + //m_wndList.SetItemText(lItem, iIndex++, pData->szFPActualType); //实际开票类型 + //m_wndList.SetItemText(lItem, iIndex++, pData->szFPDetail); //发票抬头 + m_wndList.SetItemText(lItem, iIndex++, pData->szBankPayer); //银行付款人 + m_wndList.SetItemText(lItem, iIndex++, pData->szBankReferenceNum); //银行流水号 +#endif + + iIconIndex = -1; + if (COleDateTime(pData->tYSTime).GetStatus() == COleDateTime::valid) + { + iIconIndex = 1; + } + if (pData->lYSType == 1) + iIconIndex = 2; + if (pData->lYSType == 2) + iIconIndex = 3; + m_wndList.SetIconIndex(lItem, iIconIndex); + + + + return true; + } + catch (...) + { + } + */ + return false; +} + + +void CC_TDSet_Signature::ShowRMenu() +{ +#ifdef SMSMANAGER_KF + if (!m_pMainFrame->GetUserPurview(PURVIEW_SP)) + { + return; + } +#else + if (!m_pMainFrame->GetUserPurview(PURVIEW_TAB)) + { + return; + } +#endif + + CMenu menu; + menu.CreatePopupMenu(); + BOOL bLock = false; + long lItem = this->GetCurrentSelected(); + ANS_TD2Signature_Data* pData = NULL; + if (lItem >= 0) + { + POSITION pos = (POSITION)m_wndList.GetItemData(lItem); + if ((long)pos >= 0) + { + pData = m_ListData.GetNext(pos); + } + } + + + menu.AppendMenu(MF_STRING, MENU_TDSET_SIGNATURE_ADD, _T(" 新 增 ")); + menu.AppendMenu(MF_SEPARATOR); + if (pData) + { + menu.AppendMenu(MF_STRING, MENU_TDSET_SIGNATURE_SEE, _T(" 查 看 ")); + menu.AppendMenu(MF_STRING, MENU_TDSET_SIGNATURE_MODIFY, _T(" 修 改 ")); + menu.AppendMenu(MF_STRING, MENU_TDSET_SIGNATURE_DEL, _T(" 删 除 ")); + menu.AppendMenu(MF_SEPARATOR); + } + menu.AppendMenu(MF_STRING, MENU_TDSET_SIGNATURE_UPLOAD, _T(" 上 传 ")); +#ifndef SMSMANAGER_KF + if (lItem>=0) + { + menu.AppendMenu(MF_SEPARATOR); + menu.AppendMenu(MF_STRING, MENU_TDSET_SIGNATURE_COPYDATA, _T(" 复制数据 ")); + + } +#endif + + //显示菜单 + POINT pt; + ::GetCursorPos(&pt); + //this->ReportToScreen( &pt); + menu.TrackPopupMenu(TPM_LEFTBUTTON | TPM_RIGHTBUTTON, pt.x, pt.y, this, NULL); + menu.DestroyMenu(); + +} + +void CC_TDSet_Signature::On_User_CopyData() +{ + this->m_wndList.CopyToClipboard(); +} +void CC_TDSet_Signature::On_User_See() +{ +} +void CC_TDSet_Signature::On_User_Add() +{ +} +void CC_TDSet_Signature::On_User_Modify() +{ +} +void CC_TDSet_Signature::On_User_Del() +{ +} +void CC_TDSet_Signature::On_User_Upload() +{ + DLG_C_TDSet_Signature_Upload dlg(this); + + POSITION pos = NULL; + if (m_L_TD.GetCurSel() >= 0) + { + pos = (POSITION)m_L_TD.GetItemData(m_L_TD.GetCurSel()); + } + dlg.SetParam(m_pMainFrame, &m_TitleData, pos); + m_pDlgUpload = &dlg; + + dlg.DoModal(); + + m_pDlgUpload = NULL; +} \ No newline at end of file diff --git a/CC_TDSet_Signature.h b/CC_TDSet_Signature.h new file mode 100644 index 0000000..0651639 --- /dev/null +++ b/CC_TDSet_Signature.h @@ -0,0 +1,100 @@ +#pragma once +#include "afxdialogex.h" + + +#include "..\public\reportctrl\ReportCtrl.h" +#include "DLG_Process.h" + + +typedef CTypedPtrList CTD2Signature_Data; +typedef CTypedPtrList CTD2SignatureTitle_Data; + +#define MENU_TDSET_SIGNATURE_SEE WM_USER + 250 //查看报备签名数据 +#define MENU_TDSET_SIGNATURE_ADD WM_USER + 251 //新增签名 +#define MENU_TDSET_SIGNATURE_MODIFY WM_USER + 252 //修改签名 +#define MENU_TDSET_SIGNATURE_DEL WM_USER + 253 //删除签名 +#define MENU_TDSET_SIGNATURE_UPLOAD WM_USER + 254 //上传签名 +#define MENU_TDSET_SIGNATURE_COPYDATA WM_USER + 255 //复制数据 + + + + +class CMainFrame; +class CProcessSocket; +class DLG_C_TDSet_Signature_Upload; + + +class CC_TDSet_Signature : public CDialogEx +{ + +protected: + CMainFrame* m_pMainFrame; + CProcessSocket* m_pSocket; + DLG_C_TDSet_Signature_Upload* m_pDlgUpload; + CImageList m_Image; + CTD2Signature_Data m_ListData; + CTD2SignatureTitle_Data m_TitleData; + BOOL m_bRefresh; + BOOL m_bInit; //是否已初始化 +public: + + void Close_ListData(); + void Close_TitleData(); + long GetCurrentSelected(); + void ShowRMenu(); + void Close(); + BOOL ProcessSocket(Socket_Head* pHead); + BOOL ProcessSocket(Socket_Head_Add* pHead, BYTE* pFrame); + BOOL RefreshInfo(); + BOOL ReHide(); + BOOL ReShow(BOOL bRefresh = false); + BOOL ShowDataInList(long lItem, ANS_TD2Signature_Data* pData); + +public: + DECLARE_DYNAMIC(CC_TDSet_Signature) + +public: + CC_TDSet_Signature(CWnd* pParent = nullptr); // 标准构造函数 + virtual ~CC_TDSet_Signature(); + +// 对话框数据 +#ifdef AFX_DESIGN_TIME + enum { IDD = IDD_C_TDSET_SIGNATURE }; +#endif + +protected: + virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持 + + DECLARE_MESSAGE_MAP() + +public: + BOOL m_bAddTime; + COleDateTime m_tAddTimeBegin; + CDateTimeCtrl m_tAddTimeEnd; + BOOL m_bAuditTime; + COleDateTime m_tAuditTimeBegin; + CDateTimeCtrl m_tAuditTimeEnd; + CString m_strKey; + BOOL m_bModifyTime; + CDateTimeCtrl m_tModifyTimeBegin; + CDateTimeCtrl m_tModifyTimeEnd; + CReportCtrl m_wndList; + CComboBox m_L_OperType; + CComboBox m_L_Status; + CComboBox m_L_TD; + virtual BOOL OnInitDialog(); + virtual void OnOK(); + virtual void OnCancel(); + afx_msg void OnSize(UINT nType, int cx, int cy); + afx_msg void OnClose(); + CStatic m_S_S1; + afx_msg void OnDblclkTdsetSignatureList(NMHDR* pNMHDR, LRESULT* pResult); + afx_msg void OnRclickTdsetSignatureList(NMHDR* pNMHDR, LRESULT* pResult); + + afx_msg void On_User_See(); + afx_msg void On_User_Add(); + afx_msg void On_User_Modify(); + afx_msg void On_User_Del(); + afx_msg void On_User_Upload(); + afx_msg void On_User_CopyData(); +}; diff --git a/CK_AllQuery_Report.cpp b/CK_AllQuery_Report.cpp index 5d5302f..dc7478b 100644 --- a/CK_AllQuery_Report.cpp +++ b/CK_AllQuery_Report.cpp @@ -1444,7 +1444,7 @@ void CK_AllQuery_Report::OnSize(UINT nType, int cx, int cy) void CK_AllQuery_Report::OnClose() { - Close_ListData(); + Close(); CDialogEx::OnClose(); } diff --git a/DLG_C_TDSet_Modify1.cpp b/DLG_C_TDSet_Modify1.cpp index 6adf239..bd5b33b 100644 --- a/DLG_C_TDSet_Modify1.cpp +++ b/DLG_C_TDSet_Modify1.cpp @@ -32,6 +32,8 @@ DLG_C_TDSet_Modify::DLG_C_TDSet_Modify(CWnd* pParent /*=NULL*/) , m_bOftenUse(FALSE) , m_strLoginName(_T("")) , m_lBFPriority(0) + , m_strSignatureTitle(_T("")) + , m_strSignatureNum(_T("")) { //{{AFX_DATA_INIT(DLG_C_TDSet_Modify) m_strBZ = _T(""); @@ -84,6 +86,10 @@ void DLG_C_TDSet_Modify::DoDataExchange(CDataExchange* pDX) DDX_Text(pDX, IDC_TDSET_MODIFY_LOGINNAME, m_strLoginName); DDV_MaxChars(pDX, m_strLoginName, 15); DDX_Text(pDX, IDC_TDSET_MODIFY_BFPRIORITY, m_lBFPriority); + DDX_Text(pDX, IDC_TDSET_MODIFY_SIGNATURETITLE, m_strSignatureTitle); + DDV_MaxChars(pDX, m_strSignatureTitle, 30); + DDX_Text(pDX, IDC_TDSET_MODIFY_SIGNATURENUM, m_strSignatureNum); + DDV_MaxChars(pDX, m_strSignatureNum, 20); } @@ -117,6 +123,8 @@ BOOL DLG_C_TDSet_Modify::OnInitDialog() m_strName = m_TDData.szName; m_strAccessPort = m_TDData.szAccessPort; m_strLoginName = m_TDData.szLoginName; + m_strSignatureTitle = m_TDData.szSignatureTitle; + m_strSignatureNum = m_TDData.szSignatureNum; m_bStatus = m_TDData.lStatus; m_bDefaultTD = m_TDData.lDefaultTD; m_bGGTD = m_TDData.lGGTD; @@ -173,6 +181,8 @@ void DLG_C_TDSet_Modify::OnBnClickedOk() _tcscpy(m_TDData.szName , m_strName); _tcscpy(m_TDData.szAccessPort , m_strAccessPort ); _tcscpy(m_TDData.szLoginName, m_strLoginName); + _tcscpy(m_TDData.szSignatureTitle, m_strSignatureTitle); + _tcscpy(m_TDData.szSignatureNum, m_strSignatureNum); m_TDData.lStatus = m_bStatus; m_TDData.lDefaultTD = m_bDefaultTD; m_TDData.lGGTD = m_bGGTD; diff --git a/DLG_C_TDSet_Modify1.h b/DLG_C_TDSet_Modify1.h index 428e257..a53726c 100644 --- a/DLG_C_TDSet_Modify1.h +++ b/DLG_C_TDSet_Modify1.h @@ -67,6 +67,8 @@ public: BOOL m_bOftenUse; CString m_strLoginName; int m_lBFPriority; + CString m_strSignatureTitle; + CString m_strSignatureNum; }; //{{AFX_INSERT_LOCATION}} diff --git a/DLG_C_TDSet_Signature_Upload.cpp b/DLG_C_TDSet_Signature_Upload.cpp new file mode 100644 index 0000000..6d927be --- /dev/null +++ b/DLG_C_TDSet_Signature_Upload.cpp @@ -0,0 +1,576 @@ +// DLG_C_TDSet_Signature_Upload.cpp: 实现文件 +// + +#include "StdAfx.h" +#include "SmsManager.h" +#include "afxdialogex.h" +#include "DLG_C_TDSet_Signature_Upload.h" + +#include "MainFrm.h" +#include "ProcessSocket.h" + +// DLG_C_TDSet_Signature_Upload 对话框 + +IMPLEMENT_DYNAMIC(DLG_C_TDSet_Signature_Upload, CDialogEx) + +DLG_C_TDSet_Signature_Upload::DLG_C_TDSet_Signature_Upload(CWnd* pParent /*=nullptr*/) + : CDialogEx(IDD_C_TDSET_SIGNATURE_UPLOAD, pParent) + , m_lConflct(0) + , m_strFileName(_T("")) + , m_strInfo(_T("")) + , m_lType(0) +{ + + m_pMainFrame = NULL; + m_pTitleData = NULL; + m_TitleCurPos = NULL; + m_bUploading = false; + m_lNeedUploadCount = 0; +} + +DLG_C_TDSet_Signature_Upload::~DLG_C_TDSet_Signature_Upload() +{ +} + +void DLG_C_TDSet_Signature_Upload::DoDataExchange(CDataExchange* pDX) +{ + CDialogEx::DoDataExchange(pDX); + DDX_Control(pDX, IDD_C_TDSET_SIGNATURE_UPLOAD_TD, m_L_TD); + DDX_CBIndex(pDX, IDD_C_TDSET_SIGNATURE_UPLOAD_CONFLICT, m_lConflct); + DDX_Text(pDX, IDD_C_TDSET_SIGNATURE_UPLOAD_FILE, m_strFileName); + DDX_Text(pDX, IDD_C_TDSET_SIGNATURE_UPLOAD_INFO, m_strInfo); + DDX_CBIndex(pDX, IDD_C_TDSET_SIGNATURE_UPLOAD_TYPE, m_lType); + DDX_Control(pDX, IDD_C_TDSET_SIGNATURE_UPLOAD_UPLOAD, m_B_Upload); + DDX_Control(pDX, IDD_C_TDSET_SIGNATURE_UPLOAD_AUTOPORT, m_B_AutoPort); + DDX_Control(pDX, IDD_C_TDSET_SIGNATURE_UPLOAD_PROCESS, m_P_GDT); +} + + +BEGIN_MESSAGE_MAP(DLG_C_TDSet_Signature_Upload, CDialogEx) + ON_BN_CLICKED(IDCANCEL, &DLG_C_TDSet_Signature_Upload::OnBnClickedCancel) + ON_WM_CLOSE() + ON_BN_CLICKED(IDD_C_TDSET_SIGNATURE_UPLOAD_FILE_SEL, &DLG_C_TDSet_Signature_Upload::OnBnClickedCTdsetSignatureUploadFileSel) + ON_BN_CLICKED(IDD_C_TDSET_SIGNATURE_UPLOAD_UPLOAD, &DLG_C_TDSet_Signature_Upload::OnBnClickedCTdsetSignatureUploadUpload) + ON_CBN_SELCHANGE(IDD_C_TDSET_SIGNATURE_UPLOAD_TYPE, &DLG_C_TDSet_Signature_Upload::OnSelchangeIddCTdsetSignatureUploadType) + ON_CBN_SELCHANGE(IDD_C_TDSET_SIGNATURE_UPLOAD_TD, &DLG_C_TDSet_Signature_Upload::OnSelchangeIddCTdsetSignatureUploadTd) + ON_CBN_SELCHANGE(IDD_C_TDSET_SIGNATURE_UPLOAD_CONFLICT, &DLG_C_TDSet_Signature_Upload::OnSelchangeIddCTdsetSignatureUploadConflict) + ON_BN_CLICKED(IDD_C_TDSET_SIGNATURE_UPLOAD_AUTOPORT, &DLG_C_TDSet_Signature_Upload::OnClickedIddCTdsetSignatureUploadAutoport) +END_MESSAGE_MAP() + + +// DLG_C_TDSet_Signature_Upload 消息处理程序 + + +void DLG_C_TDSet_Signature_Upload::OnBnClickedCancel() +{ + // TODO: 在此添加控件通知处理程序代码 + CDialogEx::OnCancel(); +} + + +void DLG_C_TDSet_Signature_Upload::SetParam(CMainFrame* pFrame, CTD2SignatureTitle_Data * titleData, POSITION TitleCurPos) +{ + m_pMainFrame = pFrame; + m_pTitleData = titleData; + m_TitleCurPos = TitleCurPos; +} + + +BOOL DLG_C_TDSet_Signature_Upload::OnInitDialog() +{ + CDialogEx::OnInitDialog(); + + // TODO: 在此添加额外的初始化 + int iCurSel = -1; + POSITION pos = m_pTitleData->GetHeadPosition(); + while (pos != NULL ) + { + POSITION pos2 = pos; + ANS_TD2SignatureTitle_Data * pTitle = m_pTitleData->GetNext(pos); + + CString str; + str.Format(_T("%s - %s"), pTitle->szSignatureTitle, pTitle->szSmsNum); + int iItem = m_L_TD.AddString(str); + m_L_TD.SetItemData(iItem, (DWORD)pos2); + if (pos2 == m_TitleCurPos) + { + iCurSel = iItem; + } + } + m_L_TD.SetCurSel(iCurSel); + m_B_Upload.EnableWindow(false); //上传按扭不给按 + UpdateData(true); + + m_lConflct = 0; //冲突处理 + m_lType = 0; //上传类型 + UpdateData(false); + + return TRUE; // return TRUE unless you set the focus to a control + // 异常: OCX 属性页应返回 FALSE +} + + +void DLG_C_TDSet_Signature_Upload::OnClose() +{ + // TODO: 在此添加消息处理程序代码和/或调用默认值 + + CDialogEx::OnClose(); +} + +BOOL DLG_C_TDSet_Signature_Upload::ProcessSocket(Socket_Head_Add* pHead, BYTE* pFrame) +{ + CString strTemp; + CString str; + //查看签名报备信息 + if (pHead->lFuncType == SMSFUNC_TD2SIGNATURE_UPLOAD) + { + ANS_TD2Signature_Upload* pUpload = (ANS_TD2Signature_Upload*)pFrame; + ANS_TD2Signature_Data* pData = (ANS_TD2Signature_Data*)(pFrame + sizeof(ANS_TD2Signature_Upload)); + + UploadNext(pUpload); + + return true; + } + return false; +} + +void DLG_C_TDSet_Signature_Upload::OnBnClickedCTdsetSignatureUploadFileSel() +{ + UpdateData(true); + + CString str; + + int iCurSel = m_L_TD.GetCurSel(); + if (iCurSel < 0) + { + MessageBox(_T("请先选择一个通道再进行签名上传!"), _T("错误"), MB_ICONERROR); + return; + } + ANS_TD2SignatureTitle_Data* pTitle = NULL; + POSITION pos = (POSITION)m_L_TD.GetItemData(iCurSel); + if (pos) + { + pTitle = m_pTitleData->GetNext(pos); + } + if (!pTitle) + { + MessageBox(_T("请先选择一个通道再进行签名上传2!"), _T("错误"), MB_ICONERROR); + return; + } + + m_TDSmsNum = pTitle->szSmsNum; + m_TDID = pTitle->iTDID; + m_bAutoPort = m_B_AutoPort.GetCheck(); + if (m_lType == 1) //存量签名 + { + if (m_lConflct == 3) //换端口号申请 + { + MessageBox(_T("注意,你选择的是上传存量签名,不能再选择换端口申请选项!"), _T("错误"), MB_ICONERROR); + return; + } + m_bAutoPort = false; //存量签名,不存在自动端口功能 + } +#define FILE_FILTER_TEXT \ + TEXT("Excel 文件 (*.xls,*.xlsx)\0*.xls\0*.xlsx\0")\ + TEXT("所有文件 (*.*)\0*.*;\0\0") + + TCHAR szFile[256]; + TCHAR szFileB[256]; + *szFileB = NULL; + _stprintf(szFile, _T("*.xls")); + + OPENFILENAME sOpen; + sOpen.lStructSize = sizeof(sOpen); + sOpen.hwndOwner = this->m_hWnd; + sOpen.Flags = OFN_EXPLORER | OFN_OVERWRITEPROMPT | OFN_HIDEREADONLY; + sOpen.lpstrFilter = FILE_FILTER_TEXT; + sOpen.lpstrDefExt = _T("签名文件.xls"); + sOpen.lpstrCustomFilter = NULL; + sOpen.nMaxCustFilter = 0; + sOpen.lpstrFile = szFile; + sOpen.nMaxFile = sizeof(szFile); + sOpen.lpstrFileTitle = szFileB; + sOpen.nMaxFileTitle = sizeof(szFileB); + sOpen.lpstrInitialDir = NULL; + sOpen.lpstrTitle = _T("选择上传的签名文件"); + if (::GetOpenFileName(&sOpen)) + { + CString strFileName = sOpen.lpstrFile; + + //第一步,连接到Excel数据库 + CAdoRecordSet adoRSX3; + if (m_AdoConnectX.ConnectExcel(strFileName)) + { + m_AdoRSX.SetAdoConnection(&m_AdoConnectX); + m_AdoRSX2.SetAdoConnection(&m_AdoConnectX); + + //查找第一个工作区 + //创建QueryLog表 + CString strTableName = _T("Sheet1$"); + adoRSX3 = m_AdoConnectX.OpenSchema(adSchemaColumns); + if (!adoRSX3.IsEOF()) + { + adoRSX3.GetCollect(_T("TABLE_NAME"), strTableName); + //strTableName.Replace(_T("$"), _T("")); + //strTableName.Replace(_T("'"), _T("")); + } + + str.Format(_T("select * from [%sA1:IV65536]"), strTableName); + //adoRSX.Open(_T("select * from [Sheet1$A1:IV65536]")); + + m_AdoRSX.Open(str); + + long lAllCount = 0; + long lCorpNameError = 0; //企业名称有误数量 + long lSignatureError = 0; //签名有误数量 + long lSmsNumError = 0; //端口号有误数量 + long lSucessCount = 0; //有效数量 + + lAllCount = m_AdoRSX.GetRecordCount(); + m_AdoRSX.MoveFirst(); + + for (int i = 0; i < lAllCount && !m_AdoRSX.IsEOF(); i++) + { + CString strCorpName; + CString strSignature; + CString strSmsNum; + + m_AdoRSX.GetCollect(_T("企业名称"), strCorpName); strCorpName.Trim(); + m_AdoRSX.GetCollect(_T("短信签名"), strSignature); strSignature.Trim(); + m_AdoRSX.GetCollect(_T("短信子端口号"), strSmsNum); strSmsNum.Trim(); + + if (strCorpName.GetLength() < 4) //企业名称<4认为是失败 + { + lCorpNameError++; + } + else + { + if (strSignature.GetLength() < 2) //签名<2认为是失败 + { + lCorpNameError++; + } + else + { + if (strSmsNum.GetLength() > 0) + { + if (strSmsNum.Find(m_TDSmsNum) == 0) //以主端口号开始的子端口号 + { + lSucessCount++; //正常的记录 + } + else + { + lSmsNumError++; + } + + } + else + { + if (m_bAutoPort) //端口号为空的,可以选择自动生成端口号 + { + lSucessCount++; //正常的记录 + } + else + { + lSmsNumError++; + } + } + } + } + + + m_AdoRSX.MoveNext(); + } + + UpdateData(true); + m_strInfo.Format(_T("%s\r\n总记录数:%d\r\n企业名称有误:%d\r\n签名有误:%d\r\n端口号有误:%d\r\n有效记录数:%d\r\n"), strFileName, lAllCount, lCorpNameError, lSignatureError, lSmsNumError, lSucessCount); + m_strFileName = strFileName; + UpdateData(false); + + if (lSucessCount>0) + { + m_bUploading = false; + m_B_Upload.EnableWindow(true); + m_lNeedUploadCount = lSucessCount; + } + } + else + { + str.Format(_T("打开文件失败:%s"), strFileName); + MessageBox(str, _T("错误"), MB_ICONWARNING); + return; + } + return; + } +} + + +void DLG_C_TDSet_Signature_Upload::OnSelchangeIddCTdsetSignatureUploadType() +{ + UpdateData(true); + if (m_lType == 0) //已审核签名,不用新生成端口号 + { + m_B_AutoPort.EnableWindow(true); + } + else + { + m_B_AutoPort.EnableWindow(false); + m_B_AutoPort.SetCheck(false); + } + ReSelFile(); +} + + +void DLG_C_TDSet_Signature_Upload::OnSelchangeIddCTdsetSignatureUploadTd() +{ + ReSelFile(); +} + + +void DLG_C_TDSet_Signature_Upload::OnSelchangeIddCTdsetSignatureUploadConflict() +{ + ReSelFile(); +} + + +void DLG_C_TDSet_Signature_Upload::OnClickedIddCTdsetSignatureUploadAutoport() +{ + ReSelFile(); +} + +void DLG_C_TDSet_Signature_Upload::ReSelFile() +{ + UpdateData(true); + m_strInfo = _T(""); + //m_strFileName = _T(""); + UpdateData(false); + m_B_Upload.EnableWindow(false); + m_P_GDT.ShowWindow(SW_HIDE); + + m_TDSmsNum = _T(""); + m_TDID = 0; + m_bAutoPort = false; + m_lNeedUploadCount = 0; + m_bUploading = false; +} + +void DLG_C_TDSet_Signature_Upload::EnableSel(BOOL bEnable) +{ + GetDlgItem(IDD_C_TDSET_SIGNATURE_UPLOAD_TD)->EnableWindow(bEnable); + GetDlgItem(IDD_C_TDSET_SIGNATURE_UPLOAD_TYPE)->EnableWindow(bEnable); + GetDlgItem(IDD_C_TDSET_SIGNATURE_UPLOAD_AUTOPORT)->EnableWindow(bEnable); + GetDlgItem(IDD_C_TDSET_SIGNATURE_UPLOAD_CONFLICT)->EnableWindow(bEnable); + GetDlgItem(IDD_C_TDSET_SIGNATURE_UPLOAD_FILE_SEL)->EnableWindow(bEnable); + +} + + +void DLG_C_TDSet_Signature_Upload::OnBnClickedCTdsetSignatureUploadUpload() +{ + + if (!m_bUploading) + { + if (m_lNeedUploadCount > 0 && m_AdoRSX.GetRecordCount()>= m_lNeedUploadCount ) + { + m_B_Upload.SetWindowText(_T("取消上传")); + m_B_Upload.EnableWindow(true); + EnableSel(false); //正在上传中,不允许更改选项 + m_bUploading = true; + + m_P_GDT.SetRange(0, m_lNeedUploadCount); //设置滚动条位置 + m_P_GDT.ShowWindow(SW_SHOW); + ANS_TD2Signature_Upload SignatureUpload = { 0 }; + SignatureUpload.iAllCount = m_lNeedUploadCount; + SignatureUpload.iCount = 0; + SignatureUpload.iType = m_lType; + SignatureUpload.iConflict = m_lConflct; + SignatureUpload.iAutoPort = m_bAutoPort; + SignatureUpload.iTDID = m_TDID; + SignatureUpload.iStatus = 0; + m_AdoRSX.MoveFirst(); + UploadNext(&SignatureUpload); + } + } + else + { + //停止 + m_B_Upload.SetWindowText(_T("上传签名")); + m_B_Upload.EnableWindow(false); + EnableSel(true); //取消后可以重新选择上传 + ReSelFile(); //可以重新选择文件 + + m_bUploading = false; + } + +} + +void DLG_C_TDSet_Signature_Upload::UploadNext(ANS_TD2Signature_Upload * pAnsUpload) +{ + CString str; + if (pAnsUpload->iUpCount >= pAnsUpload->iAllCount || m_AdoRSX.IsEOF() || !m_bUploading || pAnsUpload->iStatus!=0 ) //上传已完成 + { + //上传已完成 + m_P_GDT.SetPos(pAnsUpload->iUpCount); //设置滚动条位置 + m_B_Upload.SetWindowText(_T("上传签名")); + m_B_Upload.EnableWindow(false); + EnableSel(true); //取消后可以重新选择上传 + m_bUploading = false; + ReSelFile(); //可以重新选择文件 + + + //显示上传记录数 + UpdateData(true); + m_strInfo.Format(_T("%s\r\n有效总记录数:%d\r\n已上传记录数:%d\r\n覆盖数:%d\r\n新增数:%d\r\n删除数:%d\r\n忽略数:%d\r\n失败数:%d\r\n"), m_strFileName, pAnsUpload->iAllCount, pAnsUpload->iUpCount, pAnsUpload->iCover, pAnsUpload->iAdd, pAnsUpload->iDel,pAnsUpload->iIgnore, pAnsUpload->iFail); + if (pAnsUpload->iStatus != 0) + { + m_strInfo.Append(_T("\r\n上传异常:")); + m_strInfo.Append(pAnsUpload->szErrMsg); + } + UpdateData(false); + + str.Format(_T("上传%s签名数据成功\r\n共上传%d条记录!"), m_strFileName, pAnsUpload->iUpCount); + MessageBox(str, _T("信息"), MB_ICONINFORMATION); + } + else + { + m_P_GDT.SetPos(pAnsUpload->iUpCount); //设置滚动条位置 + + //上传下一个数据包 + //先取20条记录,看能不能取到 + long lMaxCount = 50; +#ifdef _DEBUG + lMaxCount = 10; +#endif + ANS_TD2Signature_Data* pData = new ANS_TD2Signature_Data[lMaxCount]; + memset(pData, 0, sizeof(ANS_TD2Signature_Data) * lMaxCount); + + int i = 0; + while( !m_AdoRSX.IsEOF() && i< lMaxCount) + { + CString strCorpName; + CString strSignature; + CString strSmsNum; + BOOL bNeedUpload = false; + m_AdoRSX.GetCollect(_T("企业名称"), strCorpName); strCorpName.Trim(); + m_AdoRSX.GetCollect(_T("短信签名"), strSignature); strSignature.Trim(); + m_AdoRSX.GetCollect(_T("短信子端口号"), strSmsNum); strSmsNum.Trim(); + + if (strCorpName.GetLength() < 4) //企业名称<4认为是失败 + { + //lCorpNameError++; + } + else + { + if (strSignature.GetLength() < 2) //签名<2认为是失败 + { + //lCorpNameError++; + } + else + { + if (strSmsNum.GetLength() > 0) + { + if (strSmsNum.Find(m_TDSmsNum) == 0) //以主端口号开始的子端口号 + { + //lSucessCount++; //正常的记录 + bNeedUpload = true; + } + else + { + //lSmsNumError++; + } + + } + else + { + if (m_bAutoPort) //端口号为空的,可以选择自动生成端口号 + { + //lSucessCount++; //正常的记录 + bNeedUpload = true; + } + else + { + //lSmsNumError++; + } + } + } + } + + if (bNeedUpload) + { + pData[i].iTDID = m_TDID; + strCorpName.Replace(_T("'"), _T("")); + strSignature.Replace(_T("'"), _T("")); + strSmsNum.Replace(_T("'"), _T("")); + _tcscpy(pData[i].szCorpanyName, strCorpName); + _tcscpy(pData[i].szSignature, strSignature); + _tcscpy(pData[i].szSmsNum, strSmsNum); + + + m_AdoRSX.GetCollect(_T("操作类型"), str); str.Trim(); str.Replace(_T("'"), _T("")); + pData[i].iOperType = 0; //默认操作类型为新增 + if (str == CString(_T("修改")) ){ pData[i].iOperType = 1; } //修改 + if (str == CString(_T("删除"))) { pData[i].iOperType = 2; } //删除 + + m_AdoRSX.GetCollect(_T("短信主端口号"), str); str.Trim(); str.Replace(_T("'"), _T("")); + _tcscpy(pData[i].szMainSmsNum, str); + + m_AdoRSX.GetCollect(_T("接入省"), str); str.Trim(); str.Replace(_T("'"), _T("")); + _tcscpy(pData[i].szProvvince, str); + m_AdoRSX.GetCollect(_T("接入地市"), str); str.Trim(); str.Replace(_T("'"), _T("")); + _tcscpy(pData[i].szCity, str); + m_AdoRSX.GetCollect(_T("端口类型"), str); str.Trim(); str.Replace(_T("'"), _T("")); + _tcscpy(pData[i].szPortType, str); + m_AdoRSX.GetCollect(_T("用途类别"), str); str.Trim(); str.Replace(_T("'"), _T("")); + _tcscpy(pData[i].szPortUsageCategory, str); + m_AdoRSX.GetCollect(_T("企业统一社会信用代码"), str); str.Trim(); str.Replace(_T("'"), _T("")); + _tcscpy(pData[i].szCorpanyNum, str); + m_AdoRSX.GetCollect(_T("责任人名称"), str); str.Trim(); str.Replace(_T("'"), _T("")); + _tcscpy(pData[i].szLegalName, str); + m_AdoRSX.GetCollect(_T("责任人证件类型"), str); str.Trim(); str.Replace(_T("'"), _T("")); + _tcscpy(pData[i].szLegalCertType, str); + m_AdoRSX.GetCollect(_T("责任人证件号码"), str); str.Trim(); str.Replace(_T("'"), _T("")); + _tcscpy(pData[i].szLegalCertID, str); + m_AdoRSX.GetCollect(_T("经办人名称"), str); str.Trim(); str.Replace(_T("'"), _T("")); + _tcscpy(pData[i].szAgencyName, str); + m_AdoRSX.GetCollect(_T("经办人证件类型"), str); str.Trim(); str.Replace(_T("'"), _T("")); + _tcscpy(pData[i].szAgencyCertType, str); + m_AdoRSX.GetCollect(_T("经办人证件号码"), str); str.Trim(); str.Replace(_T("'"), _T("")); + _tcscpy(pData[i].szAgencyCertID, str); + m_AdoRSX.GetCollect(_T("具体用途"), str); str.Trim(); str.Replace(_T("'"), _T("")); + _tcscpy(pData[i].szPortUsage, str); + m_AdoRSX.GetCollect(_T("签名来源"), str); str.Trim(); str.Replace(_T("'"), _T("")); + _tcscpy(pData[i].szSignatureSource, str); + m_AdoRSX.GetCollect(_T("短信端口企业接入机房及设备"), str); str.Trim(); str.Replace(_T("'"), _T("")); + _tcscpy(pData[i].szLocationServerRoom, str); + m_AdoRSX.GetCollect(_T("短信模板"), str); str.Trim(); str.Replace(_T("'"), _T("")); + _tcscpy(pData[i].szContentTemplate, str); + + i++; + } + m_AdoRSX.MoveNext(); + } + + long lSize = sizeof(REQ_TD2Signature_Upload) + sizeof(ANS_TD2Signature_Data) * i; + BYTE* pDataByte = new BYTE[lSize]; + memset(pDataByte, 0, lSize); + + REQ_TD2Signature_Upload* pUpload = (REQ_TD2Signature_Upload * )pDataByte; + ANS_TD2Signature_Data * pUploadData = (ANS_TD2Signature_Data*)(pDataByte+sizeof(REQ_TD2Signature_Upload)); + memcpy((BYTE*)pUploadData, (BYTE*)pData, sizeof(ANS_TD2Signature_Data)* i); //复制数据 + delete [] pData; + + pUpload->iTDID = pAnsUpload->iTDID; + pUpload->iType = pAnsUpload->iType; + pUpload->iConflict = pAnsUpload->iConflict; + pUpload->iAutoPort = pAnsUpload->iAutoPort; + pUpload->iAllCount = pAnsUpload->iAllCount; + pUpload->iCount = i; + pUpload->iUpCount = pAnsUpload->iUpCount; + pUpload->iCover = pAnsUpload->iCover; + pUpload->iAdd = pAnsUpload->iAdd; + pUpload->iDel = pAnsUpload->iDel; + pUpload->iIgnore = pAnsUpload->iIgnore; + pUpload->iFail = pAnsUpload->iFail; + + m_pMainFrame->SendFrame(SMSFUNC_TD2SIGNATURE_UPLOAD, pDataByte, lSize); + } +} diff --git a/DLG_C_TDSet_Signature_Upload.h b/DLG_C_TDSet_Signature_Upload.h new file mode 100644 index 0000000..1ecb7a9 --- /dev/null +++ b/DLG_C_TDSet_Signature_Upload.h @@ -0,0 +1,62 @@ +#pragma once +#include "afxdialogex.h" +#include "CC_TDset_Signature.h" + +// DLG_C_TDSet_Signature_Upload 对话框 + +class CMainFrame; + +class DLG_C_TDSet_Signature_Upload : public CDialogEx +{ +private: + CAdoConnection m_AdoConnectX; + CAdoRecordSet m_AdoRSX, m_AdoRSX2; + CString m_TDSmsNum; //当前通道端口号 + long m_TDID; //当前通道ID + BOOL m_bAutoPort; //自动端口选项 + BOOL m_bUploading; //正在上传数据 + long m_lNeedUploadCount; //需要上传的记录总数 +public: + CMainFrame* m_pMainFrame; + CTD2SignatureTitle_Data* m_pTitleData; + POSITION m_TitleCurPos; + DECLARE_DYNAMIC(DLG_C_TDSet_Signature_Upload) + +public: + DLG_C_TDSet_Signature_Upload(CWnd* pParent = nullptr); // 标准构造函数 + virtual ~DLG_C_TDSet_Signature_Upload(); + + + void SetParam(CMainFrame* pFrame, CTD2SignatureTitle_Data* titleData, POSITION TitleCurPos); + BOOL ProcessSocket(Socket_Head_Add* pHead, BYTE* pFrame); + // 对话框数据 +#ifdef AFX_DESIGN_TIME + enum { IDD = IDD_C_TDSET_SIGNATURE_UPLOAD }; +#endif + +protected: + virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV 支持 + + DECLARE_MESSAGE_MAP() +public: + afx_msg void OnBnClickedCancel(); + CComboBox m_L_TD; + int m_lConflct; + CString m_strFileName; + CString m_strInfo; + int m_lType; + CButton m_B_Upload; + CProgressCtrl m_P_GDT; + virtual BOOL OnInitDialog(); + afx_msg void OnClose(); + afx_msg void OnBnClickedCTdsetSignatureUploadFileSel(); + CButton m_B_AutoPort; + afx_msg void OnSelchangeIddCTdsetSignatureUploadType(); + afx_msg void OnSelchangeIddCTdsetSignatureUploadTd(); + afx_msg void OnSelchangeIddCTdsetSignatureUploadConflict(); + afx_msg void OnClickedIddCTdsetSignatureUploadAutoport(); + void ReSelFile(); + void EnableSel(BOOL bEnable); + afx_msg void OnBnClickedCTdsetSignatureUploadUpload(); + void UploadNext(ANS_TD2Signature_Upload * pAnsUpload); +}; diff --git a/DLG_Corp_Modify.cpp b/DLG_Corp_Modify.cpp index 2c75b04..bb81a28 100644 --- a/DLG_Corp_Modify.cpp +++ b/DLG_Corp_Modify.cpp @@ -481,7 +481,7 @@ void DLG_Corp_Modify::OnBnClickedOk() } if (m_strResponsibleID.GetLength()>0 && luCheckID(m_strResponsibleID.GetBuffer())!= 0) { - MessageBox(_T("֤¼!"), _T(""), MB_ICONWARNING); + MessageBox(_T("ϵ֤¼!"), _T(""), MB_ICONWARNING); GetDlgItem(IDC_CORP_MODIFY_RESPONSIBLEID)->SetFocus(); return; } diff --git a/Debug_Unicode/SmsManager.exe b/Debug_Unicode/SmsManager.exe index 86b5ce5..37aea68 100644 Binary files a/Debug_Unicode/SmsManager.exe and b/Debug_Unicode/SmsManager.exe differ diff --git a/Debug_Unicode/SmsManager.res b/Debug_Unicode/SmsManager.res index cf43ab5..7e7d7fd 100644 Binary files a/Debug_Unicode/SmsManager.res and b/Debug_Unicode/SmsManager.res differ diff --git a/Debug_Unicode/SmsManager.tlog/CL.command.1.tlog b/Debug_Unicode/SmsManager.tlog/CL.command.1.tlog index 80c6b34..962cdd5 100644 Binary files a/Debug_Unicode/SmsManager.tlog/CL.command.1.tlog and b/Debug_Unicode/SmsManager.tlog/CL.command.1.tlog differ diff --git a/Debug_Unicode/SmsManager.tlog/CL.read.1.tlog b/Debug_Unicode/SmsManager.tlog/CL.read.1.tlog index 99c1213..56248ae 100644 Binary files a/Debug_Unicode/SmsManager.tlog/CL.read.1.tlog and b/Debug_Unicode/SmsManager.tlog/CL.read.1.tlog differ diff --git a/Debug_Unicode/SmsManager.tlog/CL.write.1.tlog b/Debug_Unicode/SmsManager.tlog/CL.write.1.tlog index 0564e33..8ac636f 100644 Binary files a/Debug_Unicode/SmsManager.tlog/CL.write.1.tlog and b/Debug_Unicode/SmsManager.tlog/CL.write.1.tlog differ diff --git a/Debug_Unicode/SmsManager.tlog/link.command.1.tlog b/Debug_Unicode/SmsManager.tlog/link.command.1.tlog index 8765e70..bfbf23b 100644 Binary files a/Debug_Unicode/SmsManager.tlog/link.command.1.tlog and b/Debug_Unicode/SmsManager.tlog/link.command.1.tlog differ diff --git a/Debug_Unicode/SmsManager.tlog/link.read.1.tlog b/Debug_Unicode/SmsManager.tlog/link.read.1.tlog index c3ccc86..38e917d 100644 Binary files a/Debug_Unicode/SmsManager.tlog/link.read.1.tlog and b/Debug_Unicode/SmsManager.tlog/link.read.1.tlog differ diff --git a/Debug_Unicode/SmsManager.tlog/link.write.1.tlog b/Debug_Unicode/SmsManager.tlog/link.write.1.tlog index db5758a..5c34306 100644 Binary files a/Debug_Unicode/SmsManager.tlog/link.write.1.tlog and b/Debug_Unicode/SmsManager.tlog/link.write.1.tlog differ diff --git a/Debug_Unicode/vc143.idb b/Debug_Unicode/vc143.idb index d5af701..6fd1014 100644 Binary files a/Debug_Unicode/vc143.idb and b/Debug_Unicode/vc143.idb differ diff --git a/MainFrm.cpp b/MainFrm.cpp index d0ebb97..7856d5d 100644 --- a/MainFrm.cpp +++ b/MainFrm.cpp @@ -314,6 +314,7 @@ BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext) m_wndBar.InsertItem(0, lIndex++, FUNC_MONPAYC, 7, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_COMMENDC , 16, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_ALLQUERY_REPORTC, 7, 0); + m_wndBar.InsertItem(0, lIndex++, FUNC_TDSET_SIGNATUREC, 18, 0); //m_wndBar.InsertItem(0, lIndex++, FUNC_SFQUERYC, 15, 0); #else m_wndBar.AddFolder(_T("ѡ"), 0); @@ -339,6 +340,7 @@ BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext) m_wndBar.InsertItem(0, lIndex++, FUNC_BACKC , 10, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_WHITEC , 17, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_TDSET2C, 18, 0); + m_wndBar.InsertItem(0, lIndex++, FUNC_TDSET_SIGNATUREC, 18, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_PARTNERC, 1, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_TDSETC , 11, 0); m_wndBar.InsertItem(0, lIndex++, FUNC_OTHERC , 11, 0); @@ -792,7 +794,11 @@ long CMainFrame::OnOutbarNotify(WPARAM wParam, LPARAM lParam) ShowFuncDlg(FUNC_ALLQUERY_REPORT); return 1; } - + if (!_tcscmp(szSelText, FUNC_TDSET_SIGNATUREC)) + { + ShowFuncDlg(FUNC_TDSET_SIGNATURE); + return 1; + } @@ -1160,6 +1166,10 @@ LONG CMainFrame::ProcessSocket_Frame( WPARAM wParam , LPARAM lParam ) { m_pUserView->m_dlgAllQuery_Report.ProcessSocket(pHead); } + if (m_lCurFunc == FUNC_TDSET_SIGNATURE) + { + m_pUserView->m_dlgTDSet_Signature.ProcessSocket(pHead); + } break; case SMSFUNC_TAB: case SMSFUNC_ADCHTHS: @@ -1605,6 +1615,12 @@ LONG CMainFrame::ProcessSocket_Frame( WPARAM wParam , LPARAM lParam ) case SMSFUNC_CORP_CUSTOMSETTINGS: m_pUserView->m_dlgUser.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); break; + case SMSFUNC_TD2SIGNATURE_SEE: + case SMSFUNC_TD2SIGNATURETITLE_SEE: + case SMSFUNC_TD2SIGNATURE_MODIFY: + case SMSFUNC_TD2SIGNATURE_UPLOAD: + m_pUserView->m_dlgTDSet_Signature.ProcessSocket(pHeadAdd, (BYTE*)(pHead->pFrame + lSizeOfHeadAdd)); + break; } break; } diff --git a/MainFrm.h b/MainFrm.h index f0bf74c..4c26519 100644 --- a/MainFrm.h +++ b/MainFrm.h @@ -149,6 +149,10 @@ #define FUNC_ALLQUERY_CLIENT 61 #define FUNC_ALLQUERY_REPORTC _T("ۺϲѯ-") #define FUNC_ALLQUERY_REPORT 62 +#define FUNC_TDSET_SIGNATUREC _T("ǩ걨") +#define FUNC_TDSET_SIGNATURE 63 + + #define SHELL_ICON_MESS WM_USER+260 diff --git a/Release_Unicode/SmsManager.res b/Release_Unicode/SmsManager.res index 4cceb48..7badbea 100644 Binary files a/Release_Unicode/SmsManager.res and b/Release_Unicode/SmsManager.res differ diff --git a/Release_Unicode/SmsManager.tlog/CL.command.1.tlog b/Release_Unicode/SmsManager.tlog/CL.command.1.tlog index f593c12..788556a 100644 Binary files a/Release_Unicode/SmsManager.tlog/CL.command.1.tlog and b/Release_Unicode/SmsManager.tlog/CL.command.1.tlog differ diff --git a/Release_Unicode/SmsManager.tlog/CL.read.1.tlog b/Release_Unicode/SmsManager.tlog/CL.read.1.tlog index c124904..72fd80e 100644 Binary files a/Release_Unicode/SmsManager.tlog/CL.read.1.tlog and b/Release_Unicode/SmsManager.tlog/CL.read.1.tlog differ diff --git a/Release_Unicode/SmsManager.tlog/CL.write.1.tlog b/Release_Unicode/SmsManager.tlog/CL.write.1.tlog index 6b59baa..53803e1 100644 Binary files a/Release_Unicode/SmsManager.tlog/CL.write.1.tlog and b/Release_Unicode/SmsManager.tlog/CL.write.1.tlog differ diff --git a/Release_Unicode/SmsManager.tlog/link.command.1.tlog b/Release_Unicode/SmsManager.tlog/link.command.1.tlog index de5e1f4..8566ad6 100644 Binary files a/Release_Unicode/SmsManager.tlog/link.command.1.tlog and b/Release_Unicode/SmsManager.tlog/link.command.1.tlog differ diff --git a/Release_Unicode/SmsManager.tlog/link.read.1.tlog b/Release_Unicode/SmsManager.tlog/link.read.1.tlog index 19c056c..dbb7011 100644 Binary files a/Release_Unicode/SmsManager.tlog/link.read.1.tlog and b/Release_Unicode/SmsManager.tlog/link.read.1.tlog differ diff --git a/Release_Unicode/SmsManager.tlog/link.write.1.tlog b/Release_Unicode/SmsManager.tlog/link.write.1.tlog index 0641a63..7a8331e 100644 Binary files a/Release_Unicode/SmsManager.tlog/link.write.1.tlog and b/Release_Unicode/SmsManager.tlog/link.write.1.tlog differ diff --git a/Release_Unicode/SmsManager3.exe b/Release_Unicode/SmsManager3.exe index 25dcc46..8d4fbb8 100644 Binary files a/Release_Unicode/SmsManager3.exe and b/Release_Unicode/SmsManager3.exe differ diff --git a/SmsManager.rc b/SmsManager.rc index 9ddc706..4362c27 100644 --- a/SmsManager.rc +++ b/SmsManager.rc @@ -580,7 +580,7 @@ BEGIN LTEXT "",IDC_CORP_MODIFY_FAX_PRICEALL_S,248,244,16,8 LTEXT "",IDC_STATIC,311,275,38,8 LTEXT "",IDC_STATIC,311,288,38,8 - LTEXT "",IDC_STATIC,14,259,23,8 + LTEXT "ϵ",IDC_STATIC,14,259,23,8 LTEXT "֤",IDC_STATIC,74,260,15,8 LTEXT "",IDC_STATIC,14,246,15,8 LTEXT "֤",IDC_STATIC,74,247,15,8 @@ -4287,51 +4287,55 @@ FONT 9, "Microsoft Sans Serif", 400, 0, 0x0 BEGIN EDITTEXT IDC_TDSET_MODIFY_NAME,50,33,74,12,ES_AUTOHSCROLL EDITTEXT IDC_TDSET_MODIFY_ACCESSPORT,50,48,74,12,ES_AUTOHSCROLL - EDITTEXT IDC_TDSET_MODIFY_LOGINNAME,164,33,43,12,ES_AUTOHSCROLL + EDITTEXT IDC_TDSET_MODIFY_LOGINNAME,164,48,43,12,ES_AUTOHSCROLL + EDITTEXT IDC_TDSET_MODIFY_SIGNATURETITLE,50,63,73,12,ES_AUTOHSCROLL + EDITTEXT IDC_TDSET_MODIFY_SIGNATURENUM,164,64,43,12,ES_AUTOHSCROLL EDITTEXT IDC_TDSET_MODIFY_SENDRET,178,18,29,12,ES_AUTOHSCROLL | ES_NUMBER - EDITTEXT IDC_TDSET_MODIFY_BFPRIORITY,50,63,30,12,ES_AUTOHSCROLL | ES_NUMBER - COMBOBOX IDC_TDSET_MODIFY_ABILITY,50,80,74,171,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_TDSET_MODIFY_TYPE,50,96,74,171,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_TDSET_MODIFY_LIMITS,50,112,74,171,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_TDSET_MODIFY_TDNUM,50,128,74,171,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - COMBOBOX IDC_TDSET_MODIFY_MODE,50,144,74,171,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP - EDITTEXT IDC_TDSET_MODIFY_CONTENTLEN,182,81,21,12,ES_AUTOHSCROLL | ES_NUMBER - EDITTEXT IDC_TDSET_MODIFY_LONGCONTENTLEN,183,96,21,12,ES_AUTOHSCROLL | ES_NUMBER - EDITTEXT IDC_TDSET_MODIFY_SIGNLEN,182,112,21,12,ES_AUTOHSCROLL | ES_NUMBER - EDITTEXT IDC_TDSET_MODIFY_XYLEN,182,128,21,12,ES_AUTOHSCROLL | ES_NUMBER - EDITTEXT IDC_TDSET_MODIFY_XYTDID,181,144,21,12,ES_AUTOHSCROLL | ES_NUMBER - CONTROL "ôͨ",IDC_TDSET_MODIFY_STATUS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,50,160,53,10 - CONTROL "ͨɷӪ",IDC_TDSET_MODIFY_GGTD,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,137,160,68,10 - CONTROL "Ĭͨ",IDC_TDSET_MODIFY_DEFAULTTD,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,50,174,68,10 - CONTROL "ͨ",IDC_TDSET_MODIFY_OFTENUSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,137,175,52,10 - EDITTEXT IDC_TDSET_MODIFY_BZ,47,194,154,35,ES_MULTILINE | ES_AUTOVSCROLL | ES_WANTRETURN | WS_VSCROLL + EDITTEXT IDC_TDSET_MODIFY_BFPRIORITY,50,79,30,12,ES_AUTOHSCROLL | ES_NUMBER + COMBOBOX IDC_TDSET_MODIFY_ABILITY,50,95,74,171,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_TDSET_MODIFY_TYPE,50,110,74,171,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_TDSET_MODIFY_LIMITS,50,125,74,171,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_TDSET_MODIFY_TDNUM,50,141,74,171,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_TDSET_MODIFY_MODE,50,157,74,171,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + EDITTEXT IDC_TDSET_MODIFY_CONTENTLEN,182,95,21,12,ES_AUTOHSCROLL | ES_NUMBER + EDITTEXT IDC_TDSET_MODIFY_LONGCONTENTLEN,182,109,21,12,ES_AUTOHSCROLL | ES_NUMBER + EDITTEXT IDC_TDSET_MODIFY_SIGNLEN,182,125,21,12,ES_AUTOHSCROLL | ES_NUMBER + EDITTEXT IDC_TDSET_MODIFY_XYLEN,182,141,21,12,ES_AUTOHSCROLL | ES_NUMBER + EDITTEXT IDC_TDSET_MODIFY_XYTDID,182,157,21,12,ES_AUTOHSCROLL | ES_NUMBER + CONTROL "ôͨ",IDC_TDSET_MODIFY_STATUS,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,50,173,53,10 + CONTROL "ͨɷӪ",IDC_TDSET_MODIFY_GGTD,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,137,173,68,10 + CONTROL "Ĭͨ",IDC_TDSET_MODIFY_DEFAULTTD,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,50,187,68,10 + CONTROL "ͨ",IDC_TDSET_MODIFY_OFTENUSE,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,137,188,52,10 + EDITTEXT IDC_TDSET_MODIFY_BZ,47,204,154,35,ES_MULTILINE | ES_AUTOVSCROLL | ES_WANTRETURN | WS_VSCROLL DEFPUSHBUTTON "ȷ ",IDOK,250,46,50,21 PUSHBUTTON "ȡ ",IDCANCEL,250,80,50,21 EDITTEXT IDC_TDSET_MODIFY_MSG,222,132,100,101,ES_MULTILINE | ES_AUTOVSCROLL | ES_READONLY | ES_WANTRETURN | WS_VSCROLL EDITTEXT IDC_TDSET_MODIFY_TDID,50,18,58,12,ES_AUTOHSCROLL | ES_READONLY GROUPBOX "",IDC_STATIC,6,7,205,234 LTEXT "ͨ",IDC_STATIC,15,34,31,8 - LTEXT "Ӫ",IDC_STATIC,15,98,23,8 - LTEXT " ע",IDC_STATIC,15,197,24,8 - ICON IDR_MAINFRAME,IDC_STATIC,262,16,20,20 - LTEXT "ͨ״̬",IDC_STATIC,15,161,31,8 - LTEXT "Ĭͨ",IDC_STATIC,15,176,31,8 + LTEXT "Ӫ",IDC_STATIC,15,112,23,8 + LTEXT " ע",IDC_STATIC,15,207,24,8 + ICON IDR_MAINFRAME,IDC_STATIC,262,16,13,12 + LTEXT "ͨ״̬",IDC_STATIC,15,174,31,8 + LTEXT "Ĭͨ",IDC_STATIC,15,189,31,8 GROUPBOX "ͳ",IDC_STATIC,216,118,112,125 LTEXT "ͨID",IDC_STATIC,14,19,24,8 - LTEXT "ͨ",IDC_STATIC,14,82,31,8 - LTEXT "",IDC_STATIC,15,114,31,8 - LTEXT "ͨ",IDC_STATIC,15,130,23,8 - LTEXT "ģʽ",IDC_STATIC,15,146,31,8 + LTEXT "ͨ",IDC_STATIC,14,97,31,8 + LTEXT "",IDC_STATIC,15,127,31,8 + LTEXT "ͨ",IDC_STATIC,15,143,23,8 + LTEXT "ģʽ",IDC_STATIC,15,159,31,8 LTEXT "",IDC_STATIC,15,49,23,8 - LTEXT "󳤶",IDC_STATIC,132,83,46,8 - LTEXT "ų",IDC_STATIC,140,98,38,8 - LTEXT "ǩ",IDC_STATIC,147,114,31,8 + LTEXT "󳤶",IDC_STATIC,132,97,46,8 + LTEXT "ų",IDC_STATIC,140,111,38,8 + LTEXT "ǩ",IDC_STATIC,147,127,31,8 LTEXT "ID(SendRet)",IDC_STATIC,117,20,60,8 - LTEXT "С",IDC_STATIC,146,131,31,8 - LTEXT "תͨID",IDC_STATIC,146,146,31,8 - LTEXT "ʺ",IDC_STATIC,130,35,30,8 - LTEXT "",IDC_STATIC,16,64,31,8 - LTEXT "(ԽԽȣ0μӲ",IDC_STATIC,86,64,108,8 + LTEXT "С",IDC_STATIC,146,144,31,8 + LTEXT "תͨID",IDC_STATIC,146,159,31,8 + LTEXT "ʺ",IDC_STATIC,130,50,30,8 + LTEXT "",IDC_STATIC,16,80,31,8 + LTEXT "(ԽԽȣ0μӲ",IDC_STATIC,86,80,108,8 + LTEXT "",IDC_STATIC,15,64,31,8 + LTEXT "",IDC_STATIC,129,65,31,8 END IDD_C_TRANSCODESET_MODIFY DIALOGEX 0, 0, 247, 115 @@ -5523,6 +5527,67 @@ BEGIN LTEXT "¼",IDC_STATIC,138,54,30,8 END +IDD_C_TDSET_SIGNATURE DIALOGEX 0, 0, 541, 264 +STYLE DS_SETFONT | WS_CHILD +FONT 9, "Microsoft Sans Serif", 400, 0, 0x0 +BEGIN + CONTROL "List1",IDC_TDSET_SIGNATURE_LIST,"SysListView32",LVS_REPORT | LVS_SHOWSELALWAYS | WS_TABSTOP,4,53,530,204 + CONTROL "DateTimePicker1",IDC_TDSET_SIGNATURE_ADDTIME_TBEGIN, + "SysDateTimePick32",DTS_RIGHTALIGN | WS_TABSTOP,219,13,57,13 + CONTROL "DateTimePicker1",IDC_TDSET_SIGNATURE_ADDTIME_TEND, + "SysDateTimePick32",DTS_RIGHTALIGN | WS_TABSTOP,219,27,57,13 + PUSHBUTTON "ѯ",IDC_TDSET_SIGNATURE_QUERY,463,16,45,16 + LTEXT "ʼ",-1,199,15,16,8 + GROUPBOX "ͨ",IDC_TDSET_SIGNATURE_S1,4,0,97,47 + GROUPBOX "",-1,194,0,88,47 + LTEXT "",-1,199,29,16,8 + CONTROL "ʱ",IDC_TDSET_SIGNATURE_ADDTIME,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,201,0,45,10 + CONTROL "",IDC_TDSET_SIGNATURE_MODIFYTIME_TBEGIN, + "SysDateTimePick32",DTS_RIGHTALIGN | WS_TABSTOP,307,13,57,13 + CONTROL "",IDC_TDSET_SIGNATURE_MODIFYTIME_TEND,"SysDateTimePick32",DTS_RIGHTALIGN | WS_TABSTOP,307,27,57,13 + LTEXT "ʼ",-1,289,15,16,8 + GROUPBOX "",-1,282,0,88,47 + LTEXT "",-1,289,29,16,8 + CONTROL "޸ʱ",IDC_TDSET_SIGNATURE_MODIFYTIME,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,291,0,45,10 + CONTROL "",IDC_TDSET_SIGNATURE_AUDITYTIME_TBEGIN, + "SysDateTimePick32",DTS_RIGHTALIGN | WS_TABSTOP,395,13,57,13 + CONTROL "",IDC_TDSET_SIGNATURE_AUDITYTIME_TEND,"SysDateTimePick32",DTS_RIGHTALIGN | WS_TABSTOP,395,27,57,13 + LTEXT "ʼ",-1,377,15,16,8 + GROUPBOX "",-1,370,0,88,47 + LTEXT "",-1,377,29,16,8 + CONTROL "ʱ",IDC_TDSET_SIGNATURE_AUDITTIME,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,379,0,45,10 + EDITTEXT IDC_TDSET_SIGNATURE_KEY,51,29,43,12,ES_AUTOHSCROLL | ES_NUMBER + GROUPBOX "ѯ",-1,101,0,93,47 + LTEXT "ǩ״̬",-1,108,15,30,8 + COMBOBOX IDC_TDSET_SIGNATURE_STATUS,141,14,47,187,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + LTEXT "",-1,108,29,30,8 + COMBOBOX IDC_TDSET_SIGNATURE_OPERTYPE,141,28,47,187,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDC_TDSET_SIGNATURE_TD,11,13,83,187,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + LTEXT "ؼֲѯ",-1,9,31,37,8 +END + +IDD_C_TDSET_SIGNATURE_UPLOAD DIALOGEX 0, 0, 289, 179 +STYLE DS_SETFONT | DS_MODALFRAME | WS_POPUP | WS_CAPTION | WS_SYSMENU +CAPTION "ϴǩ" +FONT 9, "Microsoft Sans Serif", 400, 0, 0x0 +BEGIN + COMBOBOX IDD_C_TDSET_SIGNATURE_UPLOAD_TD,66,23,192,154,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + COMBOBOX IDD_C_TDSET_SIGNATURE_UPLOAD_TYPE,66,37,131,154,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + CONTROL "Զɶ˿ں",IDD_C_TDSET_SIGNATURE_UPLOAD_AUTOPORT,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,201,37,66,10 + COMBOBOX IDD_C_TDSET_SIGNATURE_UPLOAD_CONFLICT,66,50,192,154,CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP + PUSHBUTTON "...",IDD_C_TDSET_SIGNATURE_UPLOAD_FILE_SEL,262,64,15,13 + EDITTEXT IDD_C_TDSET_SIGNATURE_UPLOAD_INFO,18,84,151,74,ES_MULTILINE | ES_AUTOHSCROLL | ES_READONLY | WS_VSCROLL + PUSHBUTTON "ϴǩ",IDD_C_TDSET_SIGNATURE_UPLOAD_UPLOAD,200,100,50,35,WS_DISABLED + LTEXT "ǩͨ",IDC_STATIC,18,25,44,8 + GROUPBOX "ǩ",IDC_STATIC,7,7,275,165 + LTEXT "ϴǩ",IDC_STATIC,18,39,44,8 + LTEXT "˿ڳͻ",IDC_STATIC,18,52,44,8 + LTEXT "ѡϴļ",IDC_STATIC,18,67,44,8 + EDITTEXT IDD_C_TDSET_SIGNATURE_UPLOAD_FILE,66,64,192,13,ES_AUTOHSCROLL | ES_READONLY + CONTROL "",IDD_C_TDSET_SIGNATURE_UPLOAD_PROCESS, + "msctls_progress32",NOT WS_VISIBLE | WS_BORDER,7,165,275,7 +END + ///////////////////////////////////////////////////////////////////////////// // @@ -7009,6 +7074,20 @@ BEGIN TOPMARGIN, 7 BOTTOMMARGIN, 190 END + + IDD_C_TDSET_SIGNATURE, DIALOG + BEGIN + RIGHTMARGIN, 534 + BOTTOMMARGIN, 257 + END + + IDD_C_TDSET_SIGNATURE_UPLOAD, DIALOG + BEGIN + LEFTMARGIN, 7 + RIGHTMARGIN, 282 + TOPMARGIN, 7 + BOTTOMMARGIN, 172 + END END #endif // APSTUDIO_INVOKED @@ -13161,6 +13240,52 @@ BEGIN 0 END +IDD_C_TDSET_SIGNATURE DLGINIT +BEGIN + IDC_TDSET_SIGNATURE_STATUS, 0x403, 5, 0 +0xf9cb, 0xd0d3, "\000" + IDC_TDSET_SIGNATURE_STATUS, 0x403, 7, 0 +0xfdb4, 0xcfc9, 0xa8b1, "\000" + IDC_TDSET_SIGNATURE_STATUS, 0x403, 7, 0 +0xd1d2, 0xcfc9, 0xa8b1, "\000" + IDC_TDSET_SIGNATURE_STATUS, 0x403, 9, 0 +0xf3c9, 0xcbba, 0xa8cd, 0xfdb9, "\000" + IDC_TDSET_SIGNATURE_STATUS, 0x403, 9, 0 +0xf3c9, 0xcbba, 0xa7ca, 0xdcb0, "\000" + IDC_TDSET_SIGNATURE_STATUS, 0x403, 7, 0 +0xd1d2, 0xbec9, 0xfdb3, "\000" + IDC_TDSET_SIGNATURE_OPERTYPE, 0x403, 5, 0 +0xf9cb, 0xd0d3, "\000" + IDC_TDSET_SIGNATURE_OPERTYPE, 0x403, 5, 0 +0xc2d0, 0xf6d4, "\000" + IDC_TDSET_SIGNATURE_OPERTYPE, 0x403, 5, 0 +0xded0, 0xc4b8, "\000" + IDC_TDSET_SIGNATURE_OPERTYPE, 0x403, 5, 0 +0xbec9, 0xfdb3, "\000" + 0 +END + +IDD_C_TDSET_SIGNATURE_UPLOAD DLGINIT +BEGIN + IDD_C_TDSET_SIGNATURE_UPLOAD_TYPE, 0x403, 26, 0 +0xc2d0, 0xf6d4, 0xa9c7, 0xfbc3, 0xd02d, 0xd2e8, 0xcfaa, 0xcdb5, 0xc9b3, +0xb4cf, 0xc9ab, 0xbaf3, 0x00cb, + IDD_C_TDSET_SIGNATURE_UPLOAD_TYPE, 0x403, 30, 0 +0xe6b4, 0xbfc1, 0xa9c7, 0xfbc3, 0xd22d, 0xc9d1, 0xbaf3, 0xcdcb, 0xb9a8, +0xbffd, 0xd6c9, 0xbdb1, 0xcad3, 0xd3b9, 0x00c3, + IDD_C_TDSET_SIGNATURE_UPLOAD_CONFLICT, 0x403, 14, 0 +0xe7c8, 0xd1d2, 0xe6b4, 0xdad4, 0xb82d, 0xb8b2, 0x00c7, + IDD_C_TDSET_SIGNATURE_UPLOAD_CONFLICT, 0x403, 18, 0 +0xe7c8, 0xd1d2, 0xe6b4, 0xdad4, 0xc82d, 0xc8d4, 0xd0bb, 0xd4c2, 0x00f6, + + IDD_C_TDSET_SIGNATURE_UPLOAD_CONFLICT, 0x403, 14, 0 +0xe7c8, 0xd1d2, 0xe6b4, 0xdad4, 0xba2d, 0xc2f6, 0x00d4, + IDD_C_TDSET_SIGNATURE_UPLOAD_CONFLICT, 0x403, 20, 0 +0xe7c8, 0xd1d2, 0xe6b4, 0xdad4, 0xbb2d, 0xb6bb, 0xbfcb, 0xc9da, 0xc7ea, +0x00eb, + 0 +END + ///////////////////////////////////////////////////////////////////////////// // @@ -13558,6 +13683,16 @@ BEGIN 0 END +IDD_C_TDSET_SIGNATURE AFX_DIALOG_LAYOUT +BEGIN + 0 +END + +IDD_C_TDSET_SIGNATURE_UPLOAD AFX_DIALOG_LAYOUT +BEGIN + 0 +END + ///////////////////////////////////////////////////////////////////////////// // diff --git a/SmsManager.vcxproj b/SmsManager.vcxproj index ebe785d..7ffcda8 100644 --- a/SmsManager.vcxproj +++ b/SmsManager.vcxproj @@ -294,6 +294,7 @@ + @@ -371,6 +372,7 @@ + @@ -527,6 +529,7 @@ + @@ -551,6 +554,7 @@ + diff --git a/SmsManager.vcxproj.filters b/SmsManager.vcxproj.filters index 47056ee..64da066 100644 --- a/SmsManager.vcxproj.filters +++ b/SmsManager.vcxproj.filters @@ -687,6 +687,12 @@ Source Files + + Source Files + + + Source Files + @@ -1372,6 +1378,12 @@ Header Files + + Header Files + + + Header Files + diff --git a/StdAfx.h b/StdAfx.h index 8a08891..7ca53f6 100644 --- a/StdAfx.h +++ b/StdAfx.h @@ -36,7 +36,7 @@ #include #pragma comment(lib, "wininet.lib") -//#define SMSMANAGER_KF //ǷΪͷ(ֵ)ϵͳ +//#define SMSMANAGER_KF //ǷΪͷ(ֵ)ϵͳs //ѡһ #define SMSCENTER_ONE //һƽ̨ diff --git a/UserView.cpp b/UserView.cpp index 39b6901..dc79cfc 100644 --- a/UserView.cpp +++ b/UserView.cpp @@ -103,6 +103,7 @@ CUserView::~CUserView() m_dlgFPQuery.Close(); m_dlgAllQuery_Client.Close(); m_dlgAllQuery_Report.Close(); + m_dlgTDSet_Signature.Close(); } BOOL CUserView::PreCreateWindow(CREATESTRUCT& cs) @@ -234,6 +235,7 @@ int CUserView::OnCreate(LPCREATESTRUCT lpCreateStruct) m_dlgFPQuery.Create(IDD_C_FPQUERY, this); m_dlgAllQuery_Client.Create(IDD_K_ALLQUERY_CLIENT, this); m_dlgAllQuery_Report.Create(IDD_K_ALLQUERY_REPORT, this); + m_dlgTDSet_Signature.Create(IDD_C_TDSET_SIGNATURE, this); return 0; } @@ -303,6 +305,7 @@ void CUserView::OnSize(UINT nType, int cx, int cy) m_dlgFPQuery.MoveWindow(0, 0, cx, cy); m_dlgAllQuery_Client.MoveWindow(0, 0, cx, cy); m_dlgAllQuery_Report.MoveWindow(0, 0, cx, cy); + m_dlgTDSet_Signature.MoveWindow(0, 0, cx, cy); } void CUserView::OnInitialUpdate() @@ -440,6 +443,9 @@ BOOL CUserView::ShowFuncDlg(long lIndex) return false; if (!m_dlgAllQuery_Report.ReHide()) return false; + if (!m_dlgTDSet_Signature.ReHide()) + return false; + m_lCurFunc = lIndex; switch ( lIndex ) @@ -630,6 +636,9 @@ BOOL CUserView::ShowFuncDlg(long lIndex) case FUNC_ALLQUERY_REPORT: m_dlgAllQuery_Report.ReShow(); break; + case FUNC_TDSET_SIGNATURE: + m_dlgTDSet_Signature.ReShow(); + break; default: return false; } diff --git a/UserView.h b/UserView.h index 53dd4d1..6e1c5e3 100644 --- a/UserView.h +++ b/UserView.h @@ -73,6 +73,7 @@ #include "K_SignName.h" #include "CK_AllQuery_Client.h" #include "CK_AllQuery_Report.h" +#include "CC_TDSet_Signature.h" class CMainFrame; class CUserView : public CView @@ -140,6 +141,7 @@ public: CC_FPQuery m_dlgFPQuery; CK_AllQuery_Client m_dlgAllQuery_Client; CK_AllQuery_Report m_dlgAllQuery_Report; + CC_TDSet_Signature m_dlgTDSet_Signature; long m_lCurFunc; diff --git a/resource.h b/resource.h index 22cce73..0b3bf08 100644 --- a/resource.h +++ b/resource.h @@ -135,6 +135,7 @@ #define IDI_L_YKP 308 #define IDI_ICON1 311 #define IDI_L_BLANK 311 +#define IDD_C_TDSET_SIGNATURE_UPLOAD 318 #define IDC_LOGIN_USER 1000 #define IDC_LOGIN_PASSWD 1001 #define IDC_LOGIN_SETUP 1002 @@ -350,7 +351,6 @@ #define IDC_USERMODIFY_SDK_PROHIBITNONTEMPLATE 1151 #define IDC_CORP_LXRMODIFY_SEX 1152 #define IDD_OTHER_AUTOSEND_OVERDATE 1152 -#define IDC_USERMODIFY_SDK_PROHIBITDXY 1152 #define IDC_USERMODIFY_SDK_PROHIBITCLIENT 1152 #define IDC_CORP_MODIFY_MOBILE2 1153 #define IDC_CORP_LXRMODIFY_ZJTYPE 1153 @@ -1638,7 +1638,10 @@ #define IDC_CORP_MODIFY_FAX_PRICEALL_S 2027 #define IDC_TDSET_MODIFY_BFPRIORITY 2027 #define IDC_CORP_MODIFY_AGENT_S 2028 +#define IDC_TDSET_MODIFY_SIGNATURETITLE 2028 #define IDC_CORP_MODIFY_YWY_S 2029 +#define IDC_TDSET_MODIFY_SIGNATURETITLE2 2029 +#define IDC_TDSET_MODIFY_SIGNATURENUM 2029 #define IDC_CORP_MODIFY_KF_S 2030 #define IDC_CORP_MODIFY_PARTNER_S 2031 #define IDC_CORP_MODIFY_EMAIL1_S 2032 @@ -1730,6 +1733,7 @@ #define IDC_PAY_DETAIL_YS 2110 #define IDC_CORP_MODIFY_TD_CMCC_ENABLE 2110 #define IDC_CORP_RETURNQUANTITY_LONGSMS 2110 +#define IDD_C_TDSET_SIGNATURE_UPLOAD_AUTOPORT 2110 #define IDC_CORP_MODIFY_SUBDELAY_S 2111 #define IDC_TDSET_ADD_CW 2111 #define IDC_ALLQUERY_REPORT_YSTIME 2111 @@ -2088,6 +2092,30 @@ #define IDC_CORP_EXPIRYRECYCLING_S1 2427 #define IDC_CORP_EXPIRYRECYCLING_LASTLOGIN 2428 #define IDD_K_GZMSG_JL_ADDLIST 2428 +#define IDC_TDSET_SIGNATURE_S1 2429 +#define IDC_TDSET_SIGNATURE_LIST 2430 +#define IDC_TDSET_SIGNATURE_TD 2431 +#define IDC_TDSET_SIGNATURE_KEY 2432 +#define IDC_TDSET_SIGNATURE_STATUS 2433 +#define IDC_TDSET_SIGNATURE_OPERTYPE 2434 +#define IDC_TDSET_SIGNATURE_ADDTIME_TBEGIN 2435 +#define IDC_TDSET_SIGNATURE_ADDTIME_TEND 2436 +#define IDC_TDSET_SIGNATURE_MODIFYTIME_TBEGIN 2437 +#define IDC_TDSET_SIGNATURE_MODIFYTIME_TEND 2438 +#define IDC_TDSET_SIGNATURE_AUDITYTIME_TBEGIN 2439 +#define IDC_TDSET_SIGNATURE_AUDITYTIME_TEND 2440 +#define IDC_TDSET_SIGNATURE_QUERY 2441 +#define IDC_TDSET_SIGNATURE_AUDITTIME 2442 +#define IDC_TDSET_SIGNATURE_MODIFYTIME 2443 +#define IDC_TDSET_SIGNATURE_ADDTIME 2444 +#define IDD_C_TDSET_SIGNATURE_UPLOAD_TD 2445 +#define IDD_C_TDSET_SIGNATURE_UPLOAD_TYPE 2446 +#define IDD_C_TDSET_SIGNATURE_UPLOAD_CONFLICT 2447 +#define IDD_C_TDSET_SIGNATURE_UPLOAD_FILE 2448 +#define IDD_C_TDSET_SIGNATURE_UPLOAD_FILE_SEL 2449 +#define IDD_C_TDSET_SIGNATURE_UPLOAD_INFO 2450 +#define IDD_C_TDSET_SIGNATURE_UPLOAD_UPLOAD 2451 +#define IDD_C_TDSET_SIGNATURE_UPLOAD_PROCESS 2452 #define IDC_HANDCUR 3010 #define IDD_CORP_BZ 32260 #define IDD_CORP_OPER_OPEN 32261 @@ -2189,6 +2217,7 @@ #define IDD_CORP_RETURNQUANTITY 32357 #define IDD_CORP_CUSTOM_SETTINGS 32358 #define IDD_CORP_EXPIRYRECYCLING 32359 +#define IDD_C_TDSET_SIGNATURE 32360 #define ID_MODIFY_PASSWD 32771 #define ID_MENUITEM32772 32772 #define ID_BACK_DATA 32773 @@ -2213,9 +2242,9 @@ #ifdef APSTUDIO_INVOKED #ifndef APSTUDIO_READONLY_SYMBOLS #define _APS_3D_CONTROLS 1 -#define _APS_NEXT_RESOURCE_VALUE 318 +#define _APS_NEXT_RESOURCE_VALUE 321 #define _APS_NEXT_COMMAND_VALUE 32789 -#define _APS_NEXT_CONTROL_VALUE 2429 +#define _APS_NEXT_CONTROL_VALUE 2453 #define _APS_NEXT_SYMED_VALUE 101 #endif #endif