Ejemplo n.º 1
0
        /// <summary>
        /// 装车验证
        /// </summary>
        /// <param name="ID">明细ID</param>
        /// <param name="errMsg">错误人yth</param>
        /// <returns></returns>
        public bool Verify(string ID, out string errMsg)
        {
            errMsg = string.Empty;

            //传递参数:操作员及当前操作时间
            lbParameter[] parms =
            {
                new lbParameter()
                {
                    name = "cUser1", value = BLL.Common.Instance.UserInfo.name
                },
                new lbParameter()
                {
                    name = "dDate1", value = DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")
                }
            };
            bizProcessResult bpResult = Common.Instance.execBizProcess("ERP_MM_Order0_tDetail_M8", ID, parms, null);

            //bizProcessResult bpResult = Soap.Instance.execBizProcess("ERP_MM_Order0_tDetail_M8", ID, parms, null,out errMsg);
            if (bpResult.result <= 0)
            {
                errMsg = bpResult.message;
                return(false);
            }
            return(true);
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 用户登录
        /// </summary>
        /// <param name="userId"></param>
        /// <param name="password"></param>
        /// <param name="errMsg"></param>
        /// <returns></returns>
        public bool Login(string userId, string password, out string errMsg)
        {
            errMsg = string.Empty;

            //登录前初始化用户信息
            userInfo = new userInfo();

            bool flag = false;

            flag = adminLogin(out errMsg);
            if (!flag)
            {
                return(flag);
            }
            //参数数组
            lbParameter[] parms =
            {
                new lbParameter()
                {
                    name = "userid", value = userId
                },
                new lbParameter()
                {
                    name = "password", value = password
                }
            };
            //判断用户名及密码是否正确 1 代表成功,2代表失败
            bizProcessResult result = execBizProcess("tUser_M2", "", parms, null);

            //bizProcessResult result = Soap.Instance.execBizProcess("tUser_M2", "", parms, null, out errMsg);

            if (result.result == 1) //(result.result > 0)
            {
                return(GetUserInfo(userId, out errMsg));
            }
            else
            {
                errMsg = result.message;
                return(false);
            }
        }
Ejemplo n.º 3
0
        /// <summary>
        /// 执行对象流程
        /// </summary>
        /// <param name="serviceURL"></param>
        /// <param name="sessionId"></param>
        /// <param name="bizProcessName"></param>
        /// <param name="id"></param>
        /// <param name="parms"></param>
        /// <param name="variables"></param>
        /// <returns></returns>
        public bizProcessResult execBizProcess(string bizProcessName, string id, lbParameter[] parms, lbParameter[] variables, out string errMsg)
        {
            errMsg = string.Empty;
            bizProcessResult result = null;

            //根据URL创建请求对象
            HttpWebRequest webRequest = (HttpWebRequest)HttpWebRequest.Create(serviceURL);

            webRequest.Method      = "POST";
            webRequest.ContentType = "text/xml;charset=\"utf-8\"";

            ////报文格式
            ///*
            //<q0:execBizProcess>
            //    <sessionId>$sessionId</sessionId>
            //    <bizProcessName>$bizProcessName</bizProcessName>
            //    <id>$id</id>
            //    <params>$params</params>
            //    <variables>$variables</variables>
            //</q0:execBizProcess>
            // *
            // * *

            StringBuilder soap = new StringBuilder();

            soap.Append("<?xml version=\"1.0\" encoding=\"utf-8\"?>");
            soap.Append("<soapenv:Envelope xmlns:q0=\"http://ws.livebos.apex.com/\" xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\">");
            soap.Append("<soapenv:Header>");
            soap.Append("</soapenv:Header>");
            soap.Append("<soapenv:Body>");
            soap.Append("<q0:execBizProcess>");
            soap.Append("<sessionId>{0}</sessionId>");
            soap.Append("<bizProcessName>{1}</bizProcessName>");
            soap.Append("<id>{2}</id>");
            soap.Append("{3}");
            soap.Append("{4}");
            soap.Append("</q0:execBizProcess>");
            soap.Append("</soapenv:Body>  ");
            soap.Append("</soapenv:Envelope>");

            string strparms     = GetSoapArrayString(Serialize(parms), "lbParameter", "params");
            string strvariables = GetSoapArrayString(Serialize(variables), "lbParameter", "variables");

            //转换成字节数组
            byte[] bytes = Encoding.UTF8.GetBytes(string.Format(soap.ToString(), Common.Instance.SessionId, bizProcessName, id, strparms, strvariables));
            webRequest.ContentLength = bytes.Length;
            Stream stream = webRequest.GetRequestStream();

            stream.Write(bytes, 0, bytes.Length);
            stream.Flush();
            stream.Close();

            try
            {
                HttpWebResponse webResponse = webRequest.GetResponse() as HttpWebResponse;
                if (webResponse.StatusCode == HttpStatusCode.OK)
                {
                    //获取返回结果流
                    Stream       tempStraem = webResponse.GetResponseStream();
                    StreamReader sr         = new StreamReader(tempStraem, Encoding.UTF8);
                    //获取结果
                    string res = sr.ReadToEnd();
                    sr.Close();         //关闭读取器
                    tempStraem.Close(); //关闭流

                    //把结果先转换为xml文件 查询<LbeResult>节点,然后把它该节点再转换为类对象
                    XmlDocument xmlDoc = new XmlDocument();
                    xmlDoc.LoadXml(res);
                    XmlNode node = xmlDoc.SelectSingleNode("//BizProcessResult");
                    res = node.OuterXml.Replace("BizProcessResult", "bizProcessResult");

                    //把xml转换成lbeResult对象
                    result = Deserialize(res, typeof(bizProcessResult)) as bizProcessResult;
                }
            }
            catch (WebException ex)
            {
                HttpWebResponse response = ex.Response as HttpWebResponse;
                StreamReader    sr       = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
                //获取结果
                errMsg = sr.ReadToEnd();
            }

            return(result);
        }