void CDlgStructTreePropFlow::OnBnClickedStpfOk() { CDlgSvg * pSvg = GetSvgDilogPtr(); if ( pSvg == NULL ) { EndDialog(FALSE); return; } if(true) {//加入检测机制 bool b; b = CheckEdit(m_wndAuthor, STRATEGY_DEFAULT, "作者"); if(b == false) {//检测失败直接返回 return; } b = CheckEdit(m_wndCreated, STRATEGY_DEFAULT, "日期"); if(b == false) {//检测失败直接返回 return; } b = CheckEdit(m_wndDescrp, STRATEGY_DEFAULT, "描述", 200); if(b == false) {//检测失败直接返回 return; } b = CheckEdit(m_wndName, STRATEGY_NODE, "名称"); if(b == false) {//检测失败直接返回 return; } b = CheckEdit(m_wndVersion, STRATEGY_DEFAULT, "版本"); if(b == false) {//检测失败直接返回 return; } } BOOL bModified = FALSE; CString str; CCxStructTreeNodeFlow * pTempNode = new CCxStructTreeNodeFlow( NULL ); pTempNode->m_strID = m_pNode->m_strID; m_wndAuthor.GetWindowText(pTempNode->m_strAuthor); if ( m_pNode->m_strAuthor != pTempNode->m_strAuthor ) { bModified = TRUE; } m_wndCreated.GetWindowText(pTempNode->m_strCreated); if ( m_pNode->m_strCreated != pTempNode->m_strCreated ) { bModified = TRUE; } m_wndDescrp.GetWindowText(pTempNode->m_strDescription); if ( m_pNode->m_strDescription != pTempNode->m_strDescription ) { bModified = TRUE; } m_wndName.GetWindowText(pTempNode->m_strOriName); pTempNode->m_strText = pTempNode->m_strOriName; if ( m_pNode->m_strText != pTempNode->m_strText ) { bModified = TRUE; } m_wndVersion.GetWindowText(pTempNode->m_strVersion); if ( m_pNode->m_strVersion != pTempNode->m_strVersion ) { bModified = TRUE; } if ( !bModified ) { delete pTempNode; pTempNode = NULL; EndDialog(FALSE); return; } CWebMethodParamData * pParam = NULL; CWebMethodData wmd; // wmd.m_sMethodName = "propUpdate"; //第1个参数 pParam = new CWebMethodParamData(); pParam->m_sName = "jsonData"; pParam->m_sValue = pTempNode->GetUpdatePropJsonStr(); wmd.m_vParams.push_back(pParam); // if ( !pSvg->InvokeJsMethod( &wmd ) ) { MessageBox("修改属性失败。请确保svg功能正常。", g_lpszAppTitle, MB_OK|MB_ICONERROR ); delete pTempNode; pTempNode = NULL; EndDialog(FALSE); return; } if ( wmd.m_sResult.IsEmpty() ) { m_pNode->m_strAuthor = pTempNode->m_strAuthor; m_pNode->m_strCreated = pTempNode->m_strCreated; m_pNode->m_strDescription = pTempNode->m_strDescription; m_pNode->m_strText = pTempNode->m_strText; m_pNode->m_strOriName = pTempNode->m_strOriName; m_pNode->m_strVersion = pTempNode->m_strVersion; delete pTempNode; pTempNode = NULL; EndDialog( TRUE ); return; } else { vector< CString > vErrFlag; CString2Vector( vErrFlag, wmd.m_sResult ); for (int i=0; i<(int)vErrFlag.size(); i++) { if ( vErrFlag[i] == "same_name" ) { MessageBox("名称必须确保唯一", g_lpszAppTitle, MB_OK|MB_ICONINFORMATION ); m_wndName.SetSel(0, -1); m_wndName.SetFocus(); break; } } delete pTempNode; pTempNode = NULL; } }
void __fastcall TSmallTypeForm::btnokClick(TObject *Sender) { if (!dm1->ConnectDB()) return; switch(btnidx) { case 0://do add if (!CheckEdit()) break; if (!CheckCode()) break; strsql =AnsiString("select st_code from dicsmalltype where st_code='") +edtcode->Text+"'"; if (DoQuery(dm1->Query1,strsql)) { if (!dm1->Query1->IsEmpty()) { ErrorDlg("输入了重复的代码!"); break; } } else { SetButton(1,1,1,1,0,0,1,1); break; } strsql =AnsiString("insert into dicsmalltype values('")+edtcode->Text+"','" +edtname->Text+"')"; if (DoQuery(dm1->Query1,strsql,1)) { btnref->Click(); ClearEdit(); edtcode->SetFocus(); } break; case 1: LocateRow(); break; case 2://do modify if (ListView1->SelCount==0) { InfoDlg("请先在列表中选择要修改的项次!"); break; } if (!CheckEdit()) break; if (!CheckCode()) break; strsql =AnsiString("update dicsmalltype set st_name='") +edtname->Text+"' where st_code='" +ListView1->Selected->SubItems->Strings[0]+"'"; if (DoQuery(dm1->Query1,strsql,1)) { btnref->Click(); ClearEdit(); InfoDlg("修改完成!"); } else SetButton(1,1,1,1,0,0,1,1); break; case 3://do delete if (ListView1->SelCount==0) { InfoDlg("请先在列表中选择要删除的项次!"); break; } if (AskDlg("确实要删除该项次吗?")==IDNO) break; strsql =AnsiString("delete dicsmalltype where st_code='") +ListView1->Selected->SubItems->Strings[0]+"'"; if (DoQuery(dm1->Query1,strsql,1)) { ClearEdit(); btnref->Click(); InfoDlg("删除完成!"); } else SetButton(1,1,1,1,0,0,1,1); break; } dm1->db1->Connected=false; }