Beispiel #1
0
 def setUpClass(cls):
     cls.log = logging.getLogger("USB.py tests")
     cls.log.debug("Initializing printer object")
     cls.USBPrinterClass = getUSBPrinter()
     cls.printer = cls.USBPrinterClass(
         idVendor=int(os.environ.get('PYTHON_ESCPOS_TEST_VENDORID'), 16),
         idProduct=int(os.environ.get('PYTHON_ESCPOS_TEST_PRODUCTID'), 16))
Beispiel #2
0
 def test_setUp(cls):
     USBPrinterClass = getUSBPrinter(commandSet='Generic')
     printer = USBPrinterClass(
         idVendor=int(os.environ.get('PYTHON_ESCPOS_TEST_VENDORID'), 16),
         idProduct=int(os.environ.get('PYTHON_ESCPOS_TEST_PRODUCTID'), 16))
     cls.assertIsInstance(printer, USBPrinterClass)
     del printer
Beispiel #3
0
from escpos.connections import getUSBPrinter

printer = getUSBPrinter(
)(idVendor=0x04B8, idProduct=0x007B, inputEndPoint=0x82,
  outputEndPoint=0x01)  # Create the printer object with the connection params

printer.text("Hello World")
printer.lf()
Beispiel #4
0
def pre_printed_slip_GUPTA():
    serial_id = ""
    charges = ""
    vehical_no = ""
    first_wt = ""
    first_wt_date = ""
    first_wr_time = ""
    second_wt = ""
    second_wt_date = ""
    second_wt_time = ""
    net_wt = ""
    supplier_name = ""
    party_name = ""
    material = ""
    company_name = ""
    address = ""
    first_wt_mode = ""
    second_wt_mode = ""

    connection = sqlite3.connect("wt.db")
    results = connection.execute(
        "SELECT COMPANY_NAME,COMPANY_ADDR FROM USER_RIGHT_SET")
    for x in results:
        company_name = str(x[0])
        address = str(x[1])
    connection.close()

    connection = sqlite3.connect("wt.db")
    results = connection.execute(
        "SELECT SERIAL_ID_DISPLY,PARTY_NAME,MATERIAL_NAME,FPRM_NO,VEHICLE_NO,REMARK,MANNUAL_INS_FLG,GROSS_WT_VAL,GROSS_WT_DATE,"
        +
        "TARE_WT_VAL,TARE_WT_DATE,NET_WEIGHT_VAL,TOTAL_AMOUNT,OPERATOR_NAME,DRIVER_IN_OUT  FROM WEIGHT_MST_VW WHERE SERIAL_ID in (SELECT SERIAL_ID from PRINTER_DATA)"
    )

    for x in results:
        serial_id = str(x[0])
        party_name = str(x[1])
        material = str(x[2])
        form_no = str(x[3])
        vehical_no = str(x[4])
        remark = str(x[5])
        wt_type = str(x[14])
        gross_wt = str(x[7])
        gross_wt_date = str(x[8])
        gross_wt_time = str(x[8])
        tare_wt = str(x[9])
        tare_wt_date = str(x[10])
        tare_wt_time = str(x[10])
        net_wt = str(x[11])
        charges = str(x[12])
        operator = str(x[13])
        driver_in_out = str(x[14])
        trasport_type = ""
        mannual_flag = str(x[6])
        if (str(mannual_flag) == "Mannual"):
            mannual_flag = "[M*]"
        else:
            mannual_flag = ""
    connection.close()

    try:
        vendor_id = get_vendor_id()
        hex_int_v = int(vendor_id, 16)

        product_id = get_product_id()
        hex_int_p = int(product_id, 16)
        print("ok1")
        dev = usb.core.find(idVendor=hex_int_v, idProduct=hex_int_p)
        try:
            dev.reset()
        except ValueError:
            print("Error")
        printer = getUSBPrinter(commandSet='Generic')(
            idVendor=hex_int_v,  # 0x04b8
            idProduct=hex_int_p,  # printer
            inputEndPoint=0x82,
            outputEndPoint=0x01)
        print("ok2")
        #printer.text("\n\r")
        printer.charSpacing(1)
        printer.bold()
        #printer.text("\n\n\r")
        #printer.text("\n\r")
        printer.text("\n\r")
        printer.bold(False)
        printer.align("left")
        printer.text("      " + str(vehical_no).zfill(6) +
                     "                             " + str(serial_id) +
                     "                 " + str(remark) + "\n\r")
        printer.text(
            "                                                                   "
            + str(driver_in_out) + "\n\r")
        printer.text("\n\r")
        #printer.text("\n\r")
        printer.text("             " + str(gross_wt).zfill(6) + "  Kg." +
                     str(gross_wt_date[0:10]) + " " +
                     str(gross_wt_date[11:16]) + "            Container No.:" +
                     str(form_no) + "   \n\r")
        printer.text("\n\r")
        #printer.text("\n\r")
        printer.text("             " + str(tare_wt).zfill(6) + "  Kg. " +
                     str(tare_wt_date[0:10]) + " " + str(tare_wt_date[11:16]) +
                     "               \n\r")
        printer.text("\n\r")
        #printer.text("\n\r")
        printer.text("             " + str(net_wt).zfill(6) +
                     "  Kg.                                   Charges(Rs):" +
                     str(charges) + "                \n\r")
        printer.text("\n\r")
        printer.text("\n\r")
        printer.text("\n\r")
        printer.text("\n\r")
        printer.text("\n\r")
        printer.text("\n\r")
        printer.text("\n\r")
        printer.text("\n\r")
        #printer.text("\n\r")
        #printer.text("\n\r")
        #printer.text("\n\r")
        #printer.text("\n\r")
        printer.lf()
        print("ok3")
    except IOError:
        print("Printer Errorr. Please check printer configuration")
