<%@ WebHandler Language="C#" Class="GetCheckBarcode" %> using System; using System.IO; using System.Collections.Generic; using System.Web; using System.Web.SessionState; using System.Configuration; using System.Data; using Newtonsoft.Json; using Newtonsoft.Json.Linq; using Curtain.DataAccess; using Curtain.Log; using DK.XuWei.WebMes; using System.Linq; public class GetCheckBarcode : IHttpHandler { public void ProcessRequest(HttpContext context) { context.Response.ContentType = "text/plain"; #region 获取切换栏 if (context.Request["m"].ToString() == "getli") { using (IDataAccess conn = DataAccess.Create()) { string sqlStr = "SELECT ITEMSYTPE FROM TP_PM_FIRSTREGISTERITEMS GROUP BY ITEMSYTPE"; DataTable bt = conn.ExecuteDatatable(sqlStr); List result = new List(); for (int i = 0; i < bt.Rows.Count; i++) { result.Add(bt.Rows[i]["ITEMSYTPE"].ToString()); } context.Response.Write(JsonConvert.SerializeObject(result, Formatting.Indented)); } } #endregion #region if (context.Request["m"].ToString() == "gettable") { using (IDataAccess conn = DataAccess.Create()) {//获取前端传递的表单 var formData = context.Request.Form; string sqlStr = "SELECT ITEMSID, ITEMSNAME,ITEMSINFO FROM TP_PM_FIRSTREGISTERITEMS WHERE ITEMSYTPE='" + formData["ITEMSYTPE"].ToString() + "' ORDER BY ITEMSID"; DataTable bt = conn.ExecuteDatatable(sqlStr); List> result = new List>(); for (int i = 0; i < bt.Rows.Count; i++) { Dictionary content = new Dictionary(); content.Add("ITEMSID", bt.Rows[i]["ITEMSID"].ToString()); content.Add("ITEMSNAME", bt.Rows[i]["ITEMSNAME"].ToString()); content.Add("ITEMSINFO", bt.Rows[i]["ITEMSINFO"].ToString()); result.Add(content); } context.Response.Write(JsonConvert.SerializeObject(result, Formatting.Indented)); } } #endregion #region 根据barcode获取产品ID产品名称 if (context.Request["m"].ToString() == "checkbarcode") { //获取前端传递的表单 var formData = context.Request.Form; if (formData["BARCODE"].ToString() != null) { using (IDataAccess conn = DataAccess.Create()) { string sqlStr = @"SELECT GR.BARCODE,GO.GOODSID,GO.GOODSNAME,GR.LOGOID FROM TP_PM_GROUTINGDAILYDETAIL GR LEFT JOIN TP_MST_GOODS GO ON GR.GOODSID=GO.GOODSID WHERE GO.VALUEFLAG=1 AND GR.VALUEFLAG=1 AND GR.BARCODE='" + formData["BARCODE"].ToString() + "'"; DataTable dt = conn.ExecuteDatatable(sqlStr); context.Response.Write(JsonConvert.SerializeObject(dt, Formatting.Indented)); } } } #endregion //获取产品型号 if (context.Request["m"].ToString() == "getfirstregister") { //获取前端传递的表单 var formData = context.Request.Form; using (IDataAccess conn = DataAccess.Create()) { if (formData["GOODSID"].ToString() != null && formData["GOODSNAME"].ToString() != null) { string sqlStr = "SELECT F.*,D.DICTIONARYVALUE AS 产品类型 ,E.DICTIONARYVALUE AS 检验依据 " + "FROM TP_PM_FIRSTREGISTER F " + "LEFT JOIN TP_MST_DATADICTIONARY D ON F.FIRGOODSTYPE=D.DICTIONARYID " + "LEFT JOIN TP_MST_DATADICTIONARY E ON F.FIRBASIS=E.DICTIONARYID " + "WHERE F.STATUS IN(0,1) AND F.VALUEFLAG = 1 AND F.GOODSID=" + formData["GOODSID"].ToString() + " AND F.LOGOID=" + formData["LOGOID"].ToString(); DataTable bt = conn.ExecuteDatatable(sqlStr); List> result = new List>(); for (int i = 0; i < bt.Rows.Count; i++) { Dictionary content = new Dictionary(); //总单id content.Add("REGISTERID", bt.Rows[i]["REGISTERID"].ToString()); //首件登记单号 content.Add("REGISTERNO", bt.Rows[i]["REGISTERNO"].ToString()); //LOGOID content.Add("LOGOID", formData["LOGOID"].ToString()); //GOODSID content.Add("GOODSID", bt.Rows[i]["GOODSID"].ToString()); //生产车间 content.Add("WORKSHOP", bt.Rows[i]["WORKSHOP"].ToString()); //产品名称 content.Add("GOODSNAME", formData["GOODSNAME"].ToString()); //产品型号 content.Add("GOODSCODE", bt.Rows[i]["GOODSCODE"].ToString()); //日期 content.Add("DATA", DateTime.Parse(bt.Rows[i]["ACCOUNTDATE"].ToString()).ToString("yyyy-MM-dd")); //产品类型 content.Add("产品类型", bt.Rows[i]["产品类型"].ToString()); //产品物料编码 content.Add("MATERIALCODE", bt.Rows[i]["MATERIALCODE"].ToString()); //首件数量 content.Add("FIRQUANTITY", bt.Rows[i]["FIRQUANTITY"].ToString()); //检验依据 content.Add("检验依据", bt.Rows[i]["检验依据"].ToString()); result.Add(content); } context.Response.Write(JsonConvert.SerializeObject(result, Formatting.Indented)); } } } //上传图片 if (context.Request["m"].ToString() == "image") { if (context.Request.Files.Count > 0) { // 获取上传的文件 HttpPostedFile file = context.Request.Files[0]; // 检查文件是否有效 if (file != null && file.ContentLength > 0) { // 读取文件内容(作为字节数组) byte[] fileBytes = new byte[file.ContentLength]; file.InputStream.Read(fileBytes, 0, file.ContentLength); // 获取其他表单字段 string registerId = context.Request.Form["REGISTERID"]; string type = context.Request.Form["TYPE"]; string field = ""; if (type != null) { field = GetFieldByType(int.Parse(type)); //field = int.Parse(type) == 1 ? "PGSIGNATURE" : int.Parse(type) == 2 ? "CJSIGNATURE" : "SKSIGNATURE"; } string sql = "UPDATE TP_PM_FIRSTREGISTER SET " + field + " =@fileBytes@ WHERE REGISTERID=" + registerId; CDAParameter parameter = new CDAParameter("fileBytes", fileBytes, DataType.Binary); int rsult = 0; using (IDataAccess conn = DataAccess.Create()) { rsult = conn.ExecuteNonQuery(sql, parameter); } // 返回成功响应 context.Response.Write(rsult); } } } //查找图片 if (context.Request["m"].ToString() == "showimage") { // 获取其他表单字段 string registerId = context.Request.Form["REGISTERID"]; string type = context.Request.Form["TYPE"]; string field = ""; if (type != null) { field = GetFieldByType(int.Parse(type)); //field = int.Parse(type) == 1 ? "PGSIGNATURE" : int.Parse(type) == 2 ? "CJSIGNATURE" : "SKSIGNATURE"; } string sqlStr = "SELECT " + field + " FROM TP_PM_FIRSTREGISTER WHERE REGISTERID=" + registerId; using (IDataAccess conn = DataAccess.Create()) { try { DataTable bt = conn.ExecuteDatatable(sqlStr); // 将图片转换为二进制 byte[] imageData = (byte[])bt.Rows[0][field]; // 将图像数据转换为 base64 编码的字符串 string base64String = Convert.ToBase64String(imageData); // 构建包含图像的 HTML 字符串 string htmlString = "data:image/bmp;base64," + base64String; // 设置响应的内容类型和编码 context.Response.ContentType = "text/html; charset=utf-8"; // 在响应中写入 HTML 字符串 context.Response.Write(JsonConvert.SerializeObject(new Dictionary() { { "htmlString", htmlString }, { "code", "200" } }, Formatting.Indented)); } catch { context.Response.Write(JsonConvert.SerializeObject(new Dictionary() { { "code", "500" } }, Formatting.Indented)); } } } #region 根据barcode查找填写过数据 if (context.Request["m"].ToString() == "getregister") { var formData = context.Request.Form; if (formData["BARCODE"].ToString() != null) { DataTable bt = new DataTable(); string sqlStr = "SELECT ITEMSYTPE,ITEMSID,ITEMSVALUE,ITEMSREMARKS FROM TP_PM_FIRSTREGISTERDETAIL WHERE VALUEFLAG=1 AND BARCODE='" + formData["BARCODE"].ToString() + "'"; using (IDataAccess conn = DataAccess.Create()) { bt = conn.ExecuteDatatable(sqlStr); } List> result = new List>(); for (int i = 0; i < bt.Rows.Count; i++) { Dictionary content = new Dictionary(); content.Add("ITEMSYTPE", bt.Rows[i]["ITEMSYTPE"].ToString()); content.Add("ITEMSID", bt.Rows[i]["ITEMSID"].ToString()); content.Add("ITEMSVALUE", bt.Rows[i]["ITEMSVALUE"].ToString()); content.Add("ITEMSREMARKS", bt.Rows[i]["ITEMSREMARKS"].ToString()); result.Add(content); } context.Response.Write(JsonConvert.SerializeObject(new Dictionary>>() { { "Result", result } }, Formatting.Indented)); ; } } #endregion //判断总单是否过量 if (context.Request["m"].ToString() == "checkcount") { var formData = context.Request.Form; if (formData["REGISTERID"].ToString() != null && formData["BARCODE"].ToString() != null) { using (IDataAccess conn = DataAccess.Create()) { Boolean result = false; DataTable bt = conn.ExecuteDatatable(" SELECT COUNT (REGISTERID) AS CHECKQUANTITY FROM TP_PM_FIRSTREGISTERBAR WHERE REGISTERID=" + formData["REGISTERID"].ToString()); DataTable lbt = conn.ExecuteDatatable(" SELECT FIRQUANTITY FROM TP_PM_FIRSTREGISTER WHERE REGISTERID=" + formData["REGISTERID"].ToString()); if (int.Parse(bt.Rows[0][0].ToString()) == int.Parse(lbt.Rows[0][0].ToString())) { DataTable dbt = conn.ExecuteDatatable(" SELECT * FROM TP_PM_FIRSTREGISTERBAR WHERE BARCODE=" + formData["BARCODE"].ToString()); result = dbt.Rows.Count == 0 ? true : false; } context.Response.Write(JsonConvert.SerializeObject(result)); } } } //条码保存 if (context.Request["m"].ToString() == "check") { //获取json数据 using (var reader = new StreamReader(context.Request.InputStream)) { string json = reader.ReadToEnd(); //json转对象 RootObject rootObject = JsonConvert.DeserializeObject(json); if (rootObject.barcode != null) { using (IDataAccess conn = DataAccess.Create()) { try { //开启事务 conn.BeginTransaction(); //查询首件确定登记项目表 DataTable btITEM = conn.ExecuteDatatable("SELECT * FROM TP_PM_FIRSTREGISTERITEMS"); //查询首件确定登记总单 DataTable bt = conn.ExecuteDatatable("SELECT * FROM TP_PM_FIRSTREGISTER WHERE VALUEFLAG=1 AND REGISTERID='" + rootObject.REGISTERID + "' "); //查询首件确定登记条码记录 DataTable btBAR = conn.ExecuteDatatable("SELECT * FROM TP_PM_FIRSTREGISTERBAR"); int i = 0; //当没有传来的条码 if (btBAR.AsEnumerable().Where(ex => ex.Field("BARCODE") == rootObject.barcode).FirstOrDefault() == null) { //创建记录 DataTable dt = conn.ExecuteDatatable(@"SELECT SEQ_PM_FIRSTREGISTERBAR_ID.nextval FROM dual"); i = int.Parse(dt.Rows[0][0].ToString()); conn.ExecuteNonQuery(@"INSERT INTO TP_PM_FIRSTREGISTERBAR ( BARID,REGISTERID, BARCODE ) VALUES (@BARID@,@REGISTERID@, @BARCODE@ )", new CDAParameter("BARID", i), new CDAParameter("REGISTERID", bt.Rows[0]["REGISTERID"]), new CDAParameter("BARCODE", rootObject.barcode)); //登记单状态为未登记 if (int.Parse(bt.Rows[0]["STATUS"].ToString()) == 0) { //更新已经登记单状态 conn.ExecuteNonQuery("UPDATE TP_PM_FIRSTREGISTER SET STATUS=STATUS+1 WHERE REGISTERID=" + bt.Rows[0]["REGISTERID"]); } } //查询本条的条码ID DataTable dtAIL = conn.ExecuteDatatable(@"SELECT * FROM TP_PM_FIRSTREGISTERDETAIL WHERE BARCODE='" + rootObject.barcode + "' AND VALUEFLAG=1 "); //遍历数据 foreach (var item in rootObject.data.Where(ex => ex.judgmentResult != null || ex.textInputValue != "").OrderBy(ex=>ex.ITEMSID)) { //查找记录 var jilu = dtAIL.AsEnumerable().Where(ex => ex.Field("ITEMSID").ToString() == item.ITEMSID ).FirstOrDefault(); //当有记录 if (jilu != null) { //记录和所填不一致 if (jilu["ITEMSVALUE"].ToString() != item.judgmentResult || jilu["ITEMSREMARKS"].ToString() != item.textInputValue) { //将记录更新 string sqlStr = "UPDATE TP_PM_FIRSTREGISTERDETAIL SET ITEMSVALUE='" + item.judgmentResult + "'," + " ITEMSREMARKS='" + item.textInputValue + "',UPDATEUSERID='" + rootObject.userId + "'" + " WHERE BARCODE='" + rootObject.barcode + "' " + "AND ITEMSID=" + item.ITEMSID; conn.ExecuteNonQuery(sqlStr); } } //没有记录 else { if (Convert.ToInt32(item.ITEMSID) == 20) { item.judgmentResult = "1"; } //添加数据 conn.ExecuteNonQuery(@"INSERT INTO TP_PM_FIRSTREGISTERDETAIL ( REGISTERID, BARID, BARCODE, ITEMSID,ITEMSYTPE,ITEMSNAME, ITEMSINFO,ITEMSVALUE,ITEMSREMARKS, ACCOUNTID,VALUEFLAG,CREATEUSERID,UPDATEUSERID ) VALUES ( @REGISTERID@, @BARID@, @BARCODE@, @ITEMSID@,@ITEMSYTPE@,@ITEMSNAME@, @ITEMSINFO@, @ITEMSVALUE@, @ITEMSREMARKS@, @ACCOUNTID@, @VALUEFLAG@, @CREATEUSERID@,@UPDATEUSERID@)", new CDAParameter("REGISTERID", bt.Rows[0]["REGISTERID"]), new CDAParameter("BARID", i != 0 ? i : dtAIL.Rows[0]["BARID"]), new CDAParameter("BARCODE", rootObject.barcode), new CDAParameter("ITEMSID", item.ITEMSID), new CDAParameter("ITEMSYTPE", btITEM.AsEnumerable().Where(ex => ex.Field("ITEMSID") == decimal.Parse(item.ITEMSID)).FirstOrDefault().Field("ITEMSYTPE")), new CDAParameter("ITEMSNAME", btITEM.AsEnumerable().Where(ex => ex.Field("ITEMSID") == decimal.Parse(item.ITEMSID)).FirstOrDefault().Field("ITEMSNAME")), new CDAParameter("ITEMSINFO", btITEM.AsEnumerable().Where(ex => ex.Field("ITEMSID") == decimal.Parse(item.ITEMSID)).FirstOrDefault().Field("ITEMSINFO")), new CDAParameter("ITEMSVALUE", item.judgmentResult), new CDAParameter("ITEMSREMARKS", item.textInputValue == "" ? null : item.textInputValue), new CDAParameter("ACCOUNTID", rootObject.accountId), new CDAParameter("VALUEFLAG", 1), new CDAParameter("CREATEUSERID", rootObject.userId), new CDAParameter("UPDATEUSERID", rootObject.userId)); } } //查询该条码已经填写的判定 DataTable btbarcodecount = conn.ExecuteDatatable("SELECT COUNT(*) FROM TP_PM_FIRSTREGISTERDETAIL WHERE VALUEFLAG=1 AND ITEMSVALUE IS NOT NULL AND BARCODE=" + rootObject.barcode); //判断综合判定是否填写 bool a = rootObject.data.Where(ex => ex.ITEMSID == btITEM.AsEnumerable().Where(x => x.Field("ITEMSINFO") == null).FirstOrDefault().Field("ITEMSID").ToString()).Select(ex => ex.textInputValue).FirstOrDefault() == null ? false : true; int b = btITEM.AsEnumerable().Where(ex => ex.Field("ITEMSINFO") != null).Count(); //查询首件确定登记条码记录 DataTable btBARNew = conn.ExecuteDatatable("SELECT * FROM TP_PM_FIRSTREGISTERBAR"); bool c = btBARNew.AsEnumerable().Where(ex => ex.Field("BARCODE") == rootObject.barcode).FirstOrDefault() == null ? false : true; //填写的判定数量等于判定规定&&综合判定填写 if ((int.Parse(btbarcodecount.Rows[0][0].ToString()) == b && a && c)|| rootObject.complete) { //更新条码状态 conn.ExecuteNonQuery("UPDATE TP_PM_FIRSTREGISTERBAR SET STATUS=1 WHERE REGISTERID=" + bt.Rows[0]["REGISTERID"] + " AND BARCODE='" + rootObject.barcode + "'"); } //更新已经检验数量 conn.ExecuteNonQuery("UPDATE TP_PM_FIRSTREGISTER SET CHECKQUANTITY=(SELECT COUNT(*) FROM TP_PM_FIRSTREGISTERBAR WHERE STATUS=1 AND REGISTERID="+bt.Rows[0]["REGISTERID"]+") WHERE REGISTERID=" + bt.Rows[0]["REGISTERID"]); //查询总单已经检验数量和首件数量 DataTable detailsbarcodecount = conn.ExecuteDatatable("SELECT FIRQUANTITY,CHECKQUANTITY FROM TP_PM_FIRSTREGISTER WHERE REGISTERID=" + bt.Rows[0]["REGISTERID"]); //当已经检验数量和首件数量相等 if (int.Parse(detailsbarcodecount.Rows[0][0].ToString()) == int.Parse(detailsbarcodecount.Rows[0][1].ToString())) { //更新已经登记单状态 conn.ExecuteNonQuery("UPDATE TP_PM_FIRSTREGISTER SET STATUS=2 WHERE REGISTERID=" + bt.Rows[0]["REGISTERID"]); } //提交事务 conn.Commit(); context.Response.Write(JsonConvert.SerializeObject(new Dictionary() { { "result", true } }, Formatting.Indented)); } catch (Exception e) { //回滚事务 conn.Rollback(); context.Response.Write(JsonConvert.SerializeObject(new Dictionary() { { "result", false } }, Formatting.Indented)); } } } } } //获取总单号 if (context.Request["m"].ToString() == "assemble") { using (IDataAccess conn = DataAccess.Create()) { DataTable dt = conn.ExecuteDatatable(@"SELECT REGISTERID,REGISTERNO FROM TP_PM_FIRSTREGISTER WHERE STATUS IN (2,3)"); context.Response.Write(JsonConvert.SerializeObject(dt, Formatting.Indented)); } } //获取总单信息 if (context.Request["m"].ToString() == "getoneassemble") { var formData = context.Request.Form; using (IDataAccess conn = DataAccess.Create()) { DataTable dt = conn.ExecuteDatatable(@"SELECT F.REGISTERID, F.REGISTERNO, F.LOGOID, F.GOODSID, F.GOODSCODE, F.WORKSHOP, TO_CHAR(F.ACCOUNTDATE, 'YYYY-MM-DD')AS DATA, F.MATERIALCODE, F.FIRQUANTITY, F.ADVICE, F.ADVICEREMARKS, D.DICTIONARYVALUE AS 产品类型 , E.DICTIONARYVALUE AS 检验依据 , GO.GOODSNAME FROM TP_PM_FIRSTREGISTER F LEFT JOIN TP_MST_DATADICTIONARY D ON F.FIRGOODSTYPE = D.DICTIONARYID LEFT JOIN TP_MST_DATADICTIONARY E ON F.FIRBASIS=E.DICTIONARYID LEFT JOIN TP_MST_GOODS GO ON F.GOODSID=GO.GOODSID WHERE F.REGISTERNO = " + formData["REGISTERNO"]); context.Response.Write(JsonConvert.SerializeObject(dt, Formatting.Indented)); } } //根据总单获取产品条码 if (context.Request["m"].ToString() == "getabrcode") { var formData = context.Request.Form; if (formData["REGISTERID"] != null) { using (IDataAccess conn = DataAccess.Create()) { DataTable dt = conn.ExecuteDatatable(@"SELECT BARCODE FROM TP_PM_FIRSTREGISTERBAR WHERE REGISTERID=" + formData["REGISTERID"]); context.Response.Write(JsonConvert.SerializeObject(dt, Formatting.Indented)); } } } //总单保存 if (context.Request["m"].ToString() == "save") { var formData = context.Request.Form; if (formData["ADVICE"] != null && formData["REGISTERID"] != null) { using (IDataAccess conn = DataAccess.Create()) { try { //开启事务 conn.BeginTransaction(); DataTable bt = conn.ExecuteDatatable("SELECT STATUS FROM TP_PM_FIRSTREGISTER WHERE REGISTERID=" + formData["REGISTERID"]); //更新总单 登记单状态 研发部意见+备注 string strSQL = "UPDATE TP_PM_FIRSTREGISTER SET ADVICE= " + formData["ADVICE"]; if (formData["ADVICEREMARKS"] != null) { strSQL += ",ADVICEREMARKS='" + formData["ADVICEREMARKS"] + "'"; } if (int.Parse(bt.Rows[0]["STATUS"].ToString()) == 2) { strSQL += ",STATUS=STATUS+1"; } strSQL += " WHERE REGISTERID=" + formData["REGISTERID"]; conn.ExecuteNonQuery(strSQL); //查询签名 DataTable dt = conn.ExecuteDatatable("SELECT PGSIGNATURE, CJSIGNATURE, SKSIGNATURE FROM TP_PM_FIRSTREGISTER WHERE REGISTERID=" + formData["REGISTERID"]); //当签名不为空时 if (dt.Rows[0]["PGSIGNATURE"].ToString() != string.Empty && dt.Rows[0]["CJSIGNATURE"].ToString() != string.Empty && dt.Rows[0]["SKSIGNATURE"].ToString() != string.Empty) { //更新登记单状态 conn.ExecuteNonQuery("UPDATE TP_PM_FIRSTREGISTER SET STATUS=STATUS+1 WHERE REGISTERID=" + formData["REGISTERID"]); } //提交事务 conn.Commit(); context.Response.Write(JsonConvert.SerializeObject(new Dictionary() { { "result", true } }, Formatting.Indented)); } catch (Exception e) { //回滚事务 conn.Rollback(); context.Response.Write(JsonConvert.SerializeObject(new Dictionary() { { "result", false } }, Formatting.Indented)); } } } } ///型式检验查询 if (context.Request["m"].ToString() == "showtest") { var formData = context.Request.Form; if (!string.IsNullOrEmpty(formData["BARCODE"].ToString())) { string StrSql = "SELECT --barcode,\n " + " xuhao,goodscode,goodstypename,TO_CHAR(groutingdate, 'YYYY-MM-DD')AS groutingdate,inspectitem ,technicalrequirement,unitname, " + " --remarks, ITEMSDETAILID ,\n"+ " listagg(inspectvalue, ', ') within GROUP(ORDER BY inspectvalue) AS inspectvalue,isqualified "+ " FROM (SELECT fd.barcode,g.goodscode,gt.goodstypename,g.groutingdate ,fd.inspectitem,fd.remarks,fdd.xuhao,fdd.ITEMSDETAILID "+ " ,CASE "+ "WHEN fdd.unitname IS NULL THEN "+ " '-' "+ " ELSE "+ " to_char(fdd.unitname) "+ " END unitname "+ " ,fdd.technicalrequirement , "+ " CASE "+ " WHEN fdd.inspectmark = 630 THEN "+ " CASE "+ " WHEN fd.isqualified = 1 THEN "+ " '合格' "+ " ELSE "+ " '不合格' "+ " END "+ " ELSE "+ " to_char(fd.inspectvalue) "+ " END AS inspectvalue "+ " ,CASE"+ " WHEN fd.isqualified = 1 THEN "+ " '合格' "+ " ELSE "+ " '不合格' "+ " END AS isqualified "+ " FROM tp_pm_fqcitemsdata fd "+ " LEFT JOIN tp_pm_fqcitemsdetail fdd "+ " ON fd.itemsdetailid = fdd.itemsdetailid "+ " LEFT JOIN tp_pm_fqcitems f "+ " ON f.itemsid = fd.itemsid "+ " LEFT JOIN tp_pm_groutingdailydetail g "+ " ON g.barcode = fd.barcode "+ " LEFT JOIN tp_mst_goods gg "+ " ON gg.goodsid = g.goodsid "+ " LEFT JOIN tp_mst_goodstype gt "+ " ON gg.goodstypeid = gt.goodstypeid "+ " WHERE fd.barcode = '"+formData["BARCODE"].ToString()+"'"+ " AND f.inspecttype = 615 "+ " AND fd.valueflag = 1) "+ " GROUP BY barcode ,goodscode,goodstypename,groutingdate,inspectitem,unitname,technicalrequirement,isqualified,remarks,xuhao,ITEMSDETAILID "+ " ORDER BY XUHAO,ITEMSDETAILID DESC "; DataTable dt = new DataTable(); using (IDataAccess conn = DataAccess.Create()) { dt = conn.ExecuteDatatable(StrSql); } context.Response.Write(JsonConvert.SerializeObject(dt, Formatting.Indented)); } } if (context.Request["m"].ToString() == "checkexist") { var formData = context.Request.Form; if ( formData["BARCODE"].ToString() != null) { using (IDataAccess conn = DataAccess.Create()) { Boolean result = false; DataTable bt = conn.ExecuteDatatable("SELECT count(*) FROM TP_PM_FIRSTREGISTER S INNER JOIN TP_PM_FIRSTREGISTERBAR B ON S.REGISTERID=B.REGISTERID WHERE S.STATUS=4 AND B.BARCODE=" + formData["BARCODE"].ToString()); if (int.Parse(bt.Rows[0][0].ToString()) !=0) { result = true; } context.Response.Write(JsonConvert.SerializeObject(result)); } } } } public bool IsReusable { get { return false; } } public class ItemData { public string ITEMSID { get; set; } public string judgmentResult { get; set; } public string textInputValue { get; set; } } public class RootObject { public string REGISTERID { get; set; } public string barcode { get; set; } public string userId { get; set; } public string accountId { get; set; } public bool complete { get; set; } public List data { get; set; } } /// /// 获取签名字段 /// /// /// public string GetFieldByType(int type) { switch (type) { case 1: return "PGSIGNATURE"; case 2: return "CJSIGNATURE"; case 3: return "SKSIGNATURE"; case 4: return "YFSIGNATURE"; case 5: return "GYSIGNATURE"; case 6: return "XMZSIGNATURE"; default: // 可以根据实际需求修改默认返回值 return "UNKNOWN"; } } }