/****************************** * 说明:Lskj.PubPageDetail 入口函数 * 创建人:龚宇超 * 创建日期:2018-04-03 * 修改人: * 修改日期: * 修改备注: * 版本:1.0.0.0 ******************************/ using Lskj.Business; using Lskj.Business.Impl; using Lskj.Core; using Lskj.Model; using Lskj.Util; using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Windows.Forms; namespace Lskj.PubPdfSign { /// /// c#库被调用统一接口类 /// public sealed class DllBaseClass : IForm { public DllBaseClass() { } public DllBaseClass(string[] obj) { try { DynamicPdfSignModel pdfSignModel = new DynamicPdfSignModel(obj); CreateSignTempTable(); CreateSignLocationTable(); if (string.IsNullOrEmpty(pdfSignModel.Type) || (pdfSignModel.Type + "").Equals("0")) { FrmDesign main = new FrmDesign(); this.SubForm = main; main.PdfSignModel = pdfSignModel; } else if ((pdfSignModel.Type + "").Equals("1") || (pdfSignModel.Type + "").Equals("2")) { FrmAddSign main = new FrmAddSign(); this.SubForm = main; main.PdfSignModel = pdfSignModel; } } catch (Exception ex) { LogUtil.WriteError("Lskj.PubPdfSign.dll--参数错误-->" + obj.ToString(), ex); } } private void CreateSignTempTable() { Dictionary tableColDic = new Dictionary(); tableColDic.Add("versionName", "varchar(200)"); tableColDic.Add("pdfUrl", "varchar(1000)"); BaseImpl.CheckTable(tableColDic, "P_SignTempTable"); } private void CreateSignLocationTable() { Dictionary tableColDic = new Dictionary(); tableColDic.Add("mainId", "int"); tableColDic.Add("stepCode", "varchar(100)"); tableColDic.Add("pageNum", "int"); tableColDic.Add("absoluteY", "numeric(18,2)"); tableColDic.Add("absoluteX", "numeric(18,2)"); tableColDic.Add("pdfImageWidth", "numeric(18,2)"); tableColDic.Add("pdfImageHeight", "numeric(18,2)"); BaseImpl.CheckTable(tableColDic, "P_SignLocationTable"); } /// /// 窗口 /// public Form SubForm { get; set; } } /// /// 入口模型 /// public class DynamicPdfSignModel : DynamicModel { /// /// 审批模块号 /// /// The primary value. public string TypeCode { get; private set; } /// /// 审批步骤号 /// /// The primary value. public string StepCode { get; private set; } /// /// 单据主键 /// public string PrimaryValue { get; private set; } /// /// 签章版本号 /// public string VersionCode { get; private set; } /// /// 类型 /// /// 0设计,1签章预览, 2签章预览并上传 public string Type { get; private set; } /// /// 是否是已完成单据 /// /// 0否,1是 public string IsFinishPage { get; private set; } /// /// 其他参数 /// /// The parameters. public string[] Params; /// /// 初始化默认参数(1.标题、2、用户ID、3.用户名、4.权限、5.模块编号、6.菜单ID) /// /// The arguments. public DynamicPdfSignModel(string[] args) : base(args) { if (args.Length > 4) this.TypeCode = args[4]; if (args.Length > 5) base.ModuleCode = args[5]; if (args.Length > 6) this.StepCode = args[6]; if (args.Length > 7) this.PrimaryValue = args[7]; if (args.Length > 8) this.VersionCode = args[8]; if (args.Length > 9) this.Type = args[9]; if (args.Length > 10) this.IsFinishPage = args[10]; if (args.Length > 11) { this.Params = new string[11]; for (int i = 11; i < args.Length; i++) { Params[i - 11] = args[i]; } } } } }