// SetLeftBar.cpp : implementation file // #include "stdafx.h" #include "ylgl.h" #include "SetLeftBar.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // SetLeftBar dialog SetLeftBar::SetLeftBar(CWnd* pParent /*=NULL*/) : CDialog(SetLeftBar::IDD, pParent) { //{{AFX_DATA_INIT(SetLeftBar) // NOTE: the ClassWizard will add member initialization here //}}AFX_DATA_INIT } void SetLeftBar::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(SetLeftBar) // NOTE: the ClassWizard will add DDX and DDV calls here //}}AFX_DATA_MAP } BEGIN_MESSAGE_MAP(SetLeftBar, CDialog) //{{AFX_MSG_MAP(SetLeftBar) ON_WM_DESTROY() //}}AFX_MSG_MAP END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // SetLeftBar message handlers BOOL SetLeftBar::OnInitDialog() { // LOG4C((LOG_NOTICE,"SetLeftBar::OnInitDialog")); CDialog::OnInitDialog(); CString filter = "account='" + m_account + "'"; g_sendhead.bsql = 0; g_sendhead.code[0] = 23; g_sendhead.tabcount = 1; g_pMainWnd->ProcessChatMessageRequest2(filter); if (g_bSendOK == 0) { CDialog::OnCancel(); return 0; } DataToArray(&g_List1array); if (g_List1array.GetSize() == 0) { CDialog::OnCancel(); return 0; } // Jeff.case 23 at[4]界面分配; m_rights = g_List1array.ElementAt(0).ElementAt(4); // ::MoveWindow(m_hWnd,g_rc.left,g_rc.top,g_rc.Width(),g_rc.Height(),TRUE); ::MoveWindow(m_hWnd, 0, g_rc.top, g_rc.left + g_rc.Width(), g_rc.Height(), TRUE); // TODO: Add extra initialization here List1array.SetSize(15, 0); List1array.ElementAt(0).Add("门市流程"); List1array.ElementAt(0).Add("开单"); List1array.ElementAt(0).Add("拍照"); List1array.ElementAt(0).Add("修片"); List1array.ElementAt(0).Add("选片"); List1array.ElementAt(0).Add("精修"); List1array.ElementAt(0).Add("设计"); List1array.ElementAt(0).Add("刻盘"); List1array.ElementAt(0).Add("相片冲印"); List1array.ElementAt(0).Add("发片/取件"); List1array.ElementAt(0).Add("数码安排"); List1array.ElementAt(1).Add("财务管理"); List1array.ElementAt(1).Add("订单收款"); List1array.ElementAt(1).Add("其它二销"); List1array.ElementAt(1).Add("现金支出"); List1array.ElementAt(1).Add("其它收入"); List1array.ElementAt(1).Add("提成比例"); // List1array.ElementAt (1).Add ("员工工作"); List1array.ElementAt(1).Add("计件提成"); // Jeff List1array.ElementAt(1).Add("工资管理"); List1array.ElementAt(1).Add("员工奖罚"); List1array.ElementAt(2).Add("统计查询"); List1array.ElementAt(2).Add("日财务表"); List1array.ElementAt(2).Add("月财务表"); List1array.ElementAt(2).Add("年财务表"); List1array.ElementAt(2).Add("年财务图表"); List1array.ElementAt(2).Add("订单图表"); List1array.ElementAt(2).Add("成本核算"); List1array.ElementAt(2).Add("工资报表"); List1array.ElementAt(2).Add("员工业绩"); List1array.ElementAt(2).Add("员工资料"); List1array.ElementAt(2).Add("员工奖惩"); List1array.ElementAt(2).Add("客户区域"); //List1array.ElementAt (3).Add (" 短信群发 "); // remark by jeff List1array.ElementAt(3).Add(" 短信管理 "); // 2014.05.19 按要求将"短信群发"改成"短信管理" List1array.ElementAt(3).Add("短信群发"); List1array.ElementAt(3).Add("短信发送"); List1array.ElementAt(3).Add("流程短信"); List1array.ElementAt(3).Add("员工短信"); List1array.ElementAt(3).Add("发送记录"); List1array.ElementAt(3).Add("短信设置"); List1array.ElementAt(4).Add("会员管理"); List1array.ElementAt(4).Add("金卡会员"); List1array.ElementAt(4).Add("现金子卡"); List1array.ElementAt(4).Add("金卡图表"); List1array.ElementAt(4).Add("积分短信"); List1array.ElementAt(4).Add("蓝钻会员"); List1array.ElementAt(4).Add("转介绍返现"); List1array.ElementAt(4).Add("转介绍图表"); List1array.ElementAt(4).Add("积分设置"); List1array.ElementAt(5).Add("礼服管理"); List1array.ElementAt(5).Add("礼服录入"); List1array.ElementAt(5).Add("礼服查看"); List1array.ElementAt(5).Add("礼服出租"); List1array.ElementAt(5).Add("撞期预警"); List1array.ElementAt(5).Add("礼服图片"); List1array.ElementAt(6).Add("库存管理"); List1array.ElementAt(6).Add("入库单"); List1array.ElementAt(6).Add("出库单"); List1array.ElementAt(6).Add("库存查询"); List1array.ElementAt(6).Add("商品图表"); List1array.ElementAt(6).Add("固定资产管理"); List1array.ElementAt(7).Add("客户管理"); List1array.ElementAt(7).Add("订单客户"); List1array.ElementAt(7).Add("老客户"); List1array.ElementAt(7).Add("意向客户"); List1array.ElementAt(7).Add("客户流失"); List1array.ElementAt(7).Add("客户来源"); List1array.ElementAt(8).Add("来电精灵"); List1array.ElementAt(8).Add("客户来电"); List1array.ElementAt(8).Add("拨出电话"); List1array.ElementAt(8).Add("未接来电"); List1array.ElementAt(9).Add("员工考勤"); List1array.ElementAt(9).Add("考勤记录"); List1array.ElementAt(9).Add("月统计"); List1array.ElementAt(9).Add("时间设置"); List1array.ElementAt(9).Add("排班设置"); List1array.ElementAt(10).Add("客户服务"); List1array.ElementAt(10).Add("满意度"); List1array.ElementAt(10).Add("满意度汇总"); #if JEFF_DELETE_ON // 2014.11.14-PM 16:20 List1array.ElementAt(10).Add("回复统计"); #endif List1array.ElementAt(11).Add(_T("微信公众号")); List1array.ElementAt(11).Add(_T("公众号设置")); List1array.ElementAt(11).Add(_T("模板消息设置")); List1array.ElementAt(11).Add(_T("推送记录")); BOOL bHospital = 0; if (g_cominfoarray.GetSize()) { if (atoi(g_cominfoarray.ElementAt(0).ElementAt(125))) { bHospital = 1; } } if (bHospital) { #if 1 List1array.ElementAt(12).Add("医院跟踪系统"); List1array.ElementAt(12).Add("意向查询"); List1array.ElementAt(12).Add("意向单录入"); List1array.ElementAt(12).Add("今日提醒"); List1array.ElementAt(12).Add("跟踪短信"); List1array.ElementAt(12).Add("资料设置"); #else List1array.ElementAt(11).Add("医院跟踪系统"); List1array.ElementAt(11).Add("意向查询"); List1array.ElementAt(11).Add("意向单录入"); List1array.ElementAt(11).Add("今日提醒"); List1array.ElementAt(11).Add("跟踪短信"); List1array.ElementAt(11).Add("资料设置"); #endif } for (int i = 0; i < 15; i++) { while (List1array.ElementAt(i).GetSize() < 20) List1array.ElementAt(i).Add(""); } CRect rc(10, 0, 15, 15); CString str; int itemcount = g_nDrawerCount; // 侧边栏数量; if (bHospital)itemcount++; for (int a = 0; a < itemcount; a++) { rc.right = rc.left + 100; rc.top = 20; for (int b = 0; b < 20; b++) { str = List1array.ElementAt(a).ElementAt(b); if (str.IsEmpty())break; CButton *pBtn = new CButton; rc.top += 22; rc.bottom = rc.top + 17; pBtn->Create(str, WS_CHILD | WS_VISIBLE | BS_AUTOCHECKBOX | BS_FLAT, rc, this, 123); if (b == 0) { if (IsHasRightsHead(m_rights, str)) pBtn->SetCheck(1); } else { if (IsHasRightsItem(m_rights, List1array.ElementAt(a).ElementAt(0), str)) pBtn->SetCheck(1); } m_pCheckArray.Add(pBtn); } if (g_screenwid <= 1024) rc.left += 101; else rc.left += 105; } return TRUE; // return TRUE unless you set the focus to a control // EXCEPTION: OCX Property Pages should return FALSE } void SetLeftBar::SetRights(CString rights) { // int header[]={}; } void SetLeftBar::OnDestroy() { // TODO: Add your message handler code here for (int i = 0; i < m_pCheckArray.GetSize(); i++) { CButton *pBtn = m_pCheckArray.ElementAt(i); pBtn->DestroyWindow(); delete pBtn; } CDialog::OnDestroy(); } BOOL SetLeftBar::IsHasRightsHead(CString rights, CString name) { name = "*" + name + ";1;"; int pos = rights.Find(name); if (pos == -1)return 0; return 1; } BOOL SetLeftBar::IsHasRightsItem(CString rights, CString head, CString name) { head = "*" + head + ";"; int pos = rights.Find(head); if (pos == -1)return 0; rights = rights.Right(rights.GetLength() - pos - head.GetLength() - 2); pos = rights.Find("*"); if (pos != -1) rights = rights.Left(pos); if (rights.Find(name) != -1)return 1; return 0; } void SetLeftBar::OnOK() { // TODO: Add extra validation here m_rights.Empty(); for (int i = 0; i < m_pCheckArray.GetSize(); i++) { CButton *pBtn = m_pCheckArray.ElementAt(i); CString str; pBtn->GetWindowText(str); if (IsHeader(str)) { m_rights += "*" + str + ";"; if (pBtn->GetCheck() == 0) m_rights += "0;"; else m_rights += "1;"; } else { if (pBtn->GetCheck() == 0)continue; m_rights += str + ";"; } } CString sql; sql.Format("update [user] set [rights2]='%s' where [account]='%s' ", m_rights, m_account); g_sendhead.bsql = 1; g_pMainWnd->ProcessChatMessageRequest2(sql); if (g_bSendOK == 0)return; AfxMessageBox("保存成功!"); //AfxMessageBox(sql); CDialog::OnOK(); } BOOL SetLeftBar::IsHeader(CString name) { for (int i = 0; i < List1array.GetSize(); i++) { if (name == List1array.ElementAt(i).ElementAt(0))return 1; } return 0; }