Asp.Netゼロはすぐに業務システムを構築するために使用することができ、非常に良好なWebフレームワークです。フレームワークは、ビジネス・システムで必要とされる最も一般的な機能を満たすために、しかし、レポートを印刷しなければならないシステムが達成されていません。ここでは、その上のテンプレートデザイン、テンプレート印刷、バッチ印刷、プリントコマンド、バーコード/ 2次元コード印刷とを実現することができ、どのようにゼロに印刷機能を統合することを教えてくれます。
まず、我々は次のように、ビジネス、ビジネスデザインを印刷するための柔軟なシステムを設計します。
コア層で印刷最初の新しいフォルダを、新しいPrintTemplateでプリント
パブリック クラス PrintTemplate:エンティティ< 整数 > 、ISoftDelete、IMustHaveTenant { 公共 のint TenantId { 取得します。セット; } パブリック ブール IsDeleted { 得ます。セット; } /// <要約> /// 模块 /// </要約> [StringLengthの(50 )] パブリック 文字列 AppServiceName { 得ます。セット; } /// <要約> /// 模板名称 /// </要約> [StringLengthに(50 )] パブリック 文字列 TEMPLATENAME { 得ます。セット; } /// <要約> /// 默认模板 /// </要約> パブリック ブール Defaule { 得ます。セット; } /// <要約> /// 模板内容 /// </要約> パブリック 文字列 TemplateContent { 得ます。セット; } /// <要約> /// 备注 /// </要約> [StringLengthの(100 )] パブリック 文字列備考{ 得ます。セット; } }
PrintTemplateを作成した後、簡単なIPrintTemplateManagerフィールドサービス・インターフェースの呼び出しを追加します。
パブリック インターフェースIPrintTemplateManager:IDomainService { タスク <リスト< ストリング >> GetTemplates(文字列serviceNameを)。 タスク < 文字列 >印刷(文字列 serviceNameは、文字列の名前)。 }
印刷印刷テンプレートを使用すると、直接テンプレートとコンテンツの単一のリストを取得することができ、テンプレートの内容を、取得した後に選択されていますが、事業開発の可能性があり、印刷テンプレートの多くなるので、より効率的に取得するためにステップバイステップでます。
GetTemplatesのみテンプレート名にテキストを持っていない、現在の印刷モジュールのリストを取得することです。
データベース移行後IPrintManagerAppService界面層を追加するApplication.Shared
パブリック インターフェースIPrintManagerAppService:IApplicationService { タスクCreateOrUpdatePrint(CreateOrEditPrintInput入力)。 タスクDeletePrint(EntityDto < INT > 入力)。 タスク <PagedResultDto <CreateOrEditPrintInput >> GetPrints(GetPrintInput入力)。 }
印刷テンプレートは、レポート内のすべての現在のモジュールの印刷テンプレートページの一覧を取得する必要があり、ABPアプリケーションサービス分類であるサービスモジュール、に基づいています。
result.PrintTemplatesの=は待つ _printTemplateManager.GetTemplates(" SomeoneAppServiceを")。
印刷テンプレートと印刷の内容を取得するテンプレートを選択した後:
公共の 非同期タスク< 文字列 >印刷(文字列TEMPLATENAME) { リターンを 待つ _printTemplateManager.Print(" PurchaseManagerAppService " 、TEMPLATENAMEを)。 }
インタフェースは、統一された管理テンプレートのための新しい印刷管理モジュールのリリース後、モジュールは、角度で開発者によって維持されるべきです。
次のテンプレートのデザイン、テンプレートは、他のスタイルのニーズに応じて設計することができます。
概要:印刷事業は、ここで達成し、最終的に印刷を開始するために、角の印刷コントロールに統合する必要がありますされています。