SatisfactionCfg.cpp 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596
  1. #include "stdafx.h"
  2. #include "ylgl.h"
  3. #include "SatisfactionCfg.h"
  4. #ifdef _DEBUG
  5. #define new DEBUG_NEW
  6. #undef THIS_FILE
  7. static char THIS_FILE[] = __FILE__;
  8. #endif
  9. static const CString g_strMaxScore = _T("5");
  10. SatisfactionCfg::SatisfactionCfg(CWnd* pParent)
  11. : CDialog(SatisfactionCfg::IDD, pParent)
  12. , m_strSelCfgID(_T(""))
  13. {
  14. }
  15. void SatisfactionCfg::DoDataExchange(CDataExchange* pDX)
  16. {
  17. CDialog::DoDataExchange(pDX);
  18. DDX_Control(pDX, IDC_TYPENAME_LIST, m_NameList);
  19. DDX_Control(pDX, IDC_SCORE_LIST, m_ScoreList);
  20. DDX_Control(pDX, IDC_SURVEYCFG_LIST, m_CfgList);
  21. }
  22. BEGIN_MESSAGE_MAP(SatisfactionCfg, CDialog)
  23. ON_WM_DESTROY()
  24. ON_BN_CLICKED(IDC_ADDSURVEYTYPE_BTN, OnAddSurveyTypeBtn)
  25. ON_BN_CLICKED(IDC_DESURVEYTYPEL_BTN, OnDelSurveyTypeBtn)
  26. ON_BN_CLICKED(IDC_ADDSCORETYPE_BTN, OnAddScoreTypeBtn)
  27. ON_BN_CLICKED(IDC_DELSCORETYPE_BTN, OnDelScoreTypeBtn)
  28. ON_BN_CLICKED(IDC_ADDSURVEYCFG_BTN, OnAddSurveyCfgBtn)
  29. ON_BN_CLICKED(IDC_EDITCFG_BTN, OnEditCfgBtn)
  30. ON_BN_CLICKED(IDC_DELSURVEY_BTN, OnDelSurveyBtn)
  31. ON_NOTIFY(NM_CLICK, IDC_TYPENAME_LIST, OnNMClickList1)
  32. ON_NOTIFY(NM_CLICK, IDC_SCORE_LIST, OnNMClickList2)
  33. ON_NOTIFY(NM_CLICK, IDC_SURVEYCFG_LIST, OnNMClickList3)
  34. END_MESSAGE_MAP()
  35. BOOL SatisfactionCfg::OnInitDialog()
  36. {
  37. CDialog::OnInitDialog();
  38. m_NameList.InsertColumn( 0, _T("ID"), LVCFMT_LEFT, 40 );//插入列
  39. m_NameList.InsertColumn( 1, _T("类型"), LVCFMT_LEFT, 90 );//插入列
  40. m_NameList.SetExtendedStyle(m_NameList.GetExtendedStyle() | LVS_EX_FLATSB | LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES | LVS_EX_HEADERDRAGDROP);
  41. m_ScoreList.InsertColumn( 0, _T("ID"), LVCFMT_LEFT, 40 );//插入列
  42. m_ScoreList.InsertColumn( 1, _T("类型"), LVCFMT_LEFT, 70 );//插入列
  43. /*
  44. m_ScoreList.InsertColumn( 2, _T("分数范围1"), LVCFMT_LEFT, 40 );//插入列
  45. m_ScoreList.InsertColumn( 3, _T("分数范围2"), LVCFMT_LEFT, 40 );//插入列
  46. m_ScoreList.InsertColumn( 4, _T("分数范围3"), LVCFMT_LEFT, 40 );//插入列
  47. m_ScoreList.InsertColumn( 5, _T("分数范围4"), LVCFMT_LEFT, 40 );//插入列
  48. m_ScoreList.InsertColumn( 6, _T("分数范围5"), LVCFMT_LEFT, 40 );//插入列
  49. */
  50. m_ScoreList.SetExtendedStyle(m_ScoreList.GetExtendedStyle() | LVS_EX_FLATSB | LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES | LVS_EX_HEADERDRAGDROP);
  51. m_CfgList.InsertColumn( 0, _T("ID"), LVCFMT_LEFT, 70 );//插入列
  52. m_CfgList.InsertColumn( 1, _T("调查类型"), LVCFMT_LEFT, 70 );//插入列
  53. m_CfgList.InsertColumn( 2, _T("类型名称"), LVCFMT_LEFT, 70 );//插入列
  54. m_CfgList.InsertColumn( 3, _T("最高分数"), LVCFMT_LEFT, 70 );//插入列
  55. m_CfgList.InsertColumn( 4, _T("评分类型"), LVCFMT_LEFT, 70 );//插入列
  56. m_CfgList.InsertColumn( 5, _T("是否有效"), LVCFMT_LEFT, 70 );//插入列
  57. m_CfgList.InsertColumn( 6, _T("调查事项"), LVCFMT_LEFT, 200 );//插入列
  58. m_CfgList.SetExtendedStyle(m_CfgList.GetExtendedStyle() | LVS_EX_FLATSB | LVS_EX_FULLROWSELECT | LVS_EX_GRIDLINES | LVS_EX_HEADERDRAGDROP);
  59. GetData();
  60. FillGrid();
  61. ((CEdit*)GetDlgItem(IDC_MAXSCORE_EDIT))->SetWindowText(g_strMaxScore);
  62. this->CenterWindow (g_pMainWnd);
  63. return TRUE;
  64. }
  65. /*----------------------------------------
  66. 函数名: GetData
  67. 描述: 获取数据
  68. 参数:
  69. 返回值:
  70. ----------------------------------------*/
  71. void SatisfactionCfg::GetData()
  72. {
  73. CString strfilter = _T("");
  74. //获取服务类别
  75. g_sendhead.bsql = 0;
  76. g_sendhead.code[0] = 234;
  77. g_sendhead.tabcount = 1;
  78. strfilter = _T("SvrKind@");
  79. g_pMainWnd->ProcessChatMessageRequest2(strfilter);
  80. if(g_bSendOK == 0)
  81. return;
  82. DataToArray(&m_kindArr);
  83. //获取分数类型
  84. g_sendhead.bsql = 0;
  85. g_sendhead.code[0] = 234;
  86. g_sendhead.tabcount = 1;
  87. strfilter = _T("GetScoreType@");
  88. g_pMainWnd->ProcessChatMessageRequest2(strfilter);
  89. if(g_bSendOK == 0)
  90. return;
  91. DataToArray(&m_ScoreTypeArr);
  92. //获取配置信息
  93. g_sendhead.bsql = 0;
  94. g_sendhead.code[0] = 234;
  95. g_sendhead.tabcount = 1;
  96. strfilter = _T("SatisfactionCfg@");
  97. g_pMainWnd->ProcessChatMessageRequest2(strfilter);
  98. if (g_bSendOK == 0)
  99. return;
  100. DataToArray(&m_cfgArr);
  101. }
  102. /*----------------------------------------
  103. 函数名: FillGrid
  104. 描述: 填充表格
  105. 参数:
  106. 返回值:
  107. ----------------------------------------*/
  108. void SatisfactionCfg::FillGrid()
  109. {
  110. int i=0;
  111. for(i=0; i<m_kindArr.GetSize(); i++)
  112. {
  113. int row = m_NameList.InsertItem(i, m_kindArr.ElementAt(i).ElementAt(0));
  114. m_NameList.SetItemText(row, 1, m_kindArr.ElementAt(i).ElementAt(1));
  115. }
  116. for(i=0; i<m_ScoreTypeArr.GetSize(); i++)
  117. {
  118. int row = m_ScoreList.InsertItem(i, m_ScoreTypeArr.ElementAt(i).ElementAt(0));
  119. m_ScoreList.SetItemText(row, 1, m_ScoreTypeArr.ElementAt(i).ElementAt(1));
  120. /*
  121. m_ScoreList.SetItemText(row, 2, m_ScoreTypeArr.ElementAt(i).ElementAt(2));
  122. m_ScoreList.SetItemText(row, 3, m_ScoreTypeArr.ElementAt(i).ElementAt(3));
  123. m_ScoreList.SetItemText(row, 4, m_ScoreTypeArr.ElementAt(i).ElementAt(4));
  124. m_ScoreList.SetItemText(row, 5, m_ScoreTypeArr.ElementAt(i).ElementAt(5));
  125. m_ScoreList.SetItemText(row, 6, m_ScoreTypeArr.ElementAt(i).ElementAt(6));
  126. */
  127. }
  128. for(i=0; i<m_cfgArr.GetSize(); i++)
  129. {
  130. int row = m_CfgList.InsertItem(i, m_cfgArr.ElementAt(i).ElementAt(0));
  131. m_CfgList.SetItemText(row, 1, m_cfgArr.ElementAt(i).ElementAt(1));
  132. m_CfgList.SetItemText(row, 2, m_cfgArr.ElementAt(i).ElementAt(2));
  133. m_CfgList.SetItemText(row, 3, m_cfgArr.ElementAt(i).ElementAt(3));
  134. m_CfgList.SetItemText(row, 4, m_cfgArr.ElementAt(i).ElementAt(4));
  135. m_CfgList.SetItemText(row, 5, m_cfgArr.ElementAt(i).ElementAt(5));
  136. m_CfgList.SetItemText(row, 6, m_cfgArr.ElementAt(i).ElementAt(6));
  137. }
  138. }
  139. void SatisfactionCfg::OnDestroy()
  140. {
  141. CDialog::OnDestroy();
  142. }
  143. //添加调查类型
  144. void SatisfactionCfg::OnAddSurveyTypeBtn()
  145. {
  146. CString strSurveyType = _T("");
  147. ((CEdit*)GetDlgItem(IDC_ADDTYPE_EDIT))->GetWindowText(strSurveyType);
  148. if(strSurveyType == _T(""))
  149. {
  150. MessageBox(_T("请输入调查类型"));
  151. return;
  152. }
  153. BOOL bIsExist = FALSE;
  154. for(int i=0; i<m_NameList.GetItemCount(); i++)
  155. {
  156. CString strTypeName = m_NameList.GetItemText(i, 1);
  157. if(strTypeName == strSurveyType)
  158. {
  159. bIsExist = TRUE;
  160. break;
  161. }
  162. }
  163. if(bIsExist)
  164. return;
  165. CString strSql = _T("INSERT INTO SatisfactionSvrKind VALUES ('") + strSurveyType + _T("','')");
  166. g_sendhead.bsql = 1;
  167. g_pMainWnd->ProcessChatMessageRequest2(strSql);
  168. if(g_bSendOK == 0)
  169. return;
  170. //更新调查类型
  171. UpdateSurveyType();
  172. }
  173. void SatisfactionCfg::UpdateSurveyType()
  174. {
  175. //获取服务类别
  176. m_kindArr.RemoveAll();
  177. g_sendhead.bsql = 0;
  178. g_sendhead.code[0] = 234;
  179. g_sendhead.tabcount = 1;
  180. CString strfilter = _T("SvrKind@");
  181. g_pMainWnd->ProcessChatMessageRequest2(strfilter);
  182. if(g_bSendOK == 0)
  183. return;
  184. DataToArray(&m_kindArr);
  185. m_NameList.DeleteAllItems();
  186. for(int i=0; i<m_kindArr.GetSize(); i++)
  187. {
  188. int row = m_NameList.InsertItem(i, m_kindArr.ElementAt(i).ElementAt(0));
  189. m_NameList.SetItemText(row, 1, m_kindArr.ElementAt(i).ElementAt(1));
  190. }
  191. }
  192. //删除调查类型
  193. void SatisfactionCfg::OnDelSurveyTypeBtn()
  194. {
  195. CString strSurveyTypeID = _T("");
  196. ((CEdit*)GetDlgItem(IDC_SURVEYTYPEID_EDIT))->GetWindowText(strSurveyTypeID);
  197. if(strSurveyTypeID == _T(""))
  198. {
  199. MessageBox(_T("请选要删除的类型"));
  200. return;
  201. }
  202. int nIdx = -1;
  203. int nCount = m_NameList.GetItemCount() - 1;
  204. while(nCount >= 0)
  205. {
  206. CString strTypeID = m_NameList.GetItemText(nCount, 0);
  207. if(strTypeID == strSurveyTypeID)
  208. {
  209. nIdx = nCount;
  210. break;
  211. }
  212. --nCount;
  213. }
  214. if(nIdx == -1)
  215. return;
  216. if(MessageBox(_T("是否删除"), _T("提示"), MB_YESNO|MB_ICONQUESTION) == IDNO)
  217. return;
  218. CString strID = m_NameList.GetItemText(nIdx, 0);
  219. CString strSql = _T("DELETE FROM SatisfactionSvrKind WHERE SvrKind=") + strID;
  220. g_sendhead.bsql = 1;
  221. g_pMainWnd->ProcessChatMessageRequest2(strSql);
  222. if(g_bSendOK == 0)
  223. return;
  224. ((CEdit*)GetDlgItem(IDC_SURVEYTYPEID_EDIT))->SetWindowText(_T(""));
  225. //更新调查类型
  226. UpdateSurveyType();
  227. }
  228. //添加评分类型
  229. void SatisfactionCfg::OnAddScoreTypeBtn()
  230. {
  231. CString strScoreTypeName = _T("");
  232. ((CEdit*)GetDlgItem(IDC_SCORETYPENAME_EDIT))->GetWindowText(strScoreTypeName);
  233. if(strScoreTypeName == _T(""))
  234. {
  235. MessageBox(_T("请输入评分类型名"));
  236. return;
  237. }
  238. CString strScoreRange1(_T("")), strScoreRange2(_T("")), strScoreRange3(_T("")), strScoreRange4(_T("")), strScoreRange5(_T(""));
  239. ((CEdit*)GetDlgItem(IDC_SCORERANGE1_EDIT))->GetWindowText(strScoreRange1);
  240. ((CEdit*)GetDlgItem(IDC_SCORERANGE2_EDIT))->GetWindowText(strScoreRange2);
  241. ((CEdit*)GetDlgItem(IDC_SCORERANGE3_EDIT))->GetWindowText(strScoreRange3);
  242. ((CEdit*)GetDlgItem(IDC_SCORERANGE4_EDIT))->GetWindowText(strScoreRange4);
  243. ((CEdit*)GetDlgItem(IDC_SCORERANGE5_EDIT))->GetWindowText(strScoreRange5);
  244. //是否存在
  245. BOOL bIsExist = FALSE;
  246. for(int i=0; i<m_ScoreList.GetItemCount(); i++)
  247. {
  248. CString strTypeName = m_ScoreList.GetItemText(i, 1);
  249. if(strTypeName == strScoreTypeName)
  250. {
  251. bIsExist = TRUE;
  252. break;
  253. }
  254. }
  255. if(bIsExist)
  256. return;
  257. CString strSql = _T("INSERT INTO SatisfactionScoreType (TypeName,Section1,Section2,Section3,Section4,Section5) VALUES ('") + strScoreTypeName + _T("',") + strScoreRange1 + _T(",") + strScoreRange2 + _T(",") + strScoreRange3 + _T(",") + strScoreRange4 + _T(",") + strScoreRange5 + _T(")");
  258. g_sendhead.bsql = 1;
  259. g_pMainWnd->ProcessChatMessageRequest2(strSql);
  260. if(g_bSendOK == 0)
  261. return;
  262. //更新评分类型
  263. UpdateScoreType();
  264. }
  265. //更新评分类型
  266. void SatisfactionCfg::UpdateScoreType()
  267. {
  268. //获取分数类型
  269. m_ScoreTypeArr.RemoveAll();
  270. g_sendhead.bsql = 0;
  271. g_sendhead.code[0] = 234;
  272. g_sendhead.tabcount = 1;
  273. CString strfilter = _T("GetScoreType@");
  274. g_pMainWnd->ProcessChatMessageRequest2(strfilter);
  275. if(g_bSendOK == 0)
  276. return;
  277. DataToArray(&m_ScoreTypeArr);
  278. m_ScoreList.DeleteAllItems();
  279. for(int i=0; i<m_ScoreTypeArr.GetSize(); i++)
  280. {
  281. int row = m_ScoreList.InsertItem(i, m_ScoreTypeArr.ElementAt(i).ElementAt(0));
  282. m_ScoreList.SetItemText(row, 1, m_ScoreTypeArr.ElementAt(i).ElementAt(1));
  283. /*
  284. m_ScoreList.SetItemText(row, 2, m_ScoreTypeArr.ElementAt(i).ElementAt(2));
  285. m_ScoreList.SetItemText(row, 3, m_ScoreTypeArr.ElementAt(i).ElementAt(3));
  286. m_ScoreList.SetItemText(row, 4, m_ScoreTypeArr.ElementAt(i).ElementAt(4));
  287. m_ScoreList.SetItemText(row, 5, m_ScoreTypeArr.ElementAt(i).ElementAt(5));
  288. m_ScoreList.SetItemText(row, 6, m_ScoreTypeArr.ElementAt(i).ElementAt(6));
  289. */
  290. }
  291. }
  292. //删除评分类型
  293. void SatisfactionCfg::OnDelScoreTypeBtn()
  294. {
  295. CString strScoreTypeID = _T("");
  296. ((CEdit*)GetDlgItem(IDC_SCORETYPE_EDIT4))->GetWindowText(strScoreTypeID);
  297. if(strScoreTypeID == _T(""))
  298. {
  299. MessageBox(_T("请选择要删除的评分类型"));
  300. return;
  301. }
  302. int nIdx = -1;
  303. int nCount = m_ScoreList.GetItemCount() - 1;
  304. while(nCount >= 0)
  305. {
  306. CString strTypeID = m_ScoreList.GetItemText(nCount, 0);
  307. if(strTypeID == strScoreTypeID)
  308. {
  309. nIdx = nCount;
  310. break;
  311. }
  312. --nCount;
  313. }
  314. if(nIdx == -1)
  315. return;
  316. if(MessageBox(_T("是否删除"), _T("提示"), MB_YESNO|MB_ICONQUESTION) == IDNO)
  317. return;
  318. CString strID = m_ScoreList.GetItemText(nIdx, 0);
  319. CString strSql = _T("DELETE FROM SatisfactionScoreType WHERE TypeID=") + strID;
  320. g_sendhead.bsql = 1;
  321. g_pMainWnd->ProcessChatMessageRequest2(strSql);
  322. if(g_bSendOK == 0)
  323. return;
  324. ((CEdit*)GetDlgItem(IDC_SCORETYPE_EDIT4))->SetWindowText(_T(""));
  325. UpdateScoreType();
  326. }
  327. //添加调查配置
  328. void SatisfactionCfg::OnAddSurveyCfgBtn()
  329. {
  330. CString strKindID = _T("");
  331. ((CEdit*)GetDlgItem(IDC_SURVEYTYPEID_EDIT))->GetWindowText(strKindID);
  332. if(strKindID == _T(""))
  333. {
  334. MessageBox(_T("请选择调查类型"));
  335. return;
  336. }
  337. CString strKindName = _T("");
  338. ((CEdit*)GetDlgItem(IDC_SURVEYTYPE_EDIT2))->GetWindowText(strKindName);
  339. if(strKindName == _T(""))
  340. {
  341. MessageBox(_T("请选择调查类型"));
  342. return;
  343. }
  344. CString strMaxScore = _T("");
  345. ((CEdit*)GetDlgItem(IDC_MAXSCORE_EDIT))->GetWindowText(strMaxScore);
  346. if(strMaxScore == _T(""))
  347. {
  348. MessageBox(_T("请输入最高分数"));
  349. return;
  350. }
  351. CString strScoreTypeID = _T("");
  352. ((CEdit*)GetDlgItem(IDC_SCORETYPE_EDIT4))->GetWindowText(strScoreTypeID);
  353. if(strScoreTypeID == _T(""))
  354. {
  355. MessageBox(_T("请选择评分类型"));
  356. return;
  357. }
  358. CString strSurveyContent = _T("");
  359. ((CEdit*)GetDlgItem(IDC_SURVEYCONTENT_EDIT))->GetWindowText(strSurveyContent);
  360. if(strSurveyContent == _T(""))
  361. {
  362. MessageBox(_T("请输入调查内容"));
  363. return;
  364. }
  365. CString strCheck = _T("");
  366. strCheck.Format(_T("%d"), ((CButton*)GetDlgItem(IDC_ISENABLE_CHECK))->GetCheck());
  367. CString strSql = _T("INSERT INTO SatisfactionCfg VALUES (") + strKindID + _T(",'") + strKindName + _T("',") + strMaxScore + _T(",") + strScoreTypeID + _T(",") + strCheck + _T(",'") + strSurveyContent + _T("')");
  368. g_sendhead.bsql = 1;
  369. g_pMainWnd->ProcessChatMessageRequest2(strSql);
  370. if(g_bSendOK == 0)
  371. return;
  372. UpdateCfg();
  373. }
  374. //编辑
  375. void SatisfactionCfg::OnEditCfgBtn()
  376. {
  377. if(m_strSelCfgID == _T(""))
  378. {
  379. MessageBox(_T("选择错误"));
  380. return;
  381. }
  382. CString strKindID = _T("");
  383. ((CEdit*)GetDlgItem(IDC_SURVEYTYPEID_EDIT))->GetWindowText(strKindID);
  384. CString strKindName = _T("");
  385. ((CEdit*)GetDlgItem(IDC_SURVEYTYPE_EDIT2))->GetWindowText(strKindName);
  386. CString strMaxScore = _T("");
  387. ((CEdit*)GetDlgItem(IDC_MAXSCORE_EDIT))->GetWindowText(strMaxScore);
  388. CString strTypeID = _T("");
  389. ((CEdit*)GetDlgItem(IDC_SCORETYPE_EDIT4))->GetWindowText(strTypeID);
  390. CString strIsEnable = _T("");
  391. strIsEnable.Format(_T("%d"), ((CButton*)GetDlgItem(IDC_ISENABLE_CHECK))->GetCheck());
  392. CString strContent = _T("");
  393. ((CEdit*)GetDlgItem(IDC_SURVEYCONTENT_EDIT))->GetWindowText(strContent);
  394. CString strSql = _T("UPDATE SatisfactionCfg SET SvrKind=") + strKindID + _T(",KindName='") + strKindName + _T("',MaxScore=") + strMaxScore + _T(",TypeID=") + strTypeID;
  395. strSql += _T(",IsEnable=") + strIsEnable + _T(",sfncfgDesc='") + strContent + _T("' where cfgID=") + m_strSelCfgID;
  396. g_sendhead.bsql = 1;
  397. g_pMainWnd->ProcessChatMessageRequest2(strSql);
  398. if(g_bSendOK == 0)
  399. return;
  400. ClearEditData();
  401. UpdateCfg();
  402. MessageBox(_T("编辑成功"));
  403. }
  404. //删除调查配置
  405. void SatisfactionCfg::OnDelSurveyBtn()
  406. {
  407. if(m_strSelCfgID == _T(""))
  408. {
  409. MessageBox(_T("选择错误"));
  410. return;
  411. }
  412. if(MessageBox(_T("是否删除"), _T("提示"), MB_YESNO|MB_ICONQUESTION) == IDNO)
  413. return;
  414. CString strSql = _T("DELETE FROM SatisfactionCfg where cfgID=") + m_strSelCfgID;
  415. g_sendhead.bsql = 1;
  416. g_pMainWnd->ProcessChatMessageRequest2(strSql);
  417. if(g_bSendOK == 0)
  418. return;
  419. ClearEditData();
  420. UpdateCfg();
  421. MessageBox(_T("删除成功"));
  422. }
  423. //更新配置
  424. void SatisfactionCfg::UpdateCfg()
  425. {
  426. //获取配置信息
  427. m_cfgArr.RemoveAll();
  428. g_sendhead.bsql = 0;
  429. g_sendhead.code[0] = 234;
  430. g_sendhead.tabcount = 1;
  431. CString strfilter = _T("SatisfactionCfg@");
  432. g_pMainWnd->ProcessChatMessageRequest2(strfilter);
  433. if (g_bSendOK == 0)
  434. return;
  435. DataToArray(&m_cfgArr);
  436. m_CfgList.DeleteAllItems();
  437. for(int i=0; i<m_cfgArr.GetSize(); i++)
  438. {
  439. int row = m_CfgList.InsertItem(i, m_cfgArr.ElementAt(i).ElementAt(0));
  440. m_CfgList.SetItemText(row, 1, m_cfgArr.ElementAt(i).ElementAt(1));
  441. m_CfgList.SetItemText(row, 2, m_cfgArr.ElementAt(i).ElementAt(2));
  442. m_CfgList.SetItemText(row, 3, m_cfgArr.ElementAt(i).ElementAt(3));
  443. m_CfgList.SetItemText(row, 4, m_cfgArr.ElementAt(i).ElementAt(4));
  444. m_CfgList.SetItemText(row, 5, m_cfgArr.ElementAt(i).ElementAt(5));
  445. m_CfgList.SetItemText(row, 6, m_cfgArr.ElementAt(i).ElementAt(6));
  446. }
  447. }
  448. //清除输入框数据
  449. void SatisfactionCfg::ClearEditData()
  450. {
  451. m_strSelCfgID = _T("");
  452. ((CEdit*)GetDlgItem(IDC_SURVEYTYPEID_EDIT))->SetWindowText(_T(""));
  453. ((CEdit*)GetDlgItem(IDC_SURVEYTYPE_EDIT2))->SetWindowText(_T(""));
  454. ((CEdit*)GetDlgItem(IDC_MAXSCORE_EDIT))->SetWindowText(_T(""));
  455. ((CEdit*)GetDlgItem(IDC_SCORETYPE_EDIT4))->SetWindowText(_T(""));
  456. ((CButton*)GetDlgItem(IDC_ISENABLE_CHECK))->SetCheck(FALSE);
  457. ((CEdit*)GetDlgItem(IDC_SURVEYCONTENT_EDIT))->SetWindowText(_T(""));
  458. }
  459. void SatisfactionCfg::OnNMClickList1(NMHDR *pNMHDR, LRESULT *pResult)
  460. {
  461. LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<LPNMITEMACTIVATE>(pNMHDR);
  462. // TODO: 在此添加控件通知处理程序代码
  463. NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
  464. if(pNMListView->iItem != -1)
  465. {
  466. CString strKindID = m_NameList.GetItemText(pNMListView->iItem, 0);
  467. CString strSurveyTypeName = m_NameList.GetItemText(pNMListView->iItem, 1);
  468. if(strSurveyTypeName == _T(""))
  469. return;
  470. if(strKindID == _T(""))
  471. return;
  472. ((CEdit*)GetDlgItem(IDC_SURVEYTYPEID_EDIT))->SetWindowText(strKindID);
  473. ((CEdit*)GetDlgItem(IDC_SURVEYTYPE_EDIT2))->SetWindowText(strSurveyTypeName);
  474. }
  475. *pResult = 0;
  476. }
  477. void SatisfactionCfg::OnNMClickList2(NMHDR *pNMHDR, LRESULT *pResult)
  478. {
  479. LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<LPNMITEMACTIVATE>(pNMHDR);
  480. // TODO: 在此添加控件通知处理程序代码
  481. NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
  482. if(pNMListView->iItem != -1)
  483. {
  484. CString strScoreTypeID = m_ScoreList.GetItemText(pNMListView->iItem, 0);
  485. if(strScoreTypeID == _T(""))
  486. return;
  487. ((CEdit*)GetDlgItem(IDC_SCORETYPE_EDIT4))->SetWindowText(strScoreTypeID);
  488. }
  489. *pResult = 0;
  490. }
  491. void SatisfactionCfg::OnNMClickList3(NMHDR *pNMHDR, LRESULT *pResult)
  492. {
  493. LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<LPNMITEMACTIVATE>(pNMHDR);
  494. // TODO: 在此添加控件通知处理程序代码
  495. NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
  496. if(pNMListView->iItem != -1)
  497. {
  498. m_strSelCfgID = m_CfgList.GetItemText(pNMListView->iItem, 0);
  499. CString strKindID = m_CfgList.GetItemText(pNMListView->iItem, 1);
  500. CString strKindName = m_CfgList.GetItemText(pNMListView->iItem, 2);
  501. CString strMaxScore = m_CfgList.GetItemText(pNMListView->iItem, 3);
  502. CString strTypeID = m_CfgList.GetItemText(pNMListView->iItem, 4);
  503. BOOL bIsEnable = _ttoi(m_CfgList.GetItemText(pNMListView->iItem, 5));
  504. CString strContent = m_CfgList.GetItemText(pNMListView->iItem, 6);
  505. ((CEdit*)GetDlgItem(IDC_SURVEYTYPEID_EDIT))->SetWindowText(strKindID);
  506. ((CEdit*)GetDlgItem(IDC_SURVEYTYPE_EDIT2))->SetWindowText(strKindName);
  507. ((CEdit*)GetDlgItem(IDC_MAXSCORE_EDIT))->SetWindowText(strMaxScore);
  508. ((CEdit*)GetDlgItem(IDC_SCORETYPE_EDIT4))->SetWindowText(strTypeID);
  509. ((CButton*)GetDlgItem(IDC_ISENABLE_CHECK))->SetCheck(bIsEnable);
  510. ((CEdit*)GetDlgItem(IDC_SURVEYCONTENT_EDIT))->SetWindowText(strContent);
  511. }
  512. *pResult = 0;
  513. }