Beispiel #5
0
def dot_matrix_print():
    serial_id = ""
    charges = ""
    vehical_no = ""
    first_wt = ""
    first_wt_date = ""
    first_wr_time = ""
    second_wt = ""
    second_wt_date = ""
    second_wt_time = ""
    net_wt = ""
    supplier_name = ""
    party_name = ""
    material = ""

    company_name = ""
    address = ""
    first_wt_mode = ""
    second_wt_mode = ""

    connection = sqlite3.connect("wt.db")
    results = connection.execute(
        "SELECT COMPANY_NAME,COMPANY_ADDR FROM USER_RIGHT_SET")
    for x in results:
        company_name = str(x[0])
        address = str(x[1])
    connection.close()

    connection = sqlite3.connect("wt.db")
    results = connection.execute(
        "SELECT SERIAL_ID,VEHICLE_NO,FIRST_WEIGHT_VAL,FIRST_WT_CRTEATED_ON,SECOND_WT_VAL,SECOND_WT_CREATED_ON,"
        +
        "NET_WEIGHT_VAL ,(AMOUNT+AMOUNT_2) as CHARGES,PARTY_NAME,SUPPLIER_NAME,FIRST_WEIGHT_MODE,SECOND_WT_MODE,MATERIAL_NAME,MANNUAL_INS_FLG FROM WEIGHT_MST WHERE SERIAL_ID in (SELECT SERIAL_ID from PRINTER_DATA)"
    )

    for x in results:
        serial_id = str(x[0])
        charges = str(x[7])
        vehical_no = str(x[1])
        first_wt = str(x[2])
        first_wt_date = str(x[3])
        first_wr_time = str(x[3])
        second_wt = str(x[4])
        second_wt_date = str(x[5])
        second_wt_time = str(x[5])
        net_wt = str(x[6])
        supplier_name = str(x[9])
        party_name = str(x[8])
        first_wt_mode = str(x[10])
        second_wt_mode = str(x[11])
        material = str(x[12])
        mannual_flag = str(x[13])
        if (str(mannual_flag) == "Mannual"):
            mannual_flag = "[Tare Weight is Mannual]"
        else:
            mannual_flag = ""
    connection.close()

    try:
        vendor_id = get_vendor_id()
        hex_int_v = int(vendor_id, 16)
        product_id = get_product_id()
        hex_int_p = int(product_id, 16)
        print("ok1")
        dev = usb.core.find(idVendor=hex_int_v, idProduct=hex_int_p)
        try:
            dev.reset()
        except ValueError:
            print("Error")
        printer = getUSBPrinter(commandSet='Generic')(
            idVendor=hex_int_v,  # 0x04b8: 0x0005
            idProduct=hex_int_p,  # printer #0x
            inputEndPoint=0x82,
            outputEndPoint=0x01)
        print("ok2")
        printer.text(
            "===================================================================\n\r"
        )
        printer.charSpacing(1)
        printer.bold()
        printer.text("              " + str(company_name) + "         \n\r")
        printer.text("           " + str(address) + "         \n\r")
        printer.bold(False)
        printer.align("left")
        printer.text(
            "===================================================================\n\r"
        )
        printer.text("Serial No    : " + str(serial_id) +
                     "                  Vehical No: " + str(vehical_no) +
                     " \n\r")
        printer.text("Supplier Name: " + str(supplier_name) +
                     "              Party Name: " + str(party_name) + " \n\r")
        printer.text("Material     : " + str(material) +
                     "                         \n\r")
        printer.text(
            "|---------------------------------------------------------------- \n\r"
        )
        printer.text(
            "| Weight Type          |    Date   |     Time    |Weight (Kg)|\n\r"
        )
        printer.text(
            "|-----------------------------------------------------------------\n\r"
        )
        printer.text("| First Wt. (" + str(first_wt_mode) + ")    | " +
                     str(first_wt_date[0:10]) + "  | " +
                     str(first_wt_date[11:16]) + "       |  " + str(first_wt) +
                     "  |\n\r")
        printer.text(
            "|-----------------------------------------------------------------\n\r"
        )
        printer.text("| Second Wt. (" + str(second_wt_mode) + ")    | " +
                     str(second_wt_date[0:10]) + " | " +
                     str(second_wt_date[11:16]) + "        |  " +
                     str(second_wt) + "  |\n\r")
        printer.text(
            "|-----------------------------------------------------------------\n\r"
        )
        printer.text("                                   Net Weight (Kg): ")
        printer.doubleWidth()
        printer.doubleHeight()
        printer.text("" + str(net_wt) + "  \n\r")
        printer.doubleWidth(False)
        printer.doubleHeight(False)
        printer.text("                                      Charges (Rs): ")
        printer.doubleWidth()
        printer.doubleHeight()
        printer.text("" + str(charges) + "  \n\r")
        printer.doubleWidth(False)
        printer.doubleHeight(False)
        printer.text(str(mannual_flag) + "\n\r")
        printer.text(
            "---------*************  Thanking You   *************----------\n\r"
        )
        printer.lf()
        print("ok3")
    except IOError:
        print("Printer Errorr. Please check printer configuration")
def report_print():
    whr_sql = ""

    ISSUE_IDS = []
    TOTAL_TRUCKS = []
    TOTAL_NET_WT = []
    TOTAL_ACCEPTED_BAGS = []
    ORDER_IDS = []

    printer_header = ""
    printer_title = ""
    printer_footer = ""

    connection = sqlite3.connect("fci.db")
    results = connection.execute(
        "SELECT REPORT_ENTITY,REPORT_BY,REPORT_FROM_DATE,REPORT_TO_DATE,REPORT_BATCH_ID,PRINTER_HEATER_TITLE, PRINTER_HEADER ,  PRINTER_FOOTER   FROM GLOBAL_VAR"
    )
    for x in results:
        if (str(x[1]) == 'DATE_RANGE'):
            whr_sql = " WHERE strftime('%Y-%m-%d',START_DATE)  between '" + str(
                x[2]) + "' and '" + str(x[3]) + "' limit 400"
        elif (str(x[1]) == 'BY_BATCH_ID'):
            whr_sql = "WHERE BATCH_ID = '" + str(x[4]) + "'"
        printer_header = str(x[6])
        printer_title = str(x[5])
        printer_footer = str(x[7])
    connection.close()

    connection = sqlite3.connect("fci.db")
    results = connection.execute(
        "select ISSUE_ID ,TOTAL_TRUCKS, TOTAL_NET_WT, TOTAL_ACCEPTED_BAGS,(SELECT A.ORDER_ID FROM ISSUE_MST A WHERE A.ISSUE_ID=ISSUE_ID) AS ORDER_ID  from ISSUE_LIST_VW "
        + str(whr_sql))
    for x in results:
        ISSUE_IDS.append(str(x[0]))
        TOTAL_TRUCKS.append(str(x[1]))
        TOTAL_NET_WT.append(str(x[2]))
        TOTAL_ACCEPTED_BAGS.append(str(x[3]))
        ORDER_IDS.append(str(x[4]))
    connection.close()

    try:
        vendor_id = get_vendor_id()
        hex_int_v = int(vendor_id, 16)
        product_id = get_product_id()
        hex_int_p = int(product_id, 16)
        print("ok1")
        dev = usb.core.find(idVendor=hex_int_v, idProduct=hex_int_p)
        try:
            dev.reset()
        except ValueError:
            print("Error")
        printer = getUSBPrinter(commandSet='Generic')(
            idVendor=hex_int_v,  # 0x04b8: 0x0005
            idProduct=hex_int_p,  # printer #0x
            inputEndPoint=0x82,
            outputEndPoint=0x01)
        print("ok2")
        printer.text(
            "=======================================================================\n\r"
        )
        printer.text("     \n\r")
        printer.charSpacing(1)
        printer.bold()
        printer.text("                    " + str(printer_title) +
                     "         \n\r")
        printer.text("            " + str(printer_header) + "         \n\r")
        printer.bold(False)
        printer.align("left")
        printer.text("     \n\r")
        printer.text(
            "========================================================================\n\r"
        )
        printer.text("     \n\r")
        for i in range(len(ISSUE_IDS)):
            printer.text("Order Id        : " + str(ORDER_IDS[i]) +
                         "                     Total Trucks    : " +
                         str(TOTAL_TRUCKS[i]).zfill(4) + " \n\r")
            printer.text("Total Net Wt(Kg): " + str(TOTAL_NET_WT[i]).zfill(6) +
                         "                Total Accepted Bags  : " +
                         str(TOTAL_ACCEPTED_BAGS[i]).zfill(4) + " \n\r")

            printer.text("     \n\r")
            printer.text(
                "|------------------------------------------------------------------------\n\r"
            )
            printer.text(
                "| Slip.No. |  Vehical No  | No.Of.Bags. | Net Wt | Target Location    |\n\r"
            )
            printer.text(
                "|------------------------------------------------------------------------\n\r"
            )

            connection = sqlite3.connect("fci.db")
            results = connection.execute(
                "select SERIAL_ID,VEHICLE_NO,ACCPTED_BAGS,NET_WEIGHT_VAL,TARGET_STORAGE from WEIGHT_MST_FCI_VW WHERE ISSUE_ID='"
                + str(ISSUE_IDS[i]) + "'")
            for x in results:
                printer.text("|  " + str(x[0]).zfill(6) + "  | " + str(x[1]) +
                             "  |     " + str(x[2]).zfill(4) + "    |  " +
                             str(x[3]).zfill(6) + " | " + str(x[4]) + " \n\r")
                printer.text(
                    "|                                                                  \n\r"
                )

            printer.text(
                "|------------------------------------------------------------------------\n\r"
            )

        printer.text(str(printer_footer) + " \n\r")
        printer.lf()
        print("ok3")
    except IOError:
        print("Printer Errorr. Please check printer configuration")
 def test_setUp(cls):
     USBPrinterClass = getUSBPrinter(commandSet='Generic')
     printer = USBPrinterClass(idVendor=int(os.environ.get('PYTHON_ESCPOS_TEST_VENDORID'), 16),
                               idProduct=int(os.environ.get('PYTHON_ESCPOS_TEST_PRODUCTID'), 16))
     cls.assertIsInstance(printer, USBPrinterClass)
     del printer
 def setUpClass(cls):
     cls.log = logging.getLogger("USB.py tests")
     cls.log.debug("Initializing printer object")
     cls.USBPrinterClass = getUSBPrinter()
     cls.printer = cls.USBPrinterClass(idVendor=int(os.environ.get('PYTHON_ESCPOS_TEST_VENDORID'), 16),
                                       idProduct=int(os.environ.get('PYTHON_ESCPOS_TEST_PRODUCTID'), 16))
