LiFan
2025-05-12 63eebabbfee1bc84850b36967ecac5116a28b73f
jrj/project/business/BasicCode/AddUomGroup.cpp
@@ -1,122 +1,119 @@
use "win.vl"
use "treeview.vm"
use "dev:vm[xdwgrid.vm]"
use "dev:vm[xdwtable.vm]"
use "pref.vl"
use "dev:vm[xml.vm]"
use "dev:vm[xaserverarg.vm]"
use "dev:vm[xaserver.vm]"
use "dev:vm[xutil.vm]"
use "dev:vm[control.vm]"
#include <wobject/xstring.hpp>
#include <xcontrol/xtreeview.hpp>
#include <xcontrol/xdwgrid.hpp>
#include <wobject/xdouble.hpp>
#include <xcontrol/xlayersheet.hpp>
unit vbusiness.xpage
[
   AddUomGroup is extend win__;
   about AddUomGroup
   [
      control:
#include "vbusiness/vframe/listwin.vframe.vbusiness.hpp"
#include "viewobject/view.base.hpp"
using xml = KXMLDOMDocument;
class __declspec(dllexport) AddUomGroup : public xwin
{
public:
   AddUomGroup(void* implPtr, HWND hWnd) :xwin(implPtr, hWnd) {}
public:
   static AddUomGroup* CreateInstance(void* implPtr, void* hWnd)
   {
      AddUomGroup* pWin = new AddUomGroup(implPtr, (HWND)hWnd);
      return pWin;
   }
   int SetAgent()
   {
      return 1;
   }
   //焦点激活处理函数
   int OnSetFocus(TEvent* evt, LPARAM p)
   {
      int SetAgent();
      //重置工具条
      return 1;
   }
   //命令发布函数
   int OnCmdDispatch(xstring comdid)
   {
      if (comdid == L"cb_cancel")
         CloseWindow();
      else if (comdid == L"cb_ok")
      {
         xcontrol xc = GetControl(L"Txt");
         xstring name = xc.GetText();
         xaserverarg arg;
         arg = GetArg();
         arg.AddArg(L"GroupName", name);
         arg.AddArg(L"return", L"ok");
         CloseWindow();
      }
      return 0;
   }
   //命令处理事件
   int OnXCommand(TEvent* evt, LPARAM param)
   {
      return OnCmdDispatch(evt->xcommand.pStrID);
   }
   int OnAttachEvent()
   {
      //绑定工具条点击事件
      AttachEvent(L"WM_XCOMMAND", (FEvent)&AddUomGroup::OnXCommand);
      //获取焦点事件,用于重置工具条
      AttachEvent(L"WM_SETFOCUS", (FEvent)&AddUomGroup::OnSetFocus);
      return 1;
   }
   int OnInitial()
   {
      SetAgent();
      OnAttachEvent();
      return 1;
   }
   int onload()
   {
      SetArg();
      OnInitial();
      
      method:
      [
         int SetAgent()
         if (GetWinParam())
         {
            return 1;
         }
         //焦点激活处理函数
         int OnSetFocus(ref TEvent evt,int p)
         {
            int SetAgent();
            xaserverarg arg;
            //重置工具条
            return 1;
         }
         //命令发布函数
         int OnCmdDispatch(string comdid)
         {
            if (comdid=="cb_cancel")
               CloseWindow();
            else if(comdid=="cb_ok")
            arg = GetArg();
            xstring note = arg.GetArgString(L"note");
            if (note == L"修改")
            {
               control__ xc = new control__;
               xc.setNativePointer(this.GetControl("Txt"));
               string name = xc.GetText();
               xaserverarg__ arg=new xaserverarg__;
               arg.setNativePointer(arg.CreateInstance());
               arg = GetParam();
               arg.AddArg("GroupName",name);
               arg.AddArg("return","ok");
               CloseWindow();
               xstring name = arg.GetArgString(L"GroupName");
               xcontrol xc = GetControl(L"Txt");
               xc.SetText(name);
            }
            return 0;
         }
         //命令处理事件
         int OnXCommand(ref TXCommandEvent evt,int p)
         {
            return OnCmdDispatch(evt.pStrID);
         }
         int OnAttachEvent()
         {
            //绑定工具条点击事件
            AttachEvent("WM_XCOMMAND",OnXCommand);
            //获取焦点事件,用于重置工具条
            AttachEvent("WM_SETFOCUS",OnSetFocus);
         }
         int OnInitial()
         {
            SetAgent();
            OnAttachEvent();
            return 1;
         }
         int onload()
         {
            OnInitial();
            if(this.GetParam())
            xstring id = arg.GetArgString(L"m_id");
            if (id == L"FND_UOM")
            {
               if (GetParam())
               {
                  xaserverarg__ arg=new xaserverarg__;
                  arg.setNativePointer(arg.CreateInstance());
                  arg = GetParam();
                  string note = arg.GetArgString("note");
                  if(note=="修改")
                  {
                     string name = arg.GetArgString("GroupName");
                     control__ xc = new control__;
                     xc.setNativePointer(GetControl("Txt"));
                     xc.SetText(name);
                  }
                  string id = arg.GetArgString("m_id");
                  if(id =="FND_UOM")
                  {
                     win__::SetWindowText(this.GetHWND(),"计量单位");
                  }
                  else if(id =="FND_CustomerSource")
                  {
                     win__::SetWindowText(this.GetHWND(),"客户来源");
                  }
                  else if(id =="FND_AuxiliaryAttribute")
                  {
                     win__::SetWindowText(this.GetHWND(),"辅助属性");
                  }
               }
               SetWindowText(GetHWND(), L"计量单位");
            }
            return 1;
            else if (id == L"FND_CustomerSource")
            {
               SetWindowText(GetHWND(), L"客户来源");
            }
            else if (id == L"FND_AuxiliaryAttribute")
            {
               SetWindowText(GetHWND(), L"辅助属性");
            }
         }
      ]
      
   ]
]
      return 1;
   }
};