• 生成二维码


    <input type="button" id="btn_QrCode" class="bc-btn  btn-right" value="生成二维码"  />
    

      

    <script type="text/javascript">
            var QrWin = $("#QrCodeWindows").window({ title: "二维码扫描",  200, height: 200, bodyPadding: 0, onClosing: function () { QrWin.window("close"); } });
            $("#btn_QrCode").click(function () {
                var SFSH = $("#hid_SFSH").val()
                if (SFSH == "0")
                {
                    $.alert({ msg: "请选择审核后的数据生成二维码!", icon: "info" });
                }
                var DH = $("#txt_DH_A").val();
                $("#QRCode").text("");
                $.ajax({
                    type: "POST",
                    dataType: "json",
                    url: "data/PTHC_CGDD.ashx",
                    data: { type: "CGDD_QrCode", DH: DH, times: Math.random() },
                    success: function (data) {
                        if (data.data == "1") {
                            var divQr = "<div class="butright"><img src="" + data.url + "" style=" 200px; height:200px; margin:0 auto;" /></div></div>";
                            $("#QRCode").append(divQr);
                            QrWin.window("show");
                        }
                        else {
                            $.alert({ msg: "生成失败!", icon: "info" });
                        }
                    }
                });
            });
    <script>

      

           public void CGDD_QrCode(HttpContext context)
            {
                string DH = context.Request["DH"];
                DataSet ds = bll.GetCGDD_Detail(DH);
                //SBMCBH VARCHAR(20) 耗材编号
                //SBMC    VARCHAR(80) 耗材名称
                //GGXH    VARCHAR(100)    规格型号
                //SL  FLOAT   采购数量
                //YYMC    VARCHAR(100)    医院名称
    //            {
    //                doc: { dh: 201805020003,rq: 2018 - 05 - 02 00:00:00},
    //dtl:[
    //1090086 | 5ml注射器(供应室) | 100付 / 盒 | 厂家id | 厂家名称 | 1 | 盒 | 备注,
    //1090085 | 2.5ml注射器(供应室) | 150付 / 盒 | 厂家id | 厂家名称 | 1 | 盒 |,
    //1090084 | 1ml注射器(供应室) | 200付 / 盒 | 厂家id | 厂家名称 | 1 | 盒 |,
    //1090060 | 3M胶带指示(卡 / 条 / 胶贴) || 厂家id | 厂家名称 | 1 | 卷 |,
    //107004 | 63D型钛网 | 50 * 70mm | 厂家id | 厂家名称 | 1 | 片 |
    //]
    //}
                string data = string.Empty;
                data += "{doc:{dh:"+ ds.Tables[0].Rows[0]["DH"].ToString().Trim() + ",rq:" + Convert.ToDateTime(ds.Tables[0].Rows[0]["RQ"]).ToString("yyyy-MM-dd hh:mm:ss") + "},dtl:[";
                foreach (DataRow dr in ds.Tables[1].Rows)
                {
    
                    data +=
                    dr["SBMCBH"].ToString().Trim() + "|" +
                    dr["SBMC"].ToString().Trim() + "|" +
                    dr["SBGG"].ToString().Trim() + "|" +
                    dr["SCQY"].ToString().Trim() + "|" +
                    dr["SCQYMC"].ToString().Trim() + "|" +
                    dr["SL"].ToString().Trim() + "|" +
                    dr["SBDW"].ToString().Trim() + "|" +
                    dr["BZ"].ToString().Trim() + ",";
                }
                data=data.Substring(0, data.Length - 1);
                data += "]}";
                string imageUrl = GetQRCode(QRCodeEncoderUtil(data));
    
                context.Response.Write(Newtonsoft.Json.JsonConvert.SerializeObject(new { url = imageUrl,data="1" }));
            }

          /// 生成二维码
          /// </summary>
          /// <param name="QRCode"></param>
          /// <returns></returns>
          public string GetQRCode(Bitmap QRCode)
          {

            if (!Directory.Exists(System.Web.HttpContext.Current.Request.MapPath("~/QRimages/")))
            {
              Directory.CreateDirectory(System.Web.HttpContext.Current.Request.MapPath("~/QRimages/"));
            }
            else
            {
              foreach (string s in Directory.GetFileSystemEntries(System.Web.HttpContext.Current.Request.MapPath("~/QRimages/")))
              {
                if (File.Exists(s))
                {
                  FileInfo file = new FileInfo(s);
                  if (file.Attributes.ToString().IndexOf("ReadOnly") != -1)
                  file.Attributes = FileAttributes.Normal;
                  File.Delete(s);
                }
              }
            }

            string fileName = DateTime.Now.ToFileTime().ToString() + ".jpg";
            QRCode.Save(System.Web.HttpContext.Current.Request.MapPath("~/QRimages/") + fileName);
            fileName = "../QRimages/" + fileName;
            return fileName;
          }
          public Bitmap QRCodeEncoderUtil(string qrCodeContent)
          {
            QRCodeEncoder qrCodeEncoder = new QRCodeEncoder();
            qrCodeEncoder.QRCodeVersion = 0;
            Bitmap img = qrCodeEncoder.Encode(qrCodeContent, Encoding.UTF8);//指定utf-8编码, 支持中文
            return img;
          }

      

  • 相关阅读:
    Visual studio 2008中添加manifest文件
    SqlServer2008R2安装
    今天在Google上搜我的名字,具然埔客园排在第一位。
    今天又到此一游,原因,是为了寻找传说中的Team foundation server,很难找呀,这个东东。
    硬件基础知识
    循环冗余检验应用
    【转】网络变压器的作用
    PADS无模命令总结
    单片机后缀说明
    QuartusII之Warning警告分析
  • 原文地址:https://www.cnblogs.com/Apex233/p/9001161.html
Copyright © 2020-2023  润新知