Beispiel #9
0
def report_print():
    whr_sql = ""
    #Title="Dispatch Report as on "+datetime.datetime.now().strftime("%d %b %Y")
    #SiteAddress="Niharika 401, Plot No 105,Sector 50 new Nerul Navi Mumbai Pin 400706"
    BATCH_IDS = []
    TOTAL_TRUCKS = []
    TOTAL_NET_WT = []
    TOTAL_ACCEPTED_BAGS = []
    RECIPT_IDS = []
    printer_header = ""
    printer_title = ""
    printer_footer = ""

    connection = sqlite3.connect("fci.db")
    results = connection.execute(
        "SELECT REPORT_ENTITY,REPORT_BY,REPORT_FROM_DATE,REPORT_TO_DATE,REPORT_BATCH_ID,PRINTER_HEATER_TITLE, PRINTER_HEADER ,  PRINTER_FOOTER  FROM GLOBAL_VAR"
    )
    for x in results:
        if (str(x[1]) == 'DATE_RANGE'):
            whr_sql = " WHERE strftime('%Y-%m-%d',START_DATE)  between '" + str(
                x[2]) + "' and '" + str(x[3]) + "' limit 400"
        elif (str(x[1]) == 'BY_BATCH_ID'):
            whr_sql = "WHERE BATCH_ID = '" + str(x[4]) + "'"

        printer_header = str(x[6])
        printer_title = str(x[5])
        printer_footer = str(x[7])

    connection.close()

    connection = sqlite3.connect("fci.db")
    results = connection.execute(
        "select BATCH_ID ,TOTAL_TRUCKS, TOTAL_NET_WT, TOTAL_ACCEPTED_BAGS,(SELECT A.BATCH_ID_DISPLAY FROM BATCH_MST A WHERE A.BATCH_ID=BATCH_ID) as RECIPT_ID from BATCH_LIST_VW "
        + str(whr_sql))
    for x in results:
        BATCH_IDS.append(str(x[0]))
        TOTAL_TRUCKS.append(str(x[1]))
        TOTAL_NET_WT.append(str(x[2]))
        TOTAL_ACCEPTED_BAGS.append(str(x[3]))
        RECIPT_IDS.append(str(x[4]))
    connection.close()

    try:
        vendor_id = get_vendor_id()
        hex_int_v = int(vendor_id, 16)
        product_id = get_product_id()
        hex_int_p = int(product_id, 16)
        print("ok1")
        dev = usb.core.find(idVendor=hex_int_v, idProduct=hex_int_p)
        try:
            dev.reset()
        except ValueError:
            print("Error")
        printer = getUSBPrinter(commandSet='Generic')(
            idVendor=hex_int_v,  # 0x04b8: 0x0005
            idProduct=hex_int_p,  # printer #0x
            inputEndPoint=0x82,
            outputEndPoint=0x01)
        print("ok2")
        printer.text(
            "=======================================================================\n\r"
        )
        printer.text("     \n\r")
        printer.charSpacing(1)
        printer.bold()
        printer.text("                      " + str(printer_title) +
                     "         \n\r")
        printer.text("            " + str(printer_header) + "         \n\r")
        printer.bold(False)
        printer.align("left")
        printer.text("     \n\r")
        printer.text(
            "========================================================================\n\r"
        )
        printer.text("     \n\r")
        for i in range(len(BATCH_IDS)):
            printer.text("Recipt Id        : " + str(RECIPT_IDS[i]).zfill(6) +
                         "                     Total Trucks    : " +
                         str(TOTAL_TRUCKS[i]).zfill(4) + " \n\r")
            printer.text("Total Net Wt(Kg): " + str(TOTAL_NET_WT[i]).zfill(6) +
                         "                Total Accepted Bags  : " +
                         str(TOTAL_ACCEPTED_BAGS[i]).zfill(4) + " \n\r")

            printer.text("     \n\r")
            printer.text(
                "|------------------------------------------------------------------------\n\r"
            )
            printer.text(
                "| Slip.No. |  Vehical No  | No.Of.Bags. | Net Wt | Storage Name    |\n\r"
            )
            printer.text(
                "|------------------------------------------------------------------------\n\r"
            )

            connection = sqlite3.connect("fci.db")
            results = connection.execute(
                "select SERIAL_ID,VEHICLE_NO,ACCPTED_BAGS,NET_WEIGHT_VAL,TARGET_STORAGE from WEIGHT_MST_FCI_VW WHERE BATCH_ID='"
                + str(BATCH_IDS[i]) + "'")
            for x in results:
                printer.text("|  " + str(x[0]).zfill(6) + "  | " + str(x[1]) +
                             "  |     " + str(x[2]).zfill(4) + "    |  " +
                             str(x[3]).zfill(6) + " | " + str(x[4]) + " \n\r")
                printer.text(
                    "|                                                                  \n\r"
                )

            printer.text(
                "|------------------------------------------------------------------------\n\r"
            )

        printer.text(str(printer_footer) + " \n\r")
        printer.lf()
        print("ok3")
    except IOError:
        print("Printer Errorr. Please check printer configuration")
