📄 dlgmanagetask.cpp
字号:
// DlgManageTask.cpp : implementation file
//
#include "stdafx.h"
#include "manage_wh.h"
#include "DlgManageTask.h"
#include "DlgOrderDel.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CDlgManageTask dialog
CDlgManageTask::CDlgManageTask(CWnd* pParent /*=NULL*/)
: CDialog(CDlgManageTask::IDD, pParent)
{
//{{AFX_DATA_INIT(CDlgManageTask)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
m_hIcon = AfxGetApp()->LoadIcon(IDI_MYICON);
}
void CDlgManageTask::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDlgManageTask)
DDX_Control(pDX, IDC_LIST, m_list);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CDlgManageTask, CDialog)
//{{AFX_MSG_MAP(CDlgManageTask)
ON_BN_CLICKED(IDC_REFRESH, OnRefresh)
ON_BN_CLICKED(IDC_DEL_TASK, OnDelTask)
ON_BN_CLICKED(IDC_DEL_ORDER, OnDelOrder)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDlgManageTask message handlers
BOOL CDlgManageTask::PreTranslateMessage(MSG* pMsg)
{
if (pMsg->message==WM_KEYDOWN && (pMsg->wParam==13 || pMsg->wParam==27))
return TRUE;
return CDialog::PreTranslateMessage(pMsg);
}
BOOL CDlgManageTask::OnInitDialog()
{
CDialog::OnInitDialog();
SetIcon(m_hIcon,TRUE);
m_list.InsertColumn(0,"索引",LVCFMT_LEFT,60,-1);
m_list.InsertColumn(1,"订单编号",LVCFMT_LEFT,120,-1);
m_list.InsertColumn(2,"任务组号",LVCFMT_LEFT,90,-1);
m_list.InsertColumn(3,"起点",LVCFMT_LEFT,90,-1);
m_list.InsertColumn(4,"终点",LVCFMT_LEFT,90,-1);
m_list.InsertColumn(5,"任务类型",LVCFMT_LEFT,90,-1);
m_list.InsertColumn(6,"优先级别",LVCFMT_LEFT,90,-1);
m_list.InsertColumn(7,"任务状态",LVCFMT_LEFT,90,-1);
m_list.InsertColumn(8,"商品名称",LVCFMT_LEFT,100,-1);
m_list.InsertColumn(9,"完成数量",LVCFMT_LEFT,90,-1);
m_list.InsertColumn(10,"商品数量",LVCFMT_LEFT,90,-1);
m_list.InsertColumn(11,"客户名称",LVCFMT_LEFT,120,-1);
m_list.InsertColumn(12,"交货日期",LVCFMT_LEFT,120,-1);
m_list.InsertColumn(13,"任务生成时间",LVCFMT_LEFT,160,-1);
m_list.InsertColumn(14,"任务开始时间",LVCFMT_LEFT,160,-1);
m_list.InsertColumn(15,"任务结束时间",LVCFMT_LEFT,160,-1);
m_list.SetExtendedStyle( LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT);
RefreshTaskList();
return TRUE;
}
void CDlgManageTask::RefreshTaskList()
{
m_list.DeleteAllItems();
CAdoConnection cn;
CAdoRecordSet rs;
cn.OpenUDLFile(gstrConSQLSer);
rs.SetAdoConnection(&cn);
rs.Open("V_ManageTask",adCmdTable);
if (rs.GetRecordCount() > 0)
{
int row=0,iIndex,iGroup,iCount,iFinishCount;
CString sOrder,sStartPoint,sEndPoint,sTaskKind,sTaskState,sTaskLevel,sGoodsKind,sCustomer,sDeliverDate,\
sSendTime,sBeginTime,sEndTime,sIndex,sGroup,sCount,sFinishCount;
rs.MoveFirst();
while (!rs.IsEOF())
{
rs.GetCollect("F_Index",iIndex);
rs.GetCollect("F_Order",sOrder);
rs.GetCollect("F_Group",iGroup);
rs.GetCollect("F_StartPoint",sStartPoint);
rs.GetCollect("F_EndPoint",sEndPoint);
rs.GetCollect("F_TaskKind",sTaskKind);
rs.GetCollect("F_TaskLevel",sTaskLevel);
rs.GetCollect("F_TaskState",sTaskState);
rs.GetCollect("F_GoodsKind",sGoodsKind);
rs.GetCollect("F_FinishCount",iFinishCount);
rs.GetCollect("F_Count",iCount);
rs.GetCollect("F_Customer",sCustomer);
rs.GetCollect("F_DeliverDate",sDeliverDate);
rs.GetCollect("F_SendTime",sSendTime);
rs.GetCollect("F_StartTime",sBeginTime);
rs.GetCollect("F_EndTime",sEndTime);
sIndex.Format("%d",iIndex);
sGroup.Format("%d",iGroup);
sCount.Format("%d",iCount);
sFinishCount.Format("%d",iFinishCount);
row = m_list.InsertItem(row,"");
m_list.SetItemText(row,0,sIndex);
m_list.SetItemText(row,1,sOrder);
m_list.SetItemText(row,2,sGroup);
m_list.SetItemText(row,3,sStartPoint);
m_list.SetItemText(row,4,sEndPoint);
m_list.SetItemText(row,5,sTaskKind);
m_list.SetItemText(row,6,sTaskLevel);
m_list.SetItemText(row,7,sTaskState);
m_list.SetItemText(row,8,sGoodsKind);
m_list.SetItemText(row,9,sFinishCount);
m_list.SetItemText(row,10,sCount);
m_list.SetItemText(row,11,sCustomer);
m_list.SetItemText(row,12,sDeliverDate);
m_list.SetItemText(row,13,sSendTime);
m_list.SetItemText(row,14,sBeginTime);
m_list.SetItemText(row,15,sEndTime);
rs.MoveNext();
row++;
}
}
rs.Close();
cn.Close();
}
void CDlgManageTask::OnRefresh()
{
RefreshTaskList();
}
void CDlgManageTask::OnDelTask()
{
if (m_list.GetSelectedCount() == 0)
{
MessageBox("请选择要删除的任务!\n","消息提示",MB_ICONSTOP|MB_OK);
return;
}
CString sTaskIndex,sOrderIndex,sTaskKind,sBeginPoint,sEndPoint;
for (int i=0;i<m_list.GetItemCount();i++)
{
if (m_list.GetItemState(i,LVIS_SELECTED) == LVIS_SELECTED)
{
sTaskIndex = m_list.GetItemText(i,0);
sOrderIndex = m_list.GetItemText(i,1);
sBeginPoint = m_list.GetItemText(i,3);
sEndPoint = m_list.GetItemText(i,4);
sTaskKind = m_list.GetItemText(i,5);
break;
}
}
int bz;
if (sOrderIndex.IsEmpty())
{
bz = 0;
}
else
{
CString sTemp,sTemp1;
for (int j=0;j<m_list.GetItemCount();j++)
{
sTemp1 = m_list.GetItemText(j,0);
sTemp = m_list.GetItemText(j,1);
if (sTemp1 != sTaskIndex && sTemp == sOrderIndex)
{
bz = 0;
break;
}
else
bz = 1;
}
}
CAdoConnection cn;
CString sSQL;
int iTaskIndex(0);
switch (bz)
{
case 0:
if (MessageBox("是否删除选择的任务?","系统提示",MB_ICONWARNING|MB_YESNO) == IDNO)
return;
iTaskIndex = atoi(sTaskIndex);
sSQL.Format("DELETE FROM T_Manager_Task WHERE F_ManagerIndex=%d",iTaskIndex);
cn.OpenUDLFile(gstrConSQLSer);
cn.Execute(sSQL,adCmdText);
if (sTaskKind == "导库任务")
{
cn.Execute("UPDATE T_Goods_Site_Manage SET F_SiteState=1 WHERE F_SiteIndex='"+sBeginPoint+"'",adCmdText);
cn.Execute("UPDATE T_Goods_Site_Manage SET F_SiteState=0 WHERE F_SiteIndex='"+sEndPoint+"'",adCmdText);
}
cn.Close();
AddLog("删除管理任务");
break;
case 1:
if (MessageBox("是否删除编号为[<"+sOrderIndex+">]的订单?","系统提示",MB_ICONWARNING|MB_YESNO) == IDNO)
return;
iTaskIndex = atoi(sTaskIndex);
cn.OpenUDLFile(gstrConSQLSer);
sSQL.Format("DELETE FROM T_Manager_Task WHERE F_ManagerIndex=%d",iTaskIndex);
cn.Execute(sSQL,adCmdText);
cn.Execute("DELETE FROM T_Order_History WHERE F_OrderIndex = '"+sOrderIndex+"'",adCmdText);
if (sTaskKind == "整盘出库")
{
cn.Execute("UPDATE T_Goods_Site_Manage SET F_SiteState=1 WHERE F_SiteIndex='"+sBeginPoint+"'",adCmdText);
}
cn.Close();
AddLog("删除订单[<"+sOrderIndex+">]");
break;
}
RefreshTaskList();
}
void CDlgManageTask::OnDelOrder()
{
CDlgOrderDel dlg;
dlg.DoModal();
RefreshTaskList();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -