LiFan
2024-07-10 2a1d4fcebeca6c3b7f8af0c13463486fb30a78e1
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
use "xcontrol.vframe.vbusiness.vd"
use "xbase.vframe.vbusiness.vd"
use "multi.vbind.vbind.wface.vd"
use "productlibrary.vd"
use "shoppingcart.vd"
 
unit trade
[
    class ViewPictures : public frame
    {
        msxml::IXMLDOMElement imageElement;
        string m_customer;
 
        int OnCmdDispatch(string comdid)
        {
            if (comdid == "xmClose")
            {
                CloseWindow();
                return 1;
            }
            return 0;
        }
 
        int OnXCommand(ref TXCommandEvent evt, int p)
        {
            return OnCmdDispatch(evt.pStrID);
        }
 
        int OnAttachEvent()
        {
            AttachEvent("WM_XCOMMAND", OnXCommand);
            return 1;
        }
 
        int OnShowImage(string skuid)
        {
            imageview im = GetControl("im1");
            //im.RemoveImage();
            im.ResetEx();
 
            xml xp = new xml;
            xp.setNativePointer(xml::CreateInstance());
            xaserverarg arg_pic = new xaserverarg;
            arg_pic.setNativePointer(arg_pic.CreateInstance());
            arg_pic.AddArg("SKUID", skuid);
            if (url::get("/sale/data/ProductLibrary3/pref/picture/imagelistSKU", arg_pic.GetString(), xp) != 1)
            {
                trace("xxx", xp.GetXml());
            }
            else
            {
 
                trace(skuid + "===== " + xp.GetXml());
                imageElement = xp.GetXmlDoc().documentElement;
                msxml::IXMLDOMNodeList  nlistp = xp.GetXmlDoc().selectNodes("ImageList/image");
                int lenp = nlistp.length;
                for (int ip = 0; ip < lenp; ip++)
                {
                    msxml::IXMLDOMElement xitem = nlistp.item(ip);
                    string picname = xitem.selectSingleNode("PicPath").text;
                    string goodno = xitem.selectSingleNode("GoodsNo").text;
                    if (picname == "/business/products/Thumbs//")
                        picname = "/business/products/Thumbs/00/00000000-0000-0000-0000-000000000000.jpg";
                    im.AddImages(picname, "");
                }
                im.Redraw();
                //win32::SendMessage(im.GetId(),0x000f,0,1);
                //win32::InvalidateRect(im.GetId(),cast(0 as ref xrect),true);
            }
            return 1;
        }
 
        int onload()
        {
            OnAttachEvent();
            xaserverarg arg = new xaserverarg;
            arg.setNativePointer(arg.CreateInstance());
            int p = GetParam();
            arg.setNativePointer(p);
            string skuid = arg.GetArgString("guid");
            string customerItemNo = arg.GetArgString("CustomerItemNo");
            OnShowImage(skuid);
            return 1;
        }
    };
]