Beispiel #10
0
from escpos.connections import getUSBPrinter


printer = getUSBPrinter()(idVendor=0x1504,
                          idProduct=0x0006
                          inputEndPoint=0x82,
                          outputEndPoint=0x01) # Create the printer object with the connection params

# Print a image
printer.image('/home/shantanu/companylogo.gif')

printer.text("Hello World")
def dot_matrix_print():
    serial_id=""
    charges=""
    vehical_no=""
    first_wt=""
    first_wt_date=""
    first_wr_time=""
    second_wt=""
    second_wt_date=""
    second_wt_time=""
    net_wt=""
    supplier_name=""
    party_name=""
    material=""
        
    company_name=""
    address=""
    first_wt_mode=""
    second_wt_mode=""
    total_bags=0
    avg_wt_per_bag=0
    note=""
    printer_name=""
    connection = sqlite3.connect("wt.db")       
    results=connection.execute("SELECT COMPANY_NAME,COMPANY_ADDR FROM USER_RIGHT_SET")
    for x in results:
         company_name=str(x[0])
         address=str(x[1])        
    connection.close()
     
     
    connection = sqlite3.connect("services.db")       
    results=connection.execute("SELECT PRINT_NOTE FROM DEVICE_CONF")
    for x in results:
                 note=str(x[0])                 
    connection.close() 
     
        
    connection = sqlite3.connect("wt.db")       
    results=connection.execute("SELECT SERIAL_ID,VEHICLE_NO,FIRST_WEIGHT_VAL,FIRST_WT_CRTEATED_ON,SECOND_WT_VAL,SECOND_WT_CREATED_ON,"+
                                           "NET_WEIGHT_VAL ,(AMOUNT+AMOUNT_2) as CHARGES,PARTY_NAME,SUPPLIER_NAME,FIRST_WEIGHT_MODE,SECOND_WT_MODE,MATERIAL_NAME,IFNULL(round(TOTAL_BAGS,2),0),IFNULL(round(AVG_BAG_WT,2),0) FROM WEIGHT_MST WHERE SERIAL_ID in (SELECT SERIAL_ID from PRINTER_DATA)") 
        
    for x in results:                
          serial_id=str(x[0])
          charges=str(x[7])
          vehical_no=str(x[1])
          first_wt=str(x[2])
          first_wt_date=str(x[3])
          first_wr_time=str(x[3])
          second_wt=str(x[4])
          second_wt_date=str(x[5])
          second_wt_time=str(x[5])
          net_wt=str(x[6])
          supplier_name=str(x[9])
          party_name=str(x[8])
          first_wt_mode=str(x[10])
          second_wt_mode=str(x[11])
          material=str(x[12])
          total_bags=str(x[13])
          avg_wt_per_bag=str(x[14])
    connection.close()
        
    try:
        vendor_id=get_vendor_id()
        hex_int_v = int(vendor_id, 16)
        product_id=get_product_id()
        hex_int_p = int(product_id, 16)
        print("ok1")
        dev = usb.core.find(idVendor=hex_int_v, idProduct=hex_int_p)
        try:
            dev.reset()
        
            printer = getUSBPrinter(commandSet='Generic')(idVendor=hex_int_v,  # 0x04b8: 0x0005
                              idProduct=hex_int_p,  # printer #0x
                              inputEndPoint=0x82,
                              outputEndPoint=0x01)
        
            print("ok2")
            printer.text("===================================================================\n\r")
            printer.charSpacing(1)            
            printer.bold()
            printer.text("              "+str(company_name)+"         \n\r" )              
            printer.text("           "+str(address)+"         \n\r" )
            printer.bold(False)
            printer.align("left")
            printer.text("===================================================================\n\r")        
            printer.text("Serial No    : "+str(serial_id).zfill(6)+"                  Vehicle No: "+str(vehical_no)+" \n\r")
            printer.text("Supplier Name: "+str(supplier_name)+"             Party Name: "+str(party_name)+" \n\r")
            printer.text("Material     : "+str(material)+"                   Charges (Rs): "+str(charges)+"      \n\r")
            if(float(total_bags) > 0):
                        printer.text("Total Bags  : "+str(total_bags)+"                          Avg. Wt. Per Bag: "+str(avg_wt_per_bag)+" \n\r")            
            
            printer.text("|---------------------------------------------------------------- \n\r")
            printer.text("| Weight Type          |    Date   |     Time    |Weight (Kg)|\n\r")
            printer.text("|-----------------------------------------------------------------\n\r")
            printer.text("| First Wt. ("+str(first_wt_mode)+")    | "+str(first_wt_date[0:10])+"  | "+str(first_wt_date[11:16])+"       |  "+str(first_wt)+"  |\n\r")
            printer.text("|-----------------------------------------------------------------\n\r")
            printer.text("| Second Wt. ("+str(second_wt_mode)+")    | "+str(second_wt_date[0:10])+" | "+str(second_wt_date[11:16])+"        |  "+str(second_wt)+"  |\n\r")
            printer.text("|-----------------------------------------------------------------\n\r")
            printer.text("| Net Wt. (Kg)                                    "+str(net_wt)+"  |\n\r")
            printer.text("|-----------------------------------------------------------------\n\r")
            
           
            
            if(str(note) != ""):
                    printer.text(str(note)+"\n\r")
            printer.text("---------*************  Thanking You   *************----------\n\r")             
            printer.lf()
        except ValueError:
            print("Error")
        except AttributeError:
            print("AttributeError ...")
        print("ok3")
    except IOError:
        print("Printer Errorr. Please check printer configuration")
