lodop设置打印方向_前端使用LODOP打印控件

本文档详细介绍了如何在前端使用LODOP打印控件进行打印设置,包括引入脚本、获取MAC地址、打印设计、模板生成、程序代码获取、模板重载以及数据装载和打印等步骤。
摘要由CSDN通过智能技术生成

ead70804a4e808277f32e0af87a12eda.png

1.引入脚本

import { getLodop } from '/lodopFuncs'
let LODOP

2.获取MAC地址

LODOP = getLodop()
LODOP.GET_SYSTEM_INFO('NetworkAdapter.1.PhysicalAddress')
let that = this
LODOP.On_Return = function (TaskId, Value) {
    let mac = value       
}

3.打印设计

// 打印设计
    createPage () {
      LODOP = getLodop()
      LODOP.PRINT_INITA(0, 0, 665, 600, '模板设计')
    },
    // 打印设计
    displayDesign () {
      this.createPage()
      LODOP.SET_SHOW_MODE('DESIGN_IN_BROWSE', 1)
      LODOP.PRINT_DESIGN()
      // let that = this
      // LODOP.On_Return = function (TaskID, Value) {
      //   console.log(Value)
      //   that.docData = Value
      // }
      this.getProgramData()
    }

4.生成模板

// 生成模板
    getProgramData () {
      LODOP = getLodop()
      LODOP.GET_VALUE('ProgramData', 0)
      let that = this
      LODOP.On_Return = function (TaskID, Value) {
        // console.log(Value)
        that.label.content = Value
        that.getProgramCode()
      }
    }

5.获取程序代码

// 获取程序代码
    getProgramCode () {
      LODOP = getLodop()
      LODOP.GET_VALUE('ProgramCodes', 0)
      let that = this
      LODOP.On_Return = function (TaskID, Value) {
        // console.log(Value)
        that.label.original_content = Value
        that.modifyLabel()
      }
   }

6.模板重载

// 模板重载
    designByPRGData () {
      LODOP = getLodop()
      LODOP.ADD_PRINT_DATA('ProgramData', this.label.content) // 装载模板
      LODOP.SET_SHOW_MODE('DESIGN_IN_BROWSE', 1)
      LODOP.PRINT_DESIGN()
      // this.getProgramCode()
    }

7.装载数据打印

designByInStorageData () {
      for (let i = 0; i < this.printData.dataArr.length; i++) {
        LODOP = getLodop()
        LODOP.ADD_PRINT_DATA('ProgramData', this.defaultLabel.content)//                                                           装载模板
        LODOP.SET_PRINT_PAGESIZE(1, 0, 0, 'A4') //                                                                                 设置纸张
        LODOP.SET_PRINT_STYLEA('business-code', 'CONTENT', this.printData.dataArr[i].no) //                                        业务单号
        LODOP.SET_PRINT_STYLEA('entry-type', 'CONTENT', this.judgeInStorageCategory(this.printData.dataArr[i].category)) //        入库类型
        LODOP.SET_PRINT_STYLEA('warehouse-name', 'CONTENT', this.printData.dataArr[i].storage.name) //                             仓库药房名称
        LODOP.SET_PRINT_STYLEA('warehouse-code', 'CONTENT', this.printData.dataArr[i].storage.no) //                               仓库药房编码
        LODOP.SET_PRINT_STYLEA('agent', 'CONTENT', this.printData.dataArr[i].operator.user.get_full_name) //                       制单人
        LODOP.SET_PRINT_STYLEA('make-time', 'CONTENT', this.printData.dataArr[i].create_time) //                                   制单时间
        LODOP.SET_PRINT_STYLEA('review-state', 'CONTENT', this.judgeInStorageCheck(this.printData.dataArr[i].check_status)) //     审核状态
        LODOP.SET_PRINT_STYLEA('reviewer', 'CONTENT', this.printData.dataArr[i].check_operator ? this.printData.dataArr[i].check_operator.user.get_full_name : '无') //           审核人
        LODOP.SET_PRINT_STYLEA('review-time', 'CONTENT', this.printData.dataArr[i].check_time ? this.printData.dataArr[i].check_time : '') //                                  审核时间
        LODOP.SET_PRINT_STYLEA('review-remake', 'CONTENT', this.printData.dataArr[i].abandon_remarks ? this.printData.dataArr[i].abandon_remarks : '') //                           审核备注
        LODOP.SET_PRINT_STYLEA('total-price', 'CONTENT', this.printData.dataArr[i].total_price) //                                 总价
        let trStr = ''
        let tdName = this.tdNameBind(this.entryDetail.inStorage)
        trStr += `<tr>${tdName}</tr>`
        for (let j = 0; j < this.printData.dataArr[i].medicine_batches.length; j++) {
          let tdStr = this.bindTdValueInStorage(this.printData.dataArr[i].medicine_batches[j])
          trStr += `<tr>${tdStr}</tr>`
        }
        let tableStr = ''
        tableStr = '<table border="1">' + trStr + '</table>'
        LODOP.SET_PRINT_STYLEA('tablename', 'CONTENT', tableStr)
        LODOP.SET_PRINTER_INDEX(this.defaultPrinter.printer_name)
        // LODOP.PRINT()
        LODOP.PREVIEW()
      }
    }
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值