using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Reflection; using System.Web; using System.Web.Script.Services; using System.Web.Services; using Tools; using Webservice; using WebService.Model; namespace WebService { /// /// MistakeWebService 的摘要说明 /// [WebService(Namespace = "http://tempuri.org/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] [System.ComponentModel.ToolboxItem(false)] // 若要允许使用 ASP.NET AJAX 从脚本中调用此 Web 服务,请取消注释以下行。 // [System.Web.Script.Services.ScriptService] public class MistakeWebService : System.Web.Services.WebService { [WebMethod] public string HelloWorld() { return "Hello World"; } [WebMethod] [ScriptMethod(UseHttpGet = true, ResponseFormat = ResponseFormat.Json)] public void CheckPaint(string app_id, string DeviceNo, string PartNo, string sign) { string errorReason = ""; JsonModel model = new JsonModel(); model.Result = "0"; model.ResultType = "Result"; model.ResultRowsCount = "0"; model.ErrReason = errorReason; model.DataList = null; #region 参数判断 if (string.IsNullOrWhiteSpace(app_id)) { model.ErrReason = "缺少必要传入参数 app_id"; Context.Response.Write(JSONTools.ScriptSerialize>(model)); return; } if (string.IsNullOrWhiteSpace(DeviceNo)) { model.ErrReason = "缺少必要传入参数 DeviceNo"; Context.Response.Write(JSONTools.ScriptSerialize>(model)); return; } if (string.IsNullOrWhiteSpace(PartNo)) { model.ErrReason = "缺少必要传入参数 DeviceNo"; Context.Response.Write(JSONTools.ScriptSerialize>(model)); return; } if (string.IsNullOrWhiteSpace(sign)) { model.ErrReason = "缺少必要传入参数 sign"; Context.Response.Write(JSONTools.ScriptSerialize>(model)); return; } bool access = Function.AppIDIsRight(app_id.Trim()); if (!access) { model.ErrReason = "APP接口调用标识不正确 远程服务器拒绝了此次连接请求"; Context.Response.Write(JSONTools.ScriptSerialize>(model)); return; } string[] param = { Function.app_secret.Trim(), DeviceNo.Trim(), PartNo.Trim() }; bool paramIsRight = Function.signIsRight(param, sign); if (!paramIsRight) { model.ErrReason = "sign参数传输错误 远程服务器拒绝了此次连接请求"; Context.Response.Write(JSONTools.ScriptSerialize>(model)); return; } #endregion DataTable dt = Function.IsMatchDeviceAndPart(DeviceNo, PartNo, out errorReason); if (dt != null && dt.Rows.Count > 0) { model.Result = "1"; } else { model.Result = "0"; } model.ErrReason = errorReason; model.ResultRowsCount = dt.Rows.Count.ToString(); model.DataList = null; LogHelper.WriteSysLogBase("【加漆防错-油漆和油漆桶匹配】入参:DeviceNo:" + DeviceNo + ",PartNo:" + PartNo + ",出参:" + JSONTools.ScriptSerialize>(model), MethodBase.GetCurrentMethod().Name); Context.Response.Write(JSONTools.ScriptSerialize>(model)); } } }