22class Receipt extends CI_Model
33{
44
5+ private $ receipt_path ;
6+
57 function __construct ()
68 {
9+ $ this ->receipt_path = APPPATH .'/tmp/receipt.txt ' ;
710 $ this ->load ->helper ('printer_helper ' );
811 $ this ->load ->helper ('file ' );
912 }
1013
11- function print_receipt ($ id , $ products , $ totals , $ tenders )
14+ function print_receipt ($ data )
1215 {
1316 $ today = date ("F j, Y, g:i a " );
1417
1518 $ message = init ();
1619 $ message .= center ();
1720 $ message .= header_style ();
18- $ message .= "Fairytale " ;
19- $ message .= new_line ();
21+ $ message .= $ this ->Appconfig ->get ('company ' );
2022 $ message .= reset_styles ();
21- $ message .= "Fashion Boutique " ;
22- $ message .= new_line ();
2323 $ message .= new_line ();
24- $ message .= "www.fairytale-boutique.com " ;
2524 $ message .= new_line ();
26- $ message .= " 319 East 2nd st. Suite #114 " ;
25+ $ message .= $ this -> Appconfig -> get ( ' website ' ) ;
2726 $ message .= new_line ();
28- $ message .=" Los Angeles, CA 90012 " ;
27+ $ message .= $ this -> Appconfig -> get ( ' address ' ) ;
2928 $ message .= new_line ();
30- $ message .= " (213) 680-1032 " ;
29+ $ message .= $ this -> Appconfig -> get ( ' phone ' ) ;
3130 $ message .= new_line ();
3231 $ message .= new_line ();
3332 $ message .= $ today ;
3433 $ message .= new_line ();
3534 $ message .= new_line ();
36- $ message .= "Sale # " .$ id ;
35+ $ message .= "Sale # " .$ data [ ' sale_id ' ] ;
3736 $ message .= new_line ();
3837 $ message .= new_line ();
3938 $ message .= left ();
4039
41- foreach ($ products as $ product )
40+ foreach ($ data [ ' cart ' ] as $ product )
4241 {
4342 $ message .= $ product ["name " ] . " " ;
44- $ message .= " $ " . $ product ["price " ] . " x " . $ product ["qty " ];
43+ $ message .= to_currency ( $ product ["price " ]) . " x " . $ product ["quantity " ];
4544 $ message .= new_line ();
45+ if ($ product ['discount ' ] > 0 )
46+ {
47+ $ message .= "Discount: " . $ product ['discount ' ] . "% " ;
48+ }
4649 }
4750 $ message .= new_line ();
48- $ message .= "Sub Total: $ " . $ totals ['subtotal ' ];
49- if ($ totals ['discount ' ] > 0 )
51+ $ message .= "Sub Total: " . to_currency ($ data ['subtotal ' ]);
52+ $ message .= new_line ();
53+ foreach ($ data ['taxes ' ] as $ tax )
5054 {
51- $ message .= new_line ();
52- $ message .= "Discount: " . $ totals ['discount ' ];
55+ $ message .= "Tax: " . to_currency ($ tax );
5356 }
5457 $ message .= new_line ();
55- $ message .= "Tax: $ " . $ totals ['tax ' ];
56- $ message .= new_line ();
5758 $ message .= "======================= " ;
5859 $ message .= new_line ();
5960 $ message .= total_style ();
60- $ message .= "Total: $ " . $ totals ['total ' ];
61+ $ message .= "Total: " . to_currency ( $ data ['total ' ]) ;
6162 $ message .= reset_styles ();
6263 $ message .= new_line ();
6364 $ message .= new_line ();
64- foreach ($ tenders as $ tender )
65+ foreach ($ data [ ' payments ' ] as $ payment )
6566 {
66- $ message .= ucfirst ($ tender [ ' type ' ]) . ": " ;
67- $ message .= " $ " . $ tender [ ' amount ' ] ;
67+ $ message .= ucfirst ($ payment [ ' payment_type ' ]) . ": " ;
68+ $ message .= to_currency ( $ payment [ ' payment_amount ' ]) ;
6869 $ message .= new_line ();
6970 }
7071 $ message .= new_line ();
71- $ message .= "Change: $ " . $ totals [ ' change ' ];
72+ $ message .= "Change: " . $ data [ ' amount_change ' ];
7273 $ message .= new_line ();
7374 $ message .= new_line ();
7475 $ message .= new_line ();
@@ -79,24 +80,24 @@ function print_receipt($id, $products, $totals, $tenders)
7980 $ message .= new_line ();
8081 $ message .= new_line ();
8182
82- writereceipt ($ message );
83- //sendreceipt( );
83+ $ this -> write_receipt ($ message );
84+ //$this->send_receipt($receipt_path );
8485 }
8586
8687
87- function writereceipt ($ message )
88+ function write_receipt ($ message )
8889 {
89- if (!write_file (' ./tmp/receipt.txt ' , $ message ))
90+ if (!write_file ($ this -> receipt_path , $ message ))
9091 {
9192 log_message ('error ' , 'Unable to write the file ' );
9293 }else {
9394 log_message ('info ' , 'File written! ' );
9495 }
9596 }
9697
97- function sendreceipt ( )
98+ function send_receipt ( $ path )
9899 {
99- shell_exec ("cat /var/www/pos/temp/receipt.txt > /dev/usb/lp0 " );
100+ shell_exec ("cat " . $ this -> receipt_path . " > /dev/usb/lp0 " );
100101 }
101102}
102103?>
0 commit comments