2021-04-30 10:28:37 +08:00
|
|
|
|
using BLL;
|
|
|
|
|
using System;
|
|
|
|
|
using System.IO;
|
|
|
|
|
using System.Linq;
|
|
|
|
|
using System.Text;
|
|
|
|
|
using System.Web.UI;
|
|
|
|
|
using ThoughtWorks.QRCode.Codec;
|
|
|
|
|
|
|
|
|
|
namespace FineUIPro.Web.Controls
|
|
|
|
|
{
|
|
|
|
|
/// <summary>
|
|
|
|
|
///
|
|
|
|
|
/// </summary>
|
|
|
|
|
public partial class SeeQRImage : Page
|
|
|
|
|
{
|
|
|
|
|
#region QRCodeAttachUrl
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 二维码路径id
|
|
|
|
|
/// </summary>
|
|
|
|
|
public string QRCodeAttachUrl
|
|
|
|
|
{
|
|
|
|
|
get
|
|
|
|
|
{
|
|
|
|
|
return (string)ViewState["QRCodeAttachUrl"];
|
|
|
|
|
}
|
|
|
|
|
set
|
|
|
|
|
{
|
|
|
|
|
ViewState["QRCodeAttachUrl"] = value;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
#endregion
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 加载页面
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="sender"></param>
|
|
|
|
|
/// <param name="e"></param>
|
|
|
|
|
protected void Page_Load(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (!IsPostBack)
|
|
|
|
|
{
|
|
|
|
|
this.ShowQRCode();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 二维码显示
|
|
|
|
|
/// </summary>
|
|
|
|
|
private void ShowQRCode()
|
|
|
|
|
{
|
|
|
|
|
if (!string.IsNullOrEmpty(Request.Params["PersonId"]))
|
|
|
|
|
{
|
|
|
|
|
var person = Funs.DB.SitePerson_Person.FirstOrDefault(e => e.PersonId == Request.Params["PersonId"]);
|
|
|
|
|
if (person != null)
|
|
|
|
|
{
|
|
|
|
|
if (!string.IsNullOrEmpty(person.QRCodeAttachUrl) && CreateQRCodeService.isHaveImage(person.QRCodeAttachUrl))
|
|
|
|
|
{
|
|
|
|
|
this.QRCodeAttachUrl = person.QRCodeAttachUrl;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
this.CreateCode_Simple(Request.Params["strCode"]);
|
|
|
|
|
person.QRCodeAttachUrl = this.QRCodeAttachUrl;
|
|
|
|
|
Funs.DB.SubmitChanges();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else if (!string.IsNullOrEmpty(Request.Params["EquipmentQualityId"]))
|
|
|
|
|
{
|
|
|
|
|
var equipmentQuality = Funs.DB.QualityAudit_EquipmentQuality.FirstOrDefault(e => e.EquipmentQualityId == Request.Params["EquipmentQualityId"]);
|
|
|
|
|
if (equipmentQuality != null)
|
|
|
|
|
{
|
|
|
|
|
if (!string.IsNullOrEmpty(equipmentQuality.QRCodeAttachUrl) && CreateQRCodeService.isHaveImage(equipmentQuality.QRCodeAttachUrl))
|
|
|
|
|
{
|
|
|
|
|
this.QRCodeAttachUrl = equipmentQuality.QRCodeAttachUrl;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
this.CreateCode_Simple(Request.Params["strCode"]);
|
|
|
|
|
equipmentQuality.QRCodeAttachUrl = this.QRCodeAttachUrl;
|
|
|
|
|
Funs.DB.SubmitChanges();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else if (!string.IsNullOrEmpty(Request.Params["GeneralEquipmentQualityId"]))
|
|
|
|
|
{
|
|
|
|
|
var generalEquipmentQuality = Funs.DB.QualityAudit_GeneralEquipmentQuality.FirstOrDefault(e => e.GeneralEquipmentQualityId == Request.Params["GeneralEquipmentQualityId"]);
|
|
|
|
|
if (generalEquipmentQuality != null)
|
|
|
|
|
{
|
|
|
|
|
if (!string.IsNullOrEmpty(generalEquipmentQuality.QRCodeAttachUrl) && CreateQRCodeService.isHaveImage(generalEquipmentQuality.QRCodeAttachUrl))
|
|
|
|
|
{
|
|
|
|
|
this.QRCodeAttachUrl = generalEquipmentQuality.QRCodeAttachUrl;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
this.CreateCode_Simple(Request.Params["strCode"]);
|
|
|
|
|
generalEquipmentQuality.QRCodeAttachUrl = this.QRCodeAttachUrl;
|
|
|
|
|
Funs.DB.SubmitChanges();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else if (!string.IsNullOrEmpty(Request.Params["ConstructSolutionId"]))
|
|
|
|
|
{
|
|
|
|
|
var constructSolution = Funs.DB.Solution_ConstructSolution.FirstOrDefault(e => e.ConstructSolutionId == Request.Params["ConstructSolutionId"]);
|
|
|
|
|
if (constructSolution != null)
|
|
|
|
|
{
|
|
|
|
|
if (!string.IsNullOrEmpty(constructSolution.QRCodeAttachUrl) && CreateQRCodeService.isHaveImage(constructSolution.QRCodeAttachUrl))
|
|
|
|
|
{
|
|
|
|
|
this.QRCodeAttachUrl = constructSolution.QRCodeAttachUrl;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
this.CreateCode_Simple(Request.Params["strCode"]);
|
|
|
|
|
constructSolution.QRCodeAttachUrl = this.QRCodeAttachUrl;
|
|
|
|
|
Funs.DB.SubmitChanges();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else if (!string.IsNullOrEmpty(Request.Params["TrainingPlanId"]))
|
|
|
|
|
{
|
|
|
|
|
var trainingPlan = Funs.DB.Training_Plan.FirstOrDefault(e => e.PlanId ==Request.Params["TrainingPlanId"]);
|
|
|
|
|
if (trainingPlan != null)
|
|
|
|
|
{
|
|
|
|
|
if (!string.IsNullOrEmpty(trainingPlan.QRCodeUrl) && CreateQRCodeService.isHaveImage(trainingPlan.QRCodeUrl))
|
|
|
|
|
{
|
|
|
|
|
this.QRCodeAttachUrl = trainingPlan.QRCodeUrl;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
this.CreateCode_Simple(Request.Params["strCode"]);
|
|
|
|
|
trainingPlan.QRCodeUrl = this.QRCodeAttachUrl;
|
|
|
|
|
Funs.DB.SubmitChanges();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else if (!string.IsNullOrEmpty(Request.Params["TestPlanId"]))
|
|
|
|
|
{
|
|
|
|
|
var testPlan = Funs.DB.Training_TestPlan.FirstOrDefault(e => e.TestPlanId == Request.Params["TestPlanId"]);
|
|
|
|
|
if (testPlan != null)
|
|
|
|
|
{
|
|
|
|
|
if (!string.IsNullOrEmpty(testPlan.QRCodeUrl) && CreateQRCodeService.isHaveImage(testPlan.QRCodeUrl))
|
|
|
|
|
{
|
|
|
|
|
this.QRCodeAttachUrl = testPlan.QRCodeUrl;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
this.CreateCode_Simple(Request.Params["strCode"]);
|
|
|
|
|
testPlan.QRCodeUrl = this.QRCodeAttachUrl;
|
|
|
|
|
Funs.DB.SubmitChanges();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
else if (!string.IsNullOrEmpty(Request.Params["ServerTestPlanId"]))
|
|
|
|
|
{
|
|
|
|
|
var serverTestPlan = Funs.DB.Test_TestPlan.FirstOrDefault(e => e.TestPlanId == Request.Params["ServerTestPlanId"]);
|
|
|
|
|
if (serverTestPlan != null)
|
|
|
|
|
{
|
|
|
|
|
if (!string.IsNullOrEmpty(serverTestPlan.QRCodeUrl) && CreateQRCodeService.isHaveImage(serverTestPlan.QRCodeUrl))
|
|
|
|
|
{
|
|
|
|
|
this.QRCodeAttachUrl = serverTestPlan.QRCodeUrl;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
this.CreateCode_Simple(Request.Params["strCode"]);
|
|
|
|
|
serverTestPlan.QRCodeUrl = this.QRCodeAttachUrl;
|
|
|
|
|
Funs.DB.SubmitChanges();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2023-10-16 15:14:41 +08:00
|
|
|
|
else if (!string.IsNullOrEmpty(Request.Params["TrainingId"]))
|
|
|
|
|
{
|
|
|
|
|
var serverTestPlan = Funs.DB.EduTrain_TrainRecord.FirstOrDefault(e => e.TrainingId == Request.Params["TrainingId"]);
|
|
|
|
|
if (serverTestPlan != null)
|
|
|
|
|
{
|
|
|
|
|
if (!string.IsNullOrEmpty(serverTestPlan.QRCodeUrl) && CreateQRCodeService.isHaveImage(serverTestPlan.QRCodeUrl))
|
|
|
|
|
{
|
|
|
|
|
this.QRCodeAttachUrl = serverTestPlan.QRCodeUrl;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
this.CreateCode_Simple(Request.Params["strCode"]);
|
|
|
|
|
serverTestPlan.QRCodeUrl = this.QRCodeAttachUrl;
|
|
|
|
|
Funs.DB.SubmitChanges();
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
2021-04-30 10:28:37 +08:00
|
|
|
|
|
|
|
|
|
this.Image1.ImageUrl = "~/" + this.QRCodeAttachUrl;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 生成二维码方法一
|
|
|
|
|
/// </summary>
|
|
|
|
|
private void CreateCode_Simple(string nr)
|
|
|
|
|
{
|
|
|
|
|
try
|
|
|
|
|
{
|
|
|
|
|
string imageUrl = string.Empty;
|
|
|
|
|
QRCodeEncoder qrCodeEncoder = new QRCodeEncoder
|
|
|
|
|
{
|
|
|
|
|
QRCodeEncodeMode = QRCodeEncoder.ENCODE_MODE.BYTE,
|
|
|
|
|
QRCodeScale = nr.Length,
|
|
|
|
|
QRCodeVersion = 0,
|
|
|
|
|
QRCodeErrorCorrect = QRCodeEncoder.ERROR_CORRECTION.M
|
|
|
|
|
};
|
|
|
|
|
System.Drawing.Image image = qrCodeEncoder.Encode(nr, Encoding.UTF8);
|
|
|
|
|
string filepath = Server.MapPath("~/") + UploadFileService.QRCodeImageFilePath;
|
|
|
|
|
//如果文件夹不存在,则创建
|
|
|
|
|
if (!Directory.Exists(filepath))
|
|
|
|
|
{
|
|
|
|
|
Directory.CreateDirectory(filepath);
|
|
|
|
|
}
|
|
|
|
|
string filename = DateTime.Now.ToString("yyyymmddhhmmssfff").ToString() + ".jpg";
|
|
|
|
|
imageUrl = filepath + filename;
|
|
|
|
|
FileStream fs = new FileStream(imageUrl, FileMode.OpenOrCreate, FileAccess.Write);
|
|
|
|
|
image.Save(fs, System.Drawing.Imaging.ImageFormat.Jpeg);
|
|
|
|
|
fs.Close();
|
|
|
|
|
image.Dispose();
|
|
|
|
|
this.QRCodeAttachUrl = UploadFileService.QRCodeImageFilePath + filename;
|
|
|
|
|
}
|
|
|
|
|
#pragma warning disable CS0168 // 声明了变量“ex”,但从未使用过
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
#pragma warning restore CS0168 // 声明了变量“ex”,但从未使用过
|
|
|
|
|
{
|
|
|
|
|
Alert.ShowInTop("操作有误,重新生成!", MessageBoxIcon.Warning);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 重新生成二维码
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="sender"></param>
|
|
|
|
|
/// <param name="e"></param>
|
|
|
|
|
protected void btnReSave_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
//UploadFileService.DeleteFile(Funs.RootPath, this.QRCodeAttachUrl);//删除二维码
|
|
|
|
|
//this.QRCodeAttachUrl = string.Empty;
|
|
|
|
|
this.ShowQRCode();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// 打印
|
|
|
|
|
/// </summary>
|
|
|
|
|
/// <param name="sender"></param>
|
|
|
|
|
/// <param name="e"></param>
|
|
|
|
|
protected void btnPrint_Click(object sender, EventArgs e)
|
|
|
|
|
{
|
|
|
|
|
if (!string.IsNullOrEmpty(Request.Params["PersonId"]))
|
|
|
|
|
{
|
|
|
|
|
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("QRCodePrint.aspx?PersonId={0}", Request.Params["PersonId"], "打印 - ")));
|
|
|
|
|
}
|
|
|
|
|
else if (!string.IsNullOrEmpty(Request.Params["EquipmentQualityId"]))
|
|
|
|
|
{
|
|
|
|
|
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("QRCodePrint.aspx?EquipmentQualityId={0}", Request.Params["EquipmentQualityId"], "打印 - ")));
|
|
|
|
|
}
|
|
|
|
|
else if (!string.IsNullOrEmpty(Request.Params["GeneralEquipmentQualityId"]))
|
|
|
|
|
{
|
|
|
|
|
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("QRCodePrint.aspx?GeneralEquipmentQualityId={0}", Request.Params["GeneralEquipmentQualityId"], "打印 - ")));
|
|
|
|
|
}
|
|
|
|
|
else if(!string.IsNullOrEmpty(Request.Params["ConstructSolutionId"]))
|
|
|
|
|
{
|
|
|
|
|
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("QRCodePrint.aspx?ConstructSolutionId={0}", Request.Params["ConstructSolutionId"], "打印 - ")));
|
|
|
|
|
}
|
|
|
|
|
else if(!string.IsNullOrEmpty(Request.Params["TrainingPlanId"]))
|
|
|
|
|
{
|
|
|
|
|
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("QRCodePrint.aspx?TrainingPlanId={0}", Request.Params["TrainingPlanId"], "打印 - ")));
|
|
|
|
|
}
|
|
|
|
|
else if (!string.IsNullOrEmpty(Request.Params["TestPlanId"]))
|
|
|
|
|
{
|
|
|
|
|
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("QRCodePrint.aspx?TestPlanId={0}", Request.Params["TestPlanId"], "打印 - ")));
|
|
|
|
|
}
|
|
|
|
|
else if (!string.IsNullOrEmpty(Request.Params["ServerTestPlanId"]))
|
|
|
|
|
{
|
|
|
|
|
PageContext.RegisterStartupScript(Window1.GetShowReference(String.Format("QRCodePrint.aspx?ServerTestPlanId={0}", Request.Params["ServerTestPlanId"], "打印 - ")));
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|