Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
F
fmp_printer
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
zhenfei.zhang
fmp_printer
Commits
5f3adc7d
Commit
5f3adc7d
authored
Jun 08, 2017
by
jackalone
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
增加标签打印的功能,添加部分函数区别不同的样式
parent
7c55a924
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
150 additions
and
17 deletions
+150
-17
fmp_printer.cpp
+3
-3
fmp_printer.h
+1
-1
fmp_printer_def.h
+7
-1
fmp_printer_i.h
+1
-1
fmp_printer_p.cpp
+90
-5
fmp_printer_p.h
+5
-1
global/externalinterface.h
+3
-1
initclass.h
+40
-4
No files found.
fmp_printer.cpp
View file @
5f3adc7d
...
@@ -6,7 +6,7 @@ FMPPrinter::FMPPrinter(ctkPluginContext *context)
...
@@ -6,7 +6,7 @@ FMPPrinter::FMPPrinter(ctkPluginContext *context)
_inited
(
false
),
_inited
(
false
),
d_ptr
(
new
FMPPrinterPrivate
(
this
))
d_ptr
(
new
FMPPrinterPrivate
(
this
))
{
{
StartService
();
}
}
void
FMPPrinter
::
UninitService
()
void
FMPPrinter
::
UninitService
()
...
@@ -20,10 +20,10 @@ void FMPPrinter::InitService()
...
@@ -20,10 +20,10 @@ void FMPPrinter::InitService()
d_func
()
->
Init
();
d_func
()
->
Init
();
}
}
bool
FMPPrinter
::
DoPrint
(
QString
data
)
bool
FMPPrinter
::
DoPrint
(
QString
data
,
QString
strLabel
)
{
{
Q_D
(
FMPPrinter
);
Q_D
(
FMPPrinter
);
return
d
->
_DoPrint
(
data
);
return
d
->
_DoPrint
(
data
,
strLabel
);
}
}
QString
FMPPrinter
::
GetPrintName
()
QString
FMPPrinter
::
GetPrintName
()
...
...
fmp_printer.h
View file @
5f3adc7d
...
@@ -16,7 +16,7 @@ public:
...
@@ -16,7 +16,7 @@ public:
FMPPrinter
(
ctkPluginContext
*
context
);
FMPPrinter
(
ctkPluginContext
*
context
);
void
InitService
();
void
InitService
();
void
UninitService
();
void
UninitService
();
bool
DoPrint
(
QString
data
);
bool
DoPrint
(
QString
data
,
QString
strLabel
);
QString
GetPrintName
();
QString
GetPrintName
();
private
:
private
:
...
...
fmp_printer_def.h
View file @
5f3adc7d
...
@@ -4,5 +4,11 @@
...
@@ -4,5 +4,11 @@
#define FMP_INIKEY_PRINTERNAME "Printer/Name"
#define FMP_INIKEY_PRINTERNAME "Printer/Name"
#define FMP_INIKEY_PRINTERTYPE "Printer/Mode"
#define FMP_INIKEY_PRINTERTYPE "Printer/Mode"
#define FMP_INIKEY_PRINTERSIZE "Printer/PaperWidth"
#define FMP_INIKEY_PRINTERSIZE "Printer/PaperWidth"
#define FMP_INIKEY_PRINTERLEVLEL "Printer/Levlel"
#define FMP_INIKEY_PRINTERTYPE2 "Printer/Type"
#define FMP_INIKEY_PRINTERUSB "Printer/usb"
#define FMP_INIKEY_PRINTERPARALL "Printer/parallel"
#define FMP_INIKEY_PRINTERNET "Printer/ip"
#define FMP_INIKEY_PRINTERLABEL "Printer/PrintLabel"
#define FMP_INIKEY_LOGDAYS "Printer/LogDays"
#endif // FMP_PRINTER_DEF_H
#endif // FMP_PRINTER_DEF_H
fmp_printer_i.h
View file @
5f3adc7d
...
@@ -13,7 +13,7 @@ class FMPPrinterInterface : public FMPBaseInterface
...
@@ -13,7 +13,7 @@ class FMPPrinterInterface : public FMPBaseInterface
{
{
public
:
public
:
explicit
FMPPrinterInterface
(
ctkPluginContext
*
ctx
)
:
FMPBaseInterface
(),
_ctx
(
ctx
)
{}
explicit
FMPPrinterInterface
(
ctkPluginContext
*
ctx
)
:
FMPBaseInterface
(),
_ctx
(
ctx
)
{}
virtual
bool
DoPrint
(
QString
data
)
=
0
;
virtual
bool
DoPrint
(
QString
data
,
QString
strLabel
)
=
0
;
virtual
QString
GetPrintName
()
=
0
;
virtual
QString
GetPrintName
()
=
0
;
int
PostEvent
(
const
QString
&
topic
,
const
FMPProps
&
pps
)
{
return
FMP_NOIMPL
;
}
int
PostEvent
(
const
QString
&
topic
,
const
FMPProps
&
pps
)
{
return
FMP_NOIMPL
;
}
...
...
fmp_printer_p.cpp
View file @
5f3adc7d
...
@@ -24,7 +24,14 @@ int FMPPrinterPrivate::Init()
...
@@ -24,7 +24,14 @@ int FMPPrinterPrivate::Init()
Q_Q
(
FMPPrinter
);
Q_Q
(
FMPPrinter
);
if
(
!
(
q
->
_inited
))
if
(
!
(
q
->
_inited
))
InitLogger
();
InitLogger
();
InitDll
();
if
(
InitDll
())
{
QLOG_INFO
()
<<
QString
(
GB2312ToUnicode
(
"初始化打印机DLL成功"
));
}
else
{
QLOG_INFO
()
<<
QString
(
GB2312ToUnicode
(
"初始化打印机DLL失败"
));
}
q
->
_inited
=
true
;
q
->
_inited
=
true
;
return
FMP_SUCCESS
;
return
FMP_SUCCESS
;
...
@@ -46,17 +53,29 @@ int FMPPrinterPrivate::Uninit()
...
@@ -46,17 +53,29 @@ int FMPPrinterPrivate::Uninit()
return
FMP_SUCCESS
;
return
FMP_SUCCESS
;
}
}
bool
FMPPrinterPrivate
::
_DoPrint
(
QString
data
)
bool
FMPPrinterPrivate
::
_DoPrint
(
QString
data
,
QString
strLabel
=
""
)
{
{
QLOG_INFO
()
<<
"receive data is"
<<
data
;
QLOG_INFO
()
<<
"receive data is"
<<
data
;
if
(
FM_LoadAddress
&&
FM_LoadAddress
()
&&
FM_inItConfig
())
{
char
m_dataini
[
128
]
=
{
0
};
QByteArray
tmpData
=
SendIniData
().
toLocal8Bit
();
strcpy
(
m_dataini
,
tmpData
.
data
());
if
(
FM_LoadAddress
())
{
QLOG_INFO
()
<<
QString
(
GB2312ToUnicode
(
"初始化接口函数成功"
));
}
else
{
return
0
;
}
FM_Initconfigini
(
m_dataini
);
QLOG_INFO
()
<<
QString
(
GB2312ToUnicode
(
"DLL 读取ini配置文件完成"
));
if
(
FM_inItConfig
())
{
QLOG_INFO
()
<<
QString
(
GB2312ToUnicode
(
"初始化打印机配置成功"
));
QLOG_INFO
()
<<
QString
(
GB2312ToUnicode
(
"初始化打印机配置成功"
));
}
}
else
{
else
{
return
false
;
return
false
;
}
}
QLOG_INFO
()
<<
"receive data is"
<<
data
;
QLOG_INFO
()
<<
"receive data is"
<<
data
;
char
m_data
[
2048
]
=
{
0
};
char
m_data
[
2048
]
=
{
0
};
char
m_label
[
1024
]
=
{
0
};
switch
(
m_print
.
m_PrintType
)
switch
(
m_print
.
m_PrintType
)
{
{
case
0
:
case
0
:
...
@@ -64,10 +83,32 @@ bool FMPPrinterPrivate::_DoPrint(QString data)
...
@@ -64,10 +83,32 @@ bool FMPPrinterPrivate::_DoPrint(QString data)
if
(
m_print
.
m_PrintSize
==
58
)
if
(
m_print
.
m_PrintSize
==
58
)
{
{
if
(
!
strLabel
.
compare
(
"balance"
))
{
QLOG_INFO
()
<<
"ready balance data 58 is"
<<
m_data
;
QByteArray
tmpData
=
data
.
toLocal8Bit
();
strcpy
(
m_data
,
tmpData
.
data
());
FM_printBalance
(
m_data
);
FM_unloaddll
();
return
1
;
}
if
(
data
.
isEmpty
())
{
QLOG_INFO
()
<<
"ready e data isEmpty "
;
return
0
;
}
QByteArray
tmpData
=
data
.
toLocal8Bit
();
QByteArray
tmpData
=
data
.
toLocal8Bit
();
strcpy
(
m_data
,
tmpData
.
data
());
strcpy
(
m_data
,
tmpData
.
data
());
QLOG_INFO
()
<<
"ready print data is"
<<
m_data
;
QLOG_INFO
()
<<
"ready print data is"
<<
m_data
;
FM_PrintData
(
m_data
);
FM_PrintData
(
m_data
);
if
(
!
strLabel
.
isEmpty
())
{
QByteArray
labelData
=
strLabel
.
toLocal8Bit
();
strcpy
(
m_label
,
labelData
.
data
());
FM_printTscData
(
m_label
);
}
FM_unloaddll
();
FM_unloaddll
();
return
1
;
return
1
;
}
}
...
@@ -75,16 +116,37 @@ bool FMPPrinterPrivate::_DoPrint(QString data)
...
@@ -75,16 +116,37 @@ bool FMPPrinterPrivate::_DoPrint(QString data)
case
2
:
case
2
:
if
(
m_print
.
m_PrintSize
==
80
)
if
(
m_print
.
m_PrintSize
==
80
)
{
{
if
(
!
strLabel
.
compare
(
"balance"
))
{
QLOG_INFO
()
<<
"ready balance data is"
<<
m_data
;
QByteArray
tmpData
=
data
.
toLocal8Bit
();
strcpy
(
m_data
,
tmpData
.
data
());
FM_printBalance
(
m_data
);
FM_unloaddll
();
return
1
;
}
if
(
data
.
isEmpty
())
{
QLOG_INFO
()
<<
"ready e data isEmpty "
;
return
0
;
}
QByteArray
tmpData
=
data
.
toLocal8Bit
();
QByteArray
tmpData
=
data
.
toLocal8Bit
();
strcpy
(
m_data
,
tmpData
.
data
());
strcpy
(
m_data
,
tmpData
.
data
());
QLOG_INFO
()
<<
"ready print data is"
<<
m_data
;
QLOG_INFO
()
<<
"ready print data is"
<<
m_data
;
FM_PrintData
(
m_data
);
FM_PrintData
(
m_data
);
if
(
!
strLabel
.
isEmpty
())
{
QLOG_INFO
()
<<
"ready strLabel data is"
<<
m_data
;
QByteArray
labelData
=
strLabel
.
toLocal8Bit
();
strcpy
(
m_label
,
labelData
.
data
());
FM_printTscData
(
m_label
);
}
FM_unloaddll
();
FM_unloaddll
();
return
1
;
return
1
;
}
}
else
if
(
m_print
.
m_PrintSize
==
56
)
else
if
(
m_print
.
m_PrintSize
==
56
)
{
{
;
}
}
break
;
break
;
default
:
default
:
...
@@ -113,9 +175,32 @@ QString FMPPrinterPrivate::_GetPrintName()
...
@@ -113,9 +175,32 @@ QString FMPPrinterPrivate::_GetPrintName()
m_print
.
printname
=
_settings
->
GetString
(
FMP_INIKEY_PRINTERNAME
);
m_print
.
printname
=
_settings
->
GetString
(
FMP_INIKEY_PRINTERNAME
);
m_print
.
m_PrintType
=
_settings
->
GetInt
(
FMP_INIKEY_PRINTERTYPE
);
m_print
.
m_PrintType
=
_settings
->
GetInt
(
FMP_INIKEY_PRINTERTYPE
);
m_print
.
m_PrintSize
=
_settings
->
GetInt
(
FMP_INIKEY_PRINTERSIZE
);
m_print
.
m_PrintSize
=
_settings
->
GetInt
(
FMP_INIKEY_PRINTERSIZE
);
m_print
.
m_level
=
_settings
->
GetString
(
FMP_INIKEY_PRINTERLEVLEL
);
m_print
.
m_parall
=
_settings
->
GetString
(
FMP_INIKEY_PRINTERPARALL
);
m_print
.
type
=
_settings
->
GetInt
(
FMP_INIKEY_PRINTERTYPE2
);
m_print
.
m_Usb
=
_settings
->
GetString
(
FMP_INIKEY_PRINTERUSB
);
m_print
.
m_Ip
=
_settings
->
GetString
(
FMP_INIKEY_PRINTERNET
);
m_print
.
m_printerLabel
=
_settings
->
GetString
(
FMP_INIKEY_PRINTERLABEL
);
m_print
.
m_nDays
=
_settings
->
GetInt
(
FMP_INIKEY_LOGDAYS
);
return
m_print
.
printname
;
return
m_print
.
printname
;
}
}
QString
FMPPrinterPrivate
::
SendIniData
()
{
QString
m_print_ini
=
""
;
m_print_ini
=
((
m_print
.
printname
==
""
)
?
(
"XP-80C"
)
:
(
m_print
.
printname
)).
append
(
"|"
)
.
append
(((
QString
::
number
(
m_print
.
m_PrintType
,
10
)
==
""
)
?
(
"1"
)
:
QString
::
number
(
m_print
.
m_PrintType
,
10
))).
append
(
"|"
)
.
append
(((
QString
::
number
(
m_print
.
m_PrintSize
,
10
)
==
""
)
?
(
"56"
)
:
QString
::
number
(
m_print
.
m_PrintSize
,
10
))).
append
(
"|"
)
.
append
(
m_print
.
m_level
==
""
?
(
"ALL"
)
:
m_print
.
m_level
).
append
(
"|"
)
.
append
(
m_print
.
m_parall
==
""
?
(
"LPT1"
)
:
m_print
.
m_parall
).
append
(
"|"
)
.
append
(((
QString
::
number
(
m_print
.
type
,
10
)
==
""
)
?
(
"4"
)
:
QString
::
number
(
m_print
.
type
,
10
))).
append
(
"|"
)
.
append
(
m_print
.
m_Usb
==
""
?
"USB-0"
:
m_print
.
m_Usb
).
append
(
"|"
)
.
append
(
m_print
.
m_Ip
==
""
?
"127.0.0.1"
:
m_print
.
m_Ip
).
append
(
"|"
)
.
append
(
m_print
.
m_printerLabel
==
""
?
"Gprinter 2120TF"
:
m_print
.
m_printerLabel
).
append
(
"|"
)
.
append
((
QString
::
number
(
m_print
.
m_nDays
,
10
)
==
""
)
?
(
"10"
)
:
QString
::
number
(
m_print
.
m_nDays
,
10
)).
append
(
"|"
);
return
m_print_ini
;
}
bool
FMPPrinterPrivate
::
GetInfo
(
QString
&
printername
,
QString
data
)
bool
FMPPrinterPrivate
::
GetInfo
(
QString
&
printername
,
QString
data
)
{
{
FMP_INFO
()
<<
"printname is ok"
<<
printername
;
FMP_INFO
()
<<
"printname is ok"
<<
printername
;
...
...
fmp_printer_p.h
View file @
5f3adc7d
...
@@ -11,9 +11,12 @@ typedef struct
...
@@ -11,9 +11,12 @@ typedef struct
QString
m_parall
;
//并口名字
QString
m_parall
;
//并口名字
QString
m_Usb
;
// usb的名字
QString
m_Usb
;
// usb的名字
QString
m_level
;
//日志的级别设定 默认
QString
m_level
;
//日志的级别设定 默认
QString
m_Ip
;
QString
m_printerLabel
;
int
m_PrintType
;
//打印的某种样式
int
m_PrintType
;
//打印的某种样式
int
m_PrintSize
;
//打印的纸张设定
int
m_PrintSize
;
//打印的纸张设定
int
type
;
int
type
;
int
m_nDays
;
//删除日志的天数
}
PrintClass
,
*
pPrintclass
;
}
PrintClass
,
*
pPrintclass
;
class
FMPPrinterPrivate
:
public
QObject
class
FMPPrinterPrivate
:
public
QObject
...
@@ -26,9 +29,10 @@ public:
...
@@ -26,9 +29,10 @@ public:
int
Init
();
int
Init
();
int
Uninit
();
int
Uninit
();
private
:
private
:
bool
_DoPrint
(
QString
data
);
bool
_DoPrint
(
QString
data
,
QString
strLabel
);
QString
_GetPrintName
();
QString
_GetPrintName
();
bool
GetInfo
(
QString
&
printername
,
QString
data
);
bool
GetInfo
(
QString
&
printername
,
QString
data
);
QString
SendIniData
();
public
:
public
:
FMPPrinter
*
q_ptr
;
FMPPrinter
*
q_ptr
;
PrintClass
m_print
;
PrintClass
m_print
;
...
...
global/externalinterface.h
View file @
5f3adc7d
...
@@ -6,7 +6,9 @@ typedef void (*PrintData)(char data[]);
...
@@ -6,7 +6,9 @@ typedef void (*PrintData)(char data[]);
typedef
void
(
*
Print2dData
)(
char
data
[]);
typedef
void
(
*
Print2dData
)(
char
data
[]);
typedef
void
(
*
unloaddll
)(
void
);
typedef
void
(
*
unloaddll
)(
void
);
typedef
bool
(
*
LoadAddress
)(
void
);
typedef
bool
(
*
LoadAddress
)(
void
);
typedef
void
(
*
Initconfigini
)(
char
data
[]);
typedef
void
(
*
printTscData
)(
char
data
[]);
typedef
void
(
*
printBalance
)(
char
data
[]);
#endif // EXTERNALINTERFACE_H
#endif // EXTERNALINTERFACE_H
...
...
initclass.h
View file @
5f3adc7d
...
@@ -7,11 +7,14 @@ using namespace QsLogging;
...
@@ -7,11 +7,14 @@ using namespace QsLogging;
#include <QCoreApplication>
#include <QCoreApplication>
#include <QTextCodec>
#include <QTextCodec>
inItConfig
FM_inItConfig
;
inItConfig
FM_inItConfig
=
0
;
PrintData
FM_PrintData
;
PrintData
FM_PrintData
=
0
;
Print2dData
FM_Print2dData
;
Print2dData
FM_Print2dData
=
0
;
unloaddll
FM_unloaddll
;
unloaddll
FM_unloaddll
=
0
;
LoadAddress
FM_LoadAddress
=
0
;
LoadAddress
FM_LoadAddress
=
0
;
Initconfigini
FM_Initconfigini
=
0
;
printTscData
FM_printTscData
=
0
;
printBalance
FM_printBalance
=
0
;
void
InitLogger
();
void
InitLogger
();
QString
getdata
();
QString
getdata
();
bool
InitDll
();
bool
InitDll
();
...
@@ -114,6 +117,39 @@ bool InitDll()
...
@@ -114,6 +117,39 @@ bool InitDll()
QLOG_INFO
()
<<
QString
(
GB2312ToUnicode
(
"打印动态库卸载失败"
));
QLOG_INFO
()
<<
QString
(
GB2312ToUnicode
(
"打印动态库卸载失败"
));
return
0
;
return
0
;
}
}
FM_Initconfigini
=
(
Initconfigini
)
printlib
.
resolve
(
"Initconfigini"
);
if
(
FM_Initconfigini
)
{
QLOG_INFO
()
<<
QString
(
GB2312ToUnicode
(
"打印初始化ini成功"
));
}
else
{
QLOG_INFO
()
<<
QString
(
GB2312ToUnicode
(
"打印初始化ini失败"
));
return
0
;
}
FM_printTscData
=
(
printTscData
)
printlib
.
resolve
(
"printTscData"
);
if
(
FM_printTscData
)
{
QLOG_INFO
()
<<
QString
(
GB2312ToUnicode
(
"初始化标签打印机成功"
));
}
else
{
QLOG_INFO
()
<<
QString
(
GB2312ToUnicode
(
"初始化标签打印机失败"
));
return
0
;
}
FM_printBalance
=
(
printBalance
)
printlib
.
resolve
(
"printBalance"
);
if
(
FM_printBalance
)
{
QLOG_INFO
()
<<
QString
(
GB2312ToUnicode
(
"初始化打印结算成功"
));
}
else
{
QLOG_INFO
()
<<
QString
(
GB2312ToUnicode
(
"初始化打印结算失败"
));
return
0
;
}
}
}
else
else
{
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment