Exemple #1
0
        private void ddl_className_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (ddl_className.SelectedIndex < 0)
            {
                return;
            }

            Type   cls = JdUnion_GlbObject.AllModuleClass[ddl_className.Text];
            object obj = Activator.CreateInstance(cls);                   // as;
            JdUnion_Bussiness_Class jdy = obj as JdUnion_Bussiness_Class; // as

            //JDYSCM_Class jdy = jdy_GlbObject.AllModuleClass[ddl_className.SelectedValue.ToString()];
            if (jdy == null)
            {
                return;
            }
            JdUnion_ModuleClass jm = JdUnion_GlbObject.modules.Modules.FindLast(a => a.ClassName == ddl_className.Text);

            if (jm == null)
            {
                return;
            }
            jdy.InitClass(jm);
            if (jdy.defaultRequestJson != null)
            {
                this.txt_PostData.Text = jdy.defaultRequestJson;
            }
            this.ddl_className.Tag = jdy;
            return;

            jdy.InitClass(JdUnion_GlbObject.mlist[ddl_className.Text]);
            ////jdy.app_key = this.txt_app_key.Text.Trim();
            ////jdy.app_secret = this.txt_app_secret.Text.Trim();
            ////jdy.access_token = this.txt_access_token.Text.Trim();
            if (this.txt_params_1_val.Text.Trim().Length > 0)
            {
                jdy.params_360buy.Add(this.txt_params_1_key.Text.Trim(), this.txt_params_1_val.Text.Trim());
            }
            if (this.txt_params_2_val.Text.Trim().Length > 0)
            {
                jdy.params_360buy.Add(this.txt_params_2_key.Text.Trim(), this.txt_params_2_val.Text.Trim());
            }
            if (this.txt_params_3_val.Text.Trim().Length > 0)
            {
                jdy.params_360buy.Add(this.txt_params_3_key.Text.Trim(), this.txt_params_3_val.Text.Trim());
            }
            jdy.InitRequestJson();
            if (jdy is JdUnion_Bussiness_List_Class)
            {
                ////(jdy as JdUnion_Bussiness_List_Class).filter = new JdUnion_Bussiness_List_Class.JdUnion_Bussiness_Filter_Class();
                ////(jdy as JdUnion_Bussiness_List_Class).filter.pageSize = int.Parse(txt_PageSize.Text);
                ////(jdy as JdUnion_Bussiness_List_Class).filter.pageIndex = int.Parse(txt_PageNo.Text);
                ////jdy.Req_PostData = "{\"filter\":" + (jdy as JdUnion_Bussiness_List_Class).filter.ToJson().Replace("null", "\"\"") + "}";
            }
            this.txt_url.Text      = jdy.getUrl();
            this.txt_PostData.Text = jdy.Req_PostData;
        }
Exemple #2
0
        public bool getXmlData(ref XmlDocument retdoc, ref XmlDocument xmlschemaDoc, ref string msg, bool onlyFirstPage = true, bool onlyOrgData = false)
        {
            JdUnion_Bussiness_Class jdyreq = this;
            string      strDefaultName     = "DataTable1";
            string      strRootName        = "NewDataSet";
            string      ret = null;
            XmlDocument doc = new XmlDocument();

            if (xmlschemaDoc == null)
            {
                xmlschemaDoc = new XmlDocument();
            }
            msg = null;
            try
            {
                //jdyreq.InitClass(jdyreq.Module);
                jdyreq.sign = null;
                if (jdyreq is JdUnion_Bussiness_List_Class)
                {
                    (jdyreq as JdUnion_Bussiness_List_Class).RequestSizeAndPage((jdyreq as JdUnion_Bussiness_List_Class).pager.pageSize, 1, null);
                }
                jdyreq.InitRequestJson();
                ret          = jdyreq.GetRequest();
                xmlschemaDoc = jdyreq.getRequestSchema();
                XmlSchemaClass xmlSchema = new XmlSchemaClass(xmlschemaDoc);
                //string strXml = XML_JSON.Json2XML(ret);
                XmlDocument tmp = jdyreq.getRealXml(ret, out msg);
                if (msg != null)
                {
                    return(false);
                }
                doc.LoadXml(tmp.OuterXml);
                if (onlyOrgData)
                {
                    if (retdoc == null)
                    {
                        retdoc = new XmlDocument();
                    }
                    retdoc.LoadXml(tmp.OuterXml);
                    return(true);
                }
                if (jdyreq is JdUnion_Bussiness_List_Class)
                {
                    if (onlyFirstPage)
                    {
                        return(getXmlDataSet(doc, xmlSchema, ref retdoc, ref msg));
                        //return true;
                    }
                    //return true;
                }
                else
                {
                    return(getXmlDataSet(doc, xmlSchema, ref retdoc, ref msg));
                }


                int?totalCount = XmlNodeIntVal(doc, xmlSchema.rootNodePath, xmlSchema.totalCountItemName); //, //int.Parse(XmlUtil.GetSubNodeText(tmp, xmlSchema.pageCountItemName));
                int?totalsize  = XmlNodeIntVal(doc, xmlSchema.rootNodePath, xmlSchema.pageSizeItemName);
                if (totalsize == null)
                {
                    totalsize = (this as JdUnion_Bussiness_List_Class).pager.pageSize;//按实际返回的数量计算页大小
                }
                int totalPage = (totalCount.Value / totalsize.Value) + ((totalCount.Value % totalsize.Value) == 0 ? 0 : 1);
                if (totalPage > 1)//如果不止一页
                {
                    XmlNode rootnode = doc.SelectSingleNode(xmlSchema.rootNodePath);
                    for (int i = 2; i <= totalPage; i++)
                    {
                        (jdyreq as JdUnion_Bussiness_List_Class).RequestSizeAndPage((this as JdUnion_Bussiness_List_Class).pager.pageSize, i, null);
                        jdyreq.sign = null;//必须重置
                        jdyreq.InitRequestJson();
                        ret = jdyreq.GetRequest();

                        XmlDocument ntmp = jdyreq.getRealXml(ret, out msg);
                        if (msg != null)
                        {
                            continue;
                            //return false;
                        }
                        string xpath = string.Format("{0}/{1}", xmlSchema.rootNodePath, xmlSchema.dataItemName);
                        foreach (XmlNode node in ntmp.SelectNodes(xpath))//子节点全部加入根结点
                        {
                            rootnode.AppendChild(doc.ImportNode(node, true));
                        }
                    }
                }
                return(getXmlDataSet(doc, xmlSchema, ref retdoc, ref msg));
            }
            catch (Exception e)
            {
                msg = e.Message;
                return(false);
            }
            //return true;
        }