def pre_printed_slip():
        serial_id=""
        charges=""
        vehical_no=""
        first_wt=""
        first_wt_date=""
        first_wr_time=""
        second_wt=""
        second_wt_date=""
        second_wt_time=""
        net_wt=""
        supplier_name=""
        party_name=""
        material=""
        company_name=""
        address=""
        first_wt_mode=""
        second_wt_mode=""
        
        connection = sqlite3.connect("wt.db")       
        results=connection.execute("SELECT COMPANY_NAME,COMPANY_ADDR FROM USER_RIGHT_SET")
        for x in results:
              company_name=str(x[0])
              address=str(x[1])        
        connection.close()
        
        
        connection = sqlite3.connect("wt.db")       
        results=connection.execute("SELECT SERIAL_ID,VEHICLE_NO,FIRST_WEIGHT_VAL,FIRST_WT_CRTEATED_ON,SECOND_WT_VAL,SECOND_WT_CREATED_ON,"+
                                           "NET_WEIGHT_VAL ,(AMOUNT+AMOUNT_2) as CHARGES,PARTY_NAME,SUPPLIER_NAME,FIRST_WEIGHT_MODE,SECOND_WT_MODE,MATERIAL_NAME,DRIVER_IN_OUT FROM WEIGHT_MST WHERE SERIAL_ID in (SELECT SERIAL_ID from PRINTER_DATA)") 
        
        for x in results:                
               serial_id=str(x[0])
               charges=str(x[7])
               vehical_no=str(x[1])
               first_wt=str(x[2])
               first_wt_date=str(x[3])
               first_wr_time=str(x[3])
               second_wt=str(x[4])
               second_wt_date=str(x[5])
               second_wt_time=str(x[5])
               net_wt=str(x[6])
               supplier_name=str(x[9])
               party_name=str(x[8])
               first_wt_mode=str(x[10])
               second_wt_mode=str(x[11])
               material=str(x[12])
               driver_in=str(x[13])
        connection.close()
        
        try:
            vendor_id=get_vendor_id()
            hex_int_v = int(vendor_id, 16)
            
            product_id=get_product_id()
            hex_int_p = int(product_id, 16)
            print("ok1")
            dev = usb.core.find(idVendor=hex_int_v, idProduct= hex_int_p)
            try:
                dev.reset()
           
                printer = getUSBPrinter(commandSet='Generic')(idVendor=hex_int_v,  # 0x04b8
                                  idProduct= hex_int_p,  # printer
                                  inputEndPoint=0x82,
                                  outputEndPoint=0x01)
                print("ok2")
                printer.text("\n\r")
                printer.charSpacing(1)            
                printer.bold()
                printer.text("\n\r" )              
                printer.text("\n\r" )    
                printer.bold(False)
                printer.align("left")
                printer.text("\n\r" )
                printer.text("\n\r" )  
                printer.text("\n\r" )     
                printer.text("            "+str(serial_id).zfill(7)+"                             "+str(vehical_no)+" \n\r")
                printer.text("\n\r" )     
                printer.text("            "+str(charges)+"\n\r")
                printer.text("\n\r" )     
                printer.text("            "+str(first_wt)+"                 "+str(first_wt_date[0:10])+"         "+str(first_wt_date[11:16])+" \n\r")
                printer.text("\n\r" )
                printer.text("\n\r" ) 
                printer.text("            "+str(second_wt)+"                 "+str(second_wt_date[0:10])+"         "+str(second_wt_date[11:16])+" \n\r")
                printer.text("\n\r" )            
                #printer._raw("\0x1b\0x21\0x31")
                #printer.text(0x21))
                #printer.text(hex(0x49))
                #printer.set(width=5, height=7)
                printer.text("            "+str(net_wt)+"                                          "+str(driver_in) +" \n\r")
                #printer.set(width=1, height=1)
                #printer.set()
                #printer._raw("\0x1b\0x21\0x0")
                #printer.text(hex(0x1b))
                #printer.text(hex(0x21))
                #printer.text(hex(0x0))
                printer.text("\n\r" )
                printer.text("\n\r" )
                printer.text("\n\r" )
                printer.text("\n\r" )
                printer.text("\n\r" )           
                printer.text("\n\r" )
                printer.text("\n\r" ) 
                printer.lf()
            except ValueError:
                print("Error")
            except AttributeError:
                print("AttributeError ...")
            print("ok3")
        except IOError:
            print("Printer Errorr. Please check printer configuration")         
    def dot_matrix_print(self):
        self.serial_id = ""
        self.charges = ""
        self.vehical_no = ""
        self.first_wt = ""
        self.first_wt_date = ""
        self.first_wr_time = ""
        self.second_wt = ""
        self.second_wt_date = ""
        self.second_wt_time = ""
        self.net_wt = ""
        self.supplier_name = ""
        self.party_name = ""
        self.material = ""
        self.company_name = ""
        self.address = ""
        self.first_wt_mode = ""
        self.second_wt_mode = ""

        connection = sqlite3.connect("wt.db")
        results = connection.execute(
            "SELECT COMPANY_NAME,COMPANY_ADDR FROM USER_RIGHT_SET")
        for x in results:
            self.company_name = str(x[0])
            self.address = str(x[1])
        connection.close()

        dev = usb.core.find(idVendor=0x04b8, idProduct=0x0005)
        try:
            dev.reset()
        except:
            print("Error")
        printer = getUSBPrinter()(
            idVendor=
            0x04b8,  # USB vendor and product Ids for Bixolon SRP-350plus
            idProduct=0x0005,  # printer
            inputEndPoint=0x82,
            outputEndPoint=0x01)

        printer.text(
            "=============================================================================\n\r"
        )
        printer.charSpacing(1)
        #printer.bold()
        printer.text("              " + str(self.company_name) +
                     "         \n\r")
        printer.text("           " + str(self.address) + "         \n\r")
        #printer.bold(False)
        printer.align("left")
        printer.text(
            "=============================================================================\n\r"
        )

        connection = sqlite3.connect("wt.db")
        results = connection.execute(
            "SELECT SERIAL_ID_DISPLY,VEHICLE_NO,PARTY_NAME,SUPPLIER_NAME,TRANSPORT_NAME,MATERIAL_NAME,GROSS_WT_DATE ,GROSS_WT_VAL, TARE_WT_DATE ,TARE_WT_VAL  ,NET_WEIGHT_VAL, (IFNULL(GROSS_WT_RATE,0)+ IFNULL(TARE_WT_RATE,0)) as TOTAL_AMT FROM WEIGHT_MST_VW LIMIT 5 "
        )
        for x in results:
            printer.text("Party Name:" + str(x[2]) + "  Supplier Name: " +
                         str(x[3]) + "     Transport:" + str(x[4]) + "\n\r")
            printer.text("Transport Name:" + str(x[5]) + "\n\r")
            printer.text(
                "----------------------------------------------------------------------------- \n\r"
            )
            printer.text(
                "Sr.ID.|Vehical.No|GrossWtDt|GrossWt|TareWtDt|TareWt|NetWt|Total Amount \n\r"
            )
            printer.text(
                "----------------------------------------------------------------------------- \n\r"
            )
            printer.text("|" + str(x[0]) + "|" + str(x[1]) + "|" + str(x[6]) +
                         "|" + str(x[7]) + "|" + str(x[8]) + "|" + str(x[9]) +
                         "|" + str(x[10]) + "|" + str(x[10]) + "\n\r")
            printer.text(
                "----------------------------------------------------------------------------- \n\r"
            )
        connection.close()
Beispiel #14
0
from escpos.connections import getUSBPrinter


#printer = getUSBPrinter()(idVendor=0x04F9,
 #                         idProduct=0x20A8,
  #                        inputEndPoint=0x82,
   #                       outputEndPoint=0x01)
#
#This
#47
#Decimal VendorID=2867 & ProductID=1794
#39
#Hexadecimal VendorID=0xb33 & ProductID=0x702


printer = getUSBPrinter(commandSet='Generic')(idVendor=0x04f9, idProduct=0x20a8)
#dev = usb.core.find(idVendor=0x04F9, idProduct=0x20A8)
printer.text("Hello World")
printer.lf()


https://download.brother.com/welcome/dlfp100575/ql1110nwbpdrv-2.1.4-0.i386.deb
def report_print():
    serial_id = ""
    charges = ""
    vehical_no = ""
    first_wt = ""
    first_wt_date = ""
    first_wr_time = ""
    second_wt = ""
    second_wt_date = ""
    second_wt_time = ""
    net_wt = ""
    supplier_name = ""
    party_name = ""
    material = ""

    company_name = ""
    address = ""
    first_wt_mode = ""
    second_wt_mode = ""

    SER_ID = []
    VEHICLE_NO = []
    PARTY_NAME = []
    MATERIAL_NAME = []
    GROSS_WT_DATE = []
    GROSS_WT_VAL = []
    TARE_WT_DATE = []
    TARE_WT_VAL = []
    NET_WEIGHT_VAL = []
    TOTAL_AMT = []
    printer_name = ""

    connection = sqlite3.connect("wt.db")
    results = connection.execute(
        "SELECT COMPANY_NAME,COMPANY_ADDR||' Phone:'||CONTACT_NO FROM USER_RIGHT_SET"
    )
    for x in results:
        company_name = str(x[0])
        address = str(x[1])
    connection.close()

    connection = sqlite3.connect("wt.db")
    results = connection.execute(
        "SELECT REPORT_FROM_DATE ,REPORT_TO_DATE,FILTER_COL,ALL_FLAG,total_amount,FILTER_COL_VAL from PRINTER_DATA"
    )
    for x in results:
        from_date = str(x[0])
        to_date = str(x[1])
        filter_col_name = str(x[2])
        all_flag = str(x[3])
        total_amount = str(x[4])
        filter_col_val = str(x[5])
    connection.close()
    if (str(all_flag) == 'ACTIVE'):
        whr_str = " WHERE strftime('%Y-%m-%d',FIRST_WT_CRTEATED_ON)  between '" + str(
            from_date) + "' and '" + str(to_date) + "' limit 5000"
        party_name = ""
    else:
        if (filter_col_name == "Party Name"):
            whr_str = " WHERE strftime('%Y-%m-%d',FIRST_WT_CRTEATED_ON)  between '" + str(
                from_date) + "' and '" + str(
                    to_date) + "' AND PARTY_NAME='" + str(
                        filter_col_val) + "' limit 5000 "

        elif (filter_col_name == "Supplier Name"):
            whr_str = " WHERE strftime('%Y-%m-%d',FIRST_WT_CRTEATED_ON)  between '" + str(
                from_date) + "' and '" + str(
                    to_date) + "' AND SUPPLIER_NAME='" + str(
                        filter_col_val) + "' limit 5000 "

        elif (filter_col_name == "Transport Name"):
            whr_str = " WHERE strftime('%Y-%m-%d',FIRST_WT_CRTEATED_ON)  between '" + str(
                from_date) + "' and '" + str(
                    to_date) + "' AND TRANSPORT_NAME='" + str(
                        filter_col_val) + "' limit 5000 "

        else:
            whr_str = " WHERE strftime('%Y-%m-%d',FIRST_WT_CRTEATED_ON)  between '" + str(
                from_date) + "' and '" + str(to_date) + "' limit 5000 "

    connection = sqlite3.connect("wt.db")
    if (whr_str != ""):
        results = connection.execute(
            "SELECT SUM(TOTAL_AMOUNT) FROM WEIGHT_MST_VW " + str(whr_str))
    else:
        results = connection.execute(
            "SELECT SUM(TOTAL_AMOUNT) FROM WEIGHT_MST_VW ")
    for x in results:
        total_amount = str(x[0])

    if (filter_col_name != "collection_report"):
        connection = sqlite3.connect("wt.db")
        results = connection.execute(
            "SELECT SERIAL_ID_DISPLY,VEHICLE_NO,PARTY_NAME,MATERIAL_NAME,GROSS_WT_DATE ,GROSS_WT_VAL, TARE_WT_DATE ,TARE_WT_VAL  ,NET_WEIGHT_VAL, (IFNULL(GROSS_WT_RATE,0)+ IFNULL(TARE_WT_RATE,0)) as TOTAL_AMT FROM WEIGHT_MST_VW "
            + str(whr_str))

        for x in results:
            SER_ID.append(str(x[0]))
            VEHICLE_NO.append(str(x[1]))
            PARTY_NAME.append(str(x[2]))
            MATERIAL_NAME.append(str(x[3]))
            GROSS_WT_DATE.append(str(x[4]))
            GROSS_WT_VAL.append(str(x[5]))
            TARE_WT_DATE.append(str(x[6]))
            TARE_WT_VAL.append(str(x[7]))
            NET_WEIGHT_VAL.append(str(x[8]))
            TOTAL_AMT.append(str(x[9]))
        connection.close()

        try:
            vendor_id = get_vendor_id()
            hex_int_v = int(vendor_id, 16)
            product_id = get_product_id()
            hex_int_p = int(product_id, 16)
            print("ok1")
            dev = usb.core.find(idVendor=hex_int_v, idProduct=hex_int_p)
            try:
                dev.reset()

                printer = getUSBPrinter(commandSet='Generic')(
                    idVendor=hex_int_v,  # 0x04b8: 0x0005
                    idProduct=hex_int_p,  # printer #0x
                    inputEndPoint=0x82,
                    outputEndPoint=0x01)
                print("ok2")
                printer.text(
                    "======================================================================\n\r"
                )
                printer.text("     \n\r")
                printer.charSpacing(1)
                printer.bold()
                printer.text("        " + str(company_name) + "         \n\r")
                printer.text(" " + str(address) + "         \n\r")
                printer.bold(False)
                printer.align("left")
                printer.text("     \n\r")
                printer.text(
                    "======================================================================\n\r"
                )
                printer.text("     \n\r")
                printer.text("From Date        : " + str(from_date) +
                             "                To Date     : " + str(to_date) +
                             " \n\r")
                printer.text("Total Amount(Rs) : " + str(total_amount) +
                             "             Report Date : " +
                             str(datetime.datetime.now().strftime(
                                 "%d %b %Y %H:%M:%S")) + " \n\r")

                if (str(all_flag) != 'ACTIVE'):
                    printer.text(
                        str(filter_col_val) + " : " + str(filter_col_val) +
                        " \n\r")

                printer.text("     \n\r")
                printer.text(
                    "|-------------------------------------------------------------------\n\r"
                )
                printer.text(
                    "| #      |  Vehicle No  |Gross Wt|Gross-Date  |Tare Wt | Tare-Date  \n\r"
                )
                printer.text(
                    "|                                |Time                 | Time       \n\r"
                )
                printer.text(
                    "|-------------------------------------------------------------------\n\r"
                )
                for i in range(len(SER_ID)):
                    printer.text("| " + str(SER_ID[i]).zfill(6) + " | " +
                                 str(VEHICLE_NO[i]) + " | " +
                                 str(GROSS_WT_VAL[i]).zfill(6) + " | " +
                                 str(GROSS_WT_DATE[i]).zfill(10)[0:10] +
                                 " | " + str(TARE_WT_VAL[i]).zfill(6) + " | " +
                                 str(TARE_WT_DATE[i]).zfill(10)[0:10] +
                                 " |\n\r")
                    printer.text("|                                 " +
                                 str(GROSS_WT_DATE[i])[11:16] +
                                 "                      " +
                                 str(TARE_WT_DATE[i]).zfill(6)[11:16] + "\n\r")
                    printer.text("   Net Wt : " +
                                 str(NET_WEIGHT_VAL[i]).zfill(6) +
                                 " Charges (Rs) : " +
                                 str(TOTAL_AMT[i]).zfill(7) + " \n\r")
                    printer.text(
                        "|-------------------------------------------------------------------\n\r"
                    )

                printer.text(
                    "*******************  Thanking You   ********************\n\r"
                )
                printer.lf()
            except ValueError:
                print("Error")
            except AttributeError:
                print("AttributeError ...")
            print("ok3")
        except IOError:
            print("Printer Errorr. Please check printer configuration")
    else:
        print("print here collection report")
        connection = sqlite3.connect("wt.db")
        results = connection.execute(
            "SELECT SERIAL_ID_DISPLY,VEHICLE_NO,(IFNULL(GROSS_WT_RATE,0)+ IFNULL(TARE_WT_RATE,0)) as TOTAL_AMT FROM WEIGHT_MST_VW "
            + str(whr_str))

        for x in results:
            SER_ID.append(str(x[0]))
            VEHICLE_NO.append(str(x[1]))
            TOTAL_AMT.append(str(x[2]))
        connection.close()

        try:
            vendor_id = get_vendor_id()
            hex_int_v = int(vendor_id, 16)
            product_id = get_product_id()
            hex_int_p = int(product_id, 16)
            print("ok1")
            dev = usb.core.find(idVendor=hex_int_v, idProduct=hex_int_p)
            try:
                dev.reset()

                printer = getUSBPrinter(commandSet='Generic')(
                    idVendor=hex_int_v,  # 0x04b8: 0x0005
                    idProduct=hex_int_p,  # printer #0x
                    inputEndPoint=0x82,
                    outputEndPoint=0x01)
                print("ok2")
                printer.text(
                    "======================================================================\n\r"
                )
                printer.text("     \n\r")
                printer.charSpacing(1)
                printer.bold()
                printer.text("        " + str(company_name) + "         \n\r")
                printer.text(" " + str(address) + "         \n\r")
                printer.bold(False)
                printer.align("left")
                printer.text("     \n\r")
                printer.text(
                    "======================================================================\n\r"
                )
                printer.text("     \n\r")
                printer.text("From Date        : " + str(from_date) +
                             "                To Date     : " + str(to_date) +
                             " \n\r")
                printer.text("Total Amount(Rs) : " + str(total_amount) +
                             "             Report Date : " +
                             str(datetime.datetime.now().strftime(
                                 "%d %b %Y %H:%M:%S")) + " \n\r")
                printer.text("     \n\r")
                printer.text(
                    "|-------------------------------------------------------------------\n\r"
                )
                printer.text(
                    "| Serial No    |  Vehicle No  | Changes(Rs) \n\r")
                printer.text(
                    "|-------------------------------------------------------------------\n\r"
                )
                for i in range(len(SER_ID)):
                    printer.text("| " + str(SER_ID[i]).zfill(6) + "    |  " +
                                 str(VEHICLE_NO[i]) + "  | " +
                                 str(TOTAL_AMT[i]).zfill(7) + " \n\r")
                printer.text(
                    "*******************  Thanking You   ********************\n\r"
                )
                printer.lf()
            except ValueError:
                print("Error")
            except AttributeError:
                print("AttributeError ...")
            print("ok3")
        except IOError:
            print("Printer Errorr. Please check printer configuration")
Beispiel #16
0
def dot_matrix_print():
    serial_id = ""
    vehical_no = ""
    batch_id = ""
    tare_wt = ""
    tare_wt_dt = ""
    gross_wt = ""
    gross_wt_date = ""
    net_wt = ""
    accpted_bags = ""
    driver_in_out = ""
    contractor = ""
    Target_storage = ""

    order_id = ""
    truck_num = ""

    printer_header = ""
    printer_title = ""
    printer_footer = ""

    duplicate_flg = ""
    duplicate_str = ""

    connection = sqlite3.connect("fci.db")
    results = connection.execute(
        "SELECT  PRINTER_HEATER_TITLE, PRINTER_HEADER ,  PRINTER_FOOTER FROM GLOBAL_VAR"
    )
    for x in results:
        printer_header = str(x[1])
        printer_title = str(x[0])
        printer_footer = str(x[2])
    connection.close()

    connection = sqlite3.connect("fci.db")
    results = connection.execute("SELECT DUPLICATE_FLG FROM PRINTER_DATA")
    for x in results:
        duplicate_flg = str(x[0])
        if (str(duplicate_flg) == "Yes"):
            duplicate_str = "DUPLICATE"
        else:
            duplicate_str = ""
    connection.close()

    connection = sqlite3.connect("fci.db")
    results = connection.execute(
        "SELECT SERIAL_ID,VEHICLE_NO,ISSUE_ID,IFNULL(TARE_WT_VAL,0),TARE_WT_DATE,IFNULL(GROSS_WT_VAL,0),GROSS_WT_DATE,IFNULL(NET_WEIGHT_VAL,0),IFNULL(ACCPTED_BAGS,0),DRIVER_IN_OUT,CONTRACTOR_NAME,TARGET_STORAGE,MATERIAL_NAME,PARTY_NAME,AMOUNT,PHONE_NO   FROM WEIGHT_MST_FCI_VW  WHERE  SERIAL_ID in (SELECT SERIAL_ID from PRINTER_DATA)"
    )

    for x in results:
        serial_id = str(x[0])
        vehical_no = str(x[1])
        batch_id = str(x[2])
        tare_wt = str(x[3])
        tare_wt_dt = str(x[4])
        gross_wt = str(x[5])
        gross_wt_date = str(x[6])
        net_wt = str(x[7])
        accpted_bags = str(x[8])
        driver_in_out = str(x[9])
        contractor = str(x[10])
        Target_storage = str(x[11])
        material = str(x[12])
        order_id = str(x[13])
        truck_num = str(x[14])
    connection.close()

    try:
        vendor_id = get_vendor_id()
        hex_int_v = int(vendor_id, 16)
        product_id = get_product_id()
        hex_int_p = int(product_id, 16)
        print("ok1")
        dev = usb.core.find(idVendor=hex_int_v, idProduct=hex_int_p)
        try:
            dev.reset()
        except ValueError:
            print("Error")
        printer = getUSBPrinter(commandSet='Generic')(
            idVendor=hex_int_v,  # 0x04b8: 0x0005
            idProduct=hex_int_p,  # printer #0x
            inputEndPoint=0x82,
            outputEndPoint=0x01)
        print("ok2")
        printer.text(
            "=======================================================\n\r")
        printer.charSpacing(1)
        printer.bold()
        printer.text("                " + str(printer_title) + "         \n\r")
        printer.text("        " + str(printer_header) + "         \n\r")
        printer.bold(False)
        printer.align("left")
        printer.text(
            "======================================================\n\r")
        printer.text("Serial No    : " + str(serial_id).zfill(6) + " " +
                     str(duplicate_str) + "                 Vehical No: " +
                     str(vehical_no) + " \n\r")
        printer.text("Order ID     : " + str(order_id) +
                     "               Truck.Sr.No: " + str(truck_num) + " \n\r")
        printer.text("Total Bags   : " + str(accpted_bags).zfill(6) +
                     "                  Issue.Id: " + str(batch_id).zfill(4) +
                     " \n\r")
        printer.text("Material     : " + str(material) +
                     "                         \n\r")
        printer.text(
            "|------------------------------------------------------------- \n\r"
        )
        printer.text("| Weight Type     |    Weight (t)  |     Date \n\r")
        printer.text(
            "|-------------------------------------------------------------\n\r"
        )
        printer.text("| Tare Wt.        |     " + str(tare_wt).zfill(6) +
                     "      |  " + str(tare_wt_dt) + "  \n\r")
        printer.text(
            "|------------------------------------------------------------\n\r"
        )
        printer.text("| Gross Wt.       |     " + str(gross_wt).zfill(6) +
                     "      |  " + str(gross_wt_date) + "  \n\r")
        printer.text(
            "|-------------------------------------------------------------\n\r"
        )
        printer.text("  Net Weight (Kg): " + str(net_wt).zfill(6) + " \n\r")
        printer.text("Slot No 1   :                             \n\r")
        printer.text("Slot Bags   :                             \n\r")
        printer.text("Slot No 2  :                             \n\r")
        printer.text("Slot2 Bags   :                             \n\r")
        printer.text(str(printer_footer) + " \n\r")
        printer.lf()
        print("ok3")
    except IOError:
        print("Printer Errorr. Please check printer configuration")
    def dot_matrix_print(self):
        self.serial_id = ""
        self.charges = ""
        self.vehical_no = ""
        self.first_wt = ""
        self.first_wt_date = ""
        self.first_wr_time = ""
        self.second_wt = ""
        self.second_wt_date = ""
        self.second_wt_time = ""
        self.net_wt = ""
        self.supplier_name = ""
        self.party_name = ""
        self.material = ""

        self.company_name = ""
        self.address = ""
        self.first_wt_mode = ""
        self.second_wt_mode = ""

        connection = sqlite3.connect("wt.db")
        results = connection.execute(
            "SELECT COMPANY_NAME,COMPANY_ADDR FROM USER_RIGHT_SET")
        for x in results:
            self.company_name = str(x[0])
            self.address = str(x[1])
        connection.close()

        connection = sqlite3.connect("wt.db")
        results = connection.execute(
            "SELECT SERIAL_ID,VEHICLE_NO,FIRST_WEIGHT_VAL,FIRST_WT_CRTEATED_ON,SECOND_WT_VAL,SECOND_WT_CREATED_ON,"
            +
            "NET_WEIGHT_VAL ,(AMOUNT+AMOUNT_2) as CHARGES,PARTY_NAME,SUPPLIER_NAME,FIRST_WEIGHT_MODE,SECOND_WT_MODE,MATERIAL_NAME FROM WEIGHT_MST WHERE SERIAL_ID in (SELECT SERIAL_ID from PRINTER_DATA)"
        )

        for x in results:
            self.serial_id = str(x[0])
            self.charges = str(x[7])
            self.vehical_no = str(x[1])
            self.first_wt = str(x[2])
            self.first_wt_date = str(x[3])
            self.first_wr_time = str(x[3])
            self.second_wt = str(x[4])
            self.second_wt_date = str(x[5])
            self.second_wt_time = str(x[5])
            self.net_wt = str(x[6])
            self.supplier_name = str(x[9])
            self.party_name = str(x[8])
            self.first_wt_mode = str(x[10])
            self.second_wt_mode = str(x[11])
            self.material = str(x[12])
        connection.close()

        try:
            dev = usb.core.find(idVendor=0x04b8, idProduct=0x0005)
            dev.reset()
            printer = getUSBPrinter()(
                idVendor=
                0x04b8,  # USB vendor and product Ids for Bixolon SRP-350plus
                idProduct=0x0005,  # printer
                inputEndPoint=0x82,
                outputEndPoint=0x01)

            printer.text(
                "===================================================================\n\r"
            )
            printer.charSpacing(1)
            printer.bold()
            printer.text("              " + str(self.company_name) +
                         "         \n\r")
            printer.text("           " + str(self.address) + "         \n\r")
            printer.bold(False)
            printer.align("left")
            printer.text(
                "===================================================================\n\r"
            )
            printer.text("Serial No    : " + str(self.serial_id) +
                         "                  Vehical No: " +
                         str(self.vehical_no) + " \n\r")
            printer.text("Supplier Name: " + str(self.supplier_name) +
                         "              Party Name: " + str(self.party_name) +
                         " \n\r")
            printer.text("Material     : " + str(self.material) +
                         "                         \n\r")
            printer.text(
                "|---------------------------------------------------------------- \n\r"
            )
            printer.text(
                "| Weight Type          | Date-Time                     |  Weight (Kg) |\n\r"
            )
            printer.text(
                "|-----------------------------------------------------------------\n\r"
            )
            printer.text("| First Wt. (" + str(self.first_wt_mode) +
                         ")    | " + str(self.first_wt_date) +
                         "           |  " + str(self.first_wt) + "  |\n\r")
            printer.text(
                "|-----------------------------------------------------------------\n\r"
            )
            printer.text("| Second Wt. (" + str(self.second_wt_mode) +
                         ")    | " + str(self.second_wt_date) +
                         "           |  " + str(self.second_wt) + "  |\n\r")
            printer.text(
                "|-----------------------------------------------------------------\n\r"
            )
            printer.text(
                "                                   Net Weight (Kg): ")
            printer.doubleWidth()
            printer.doubleHeight()
            printer.text("" + str(self.net_wt) + "  \n\r")
            printer.doubleWidth(False)
            printer.doubleHeight(False)
            printer.text(
                "                                      Charges (Rs): ")
            printer.doubleWidth()
            printer.doubleHeight()
            printer.text("" + str(self.charges) + "  \n\r")
            printer.doubleWidth(False)
            printer.doubleHeight(False)
            printer.text(
                "---------*************  Thanking You   *************----------\n\r"
            )

            printer.lf()
        except IOError:
            print("Printer Errorr. Please check printer configuration")