Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
S
supplier
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
王宇航
supplier
Commits
cd3c227f
Commit
cd3c227f
authored
Sep 16, 2020
by
Wyh
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
9.16 1、改為凍鏈接單 2、打印prj加上頁數 3、預約單數量和配置
Signed-off-by: Wyh <1239658231>
parent
2ceb6509
Hide whitespace changes
Inline
Side-by-side
Showing
24 changed files
with
369 additions
and
168 deletions
+369
-168
base-module/src/main/AndroidManifest.xml
+1
-0
base-module/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/RestaurantExpandInfoUtils.java
+3
-3
base-module/src/main/java/com/gingersoft/gsa/cloud/constans/ExpandConstant.java
+8
-1
base-module/src/main/java/com/gingersoft/gsa/cloud/print/PrintCommands.java
+0
-1
base-module/src/main/java/com/gingersoft/gsa/cloud/print/PrintSocketHolder.java
+0
-3
base-module/src/main/java/com/gingersoft/gsa/cloud/print/newprint/ConnectPrintUtil.java
+78
-0
base-module/src/main/java/com/gingersoft/gsa/cloud/print/newprint/PrintMessageBean.java
+15
-0
base-module/src/main/java/com/gingersoft/gsa/cloud/print/newprint/PrintStatesChangeListener.java
+5
-0
base-module/src/main/java/com/gingersoft/gsa/cloud/print/newprint/PrintUtil.java
+214
-0
base-module/src/main/java/com/gingersoft/gsa/cloud/service/GetInfoUpdateService.kt
+5
-0
coldchain-module/src/main/java/com/gingersoft/coldchain_module/mvp/ui/activity/ColdChainMainActivity.java
+1
-1
delivery_pick_module/src/main/java/com/gingersoft/gsa/delivery_pick_mode/data/model/bean/OrderList.kt
+3
-0
delivery_pick_module/src/main/java/com/gingersoft/gsa/delivery_pick_mode/model/viewModel/PageViewModel.kt
+6
-1
delivery_pick_module/src/main/java/com/gingersoft/gsa/delivery_pick_mode/ui/activity/DeliveryOrderMainActivity.kt
+4
-0
delivery_pick_module/src/main/java/com/gingersoft/gsa/delivery_pick_mode/ui/adapter/OtherOrdersAdapter.kt
+3
-0
delivery_pick_module/src/main/java/com/gingersoft/gsa/delivery_pick_mode/ui/fragment/PlaceholderFragment.kt
+0
-10
delivery_pick_module/src/main/res/values/strings.xml
+1
-1
download-module/src/main/java/com/gingersoft/gsa/cloud/download/mvp/model/downmanager/DownloadManager.java
+0
-7
login-module/src/main/java/com/gingersoft/gsa/cloud/login/mvp/ui/activity/mvp/ui/activity/SwitchServerActivity.java
+8
-10
main-module/src/main/java/com/gingersoft/gsa/cloud/main/mvp/ui/activity/RestaurantQrCodeActivity.java
+2
-2
print-module/src/main/java/com/joe/print/mvp/print/PrinterRoot.java
+3
-2
print-module/src/main/java/com/joe/print/mvp/print/service/PrjService.java
+1
-0
print-module/src/main/java/com/joe/print/mvp/ui/activity/PrintActivity.java
+8
-0
print-module/src/main/java/com/joe/print/mvp/ui/activity/PrintTestActivity.java
+0
-126
No files found.
base-module/src/main/AndroidManifest.xml
View file @
cd3c227f
<manifest
package=
"com.gingersoft.gsa.cloud.base"
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<uses-permission
android:name=
"android.permission.BLUETOOTH"
/>
<uses-permission
android:name=
"android.permission.VIBRATE"
/>
<application
android:name=
"com.gingersoft.gsa.cloud.base.application.GsaCloudApplication"
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/base/common/bean/RestaurantExpandInfoUtils.java
View file @
cd3c227f
...
...
@@ -34,10 +34,10 @@ public class RestaurantExpandInfoUtils {
MoneyUtil
.
ItemDecimals
=
expandInfo
.
getValueInt
();
}
if
(
expandInfo
.
getSettingName
().
equals
(
ExpandConstant
.
MergeSendFood
))
{
GsaCloudApplication
.
androidSetting
.
setMergeSendFood
(
expandInfo
.
getValueInt
()
==
1
?
true
:
false
);
GsaCloudApplication
.
androidSetting
.
setMergeSendFood
(
expandInfo
.
getValueInt
()
==
1
);
}
if
(
expandInfo
.
getSettingName
().
equals
(
ExpandConstant
.
AutoPrinterPa
r
per
))
{
GsaCloudApplication
.
androidSetting
.
setAutoPrinterParper
(
expandInfo
.
getValueInt
()
==
1
?
true
:
false
);
if
(
expandInfo
.
getSettingName
().
equals
(
ExpandConstant
.
AutoPrinterPaper
))
{
GsaCloudApplication
.
androidSetting
.
setAutoPrinterParper
(
expandInfo
.
getValueInt
()
==
1
);
}
}
}
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/constans/ExpandConstant.java
View file @
cd3c227f
...
...
@@ -9,11 +9,18 @@ public class ExpandConstant {
public
final
static
String
OrderReceivingTimeout
=
"OrderReceivingTimeout"
;
//外送接單超時時間
public
final
static
String
PrintMemberInfo
=
"PrintMemberInfo"
;
//是否打印會員信息
public
final
static
String
PrintPage
=
"PrintPage"
;
//是否打印頁數
public
final
static
String
PrintMergerFood
=
"PrintMergerFood"
;
//是否合併食品
public
final
static
String
PrintStatisticsAmount
=
"PrintStatisticsAmount"
;
//統計打印數
public
final
static
String
PrintFirstOrder
=
"PrintFirstOrder"
;
//是否打印頭單
public
final
static
String
Rounding
=
"Rounding"
;
public
final
static
String
RoundingDecimal
=
"RoundingDecimal"
;
public
final
static
String
ItemDecimals
=
"ItemDecimals"
;
public
final
static
String
MergeSendFood
=
"MergeSendFood"
;
public
final
static
String
AutoPrinterParper
=
"AutoPrinterParper"
;
public
final
static
String
AutoPrinterPaper
=
"AutoPrinterParper"
;
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/print/PrintCommands.java
View file @
cd3c227f
...
...
@@ -20,7 +20,6 @@ package com.gingersoft.gsa.cloud.print;
* ESC-POS Commands
* Created by Alex on 2017/11/1.
*/
@SuppressWarnings
({
"WeakerAccess"
,
"unused"
})
public
class
PrintCommands
{
private
static
final
byte
DLE
=
16
;
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/print/PrintSocketHolder.java
View file @
cd3c227f
...
...
@@ -16,10 +16,8 @@
package
com
.
gingersoft
.
gsa
.
cloud
.
print
;
import
android.annotation.SuppressLint
;
import
android.bluetooth.BluetoothDevice
;
import
android.bluetooth.BluetoothSocket
;
import
android.util.Log
;
import
com.gingersoft.gsa.cloud.constans.PrintConstans
;
import
com.gingersoft.gsa.cloud.database.bean.PrinterDeviceBean
;
...
...
@@ -70,7 +68,6 @@ public class PrintSocketHolder {
setIp
(
printerDeviceBean
);
}
@SuppressLint
(
"MissingPermission"
)
public
int
createSocket
()
{
onPrinterStateChanged
(
STATE_1
);
if
(
mDevice
==
null
&&
(
printerDeviceBean
==
null
||
printerDeviceBean
.
getIp
()
==
null
))
...
...
base-module/src/main/java/com/gingersoft/gsa/cloud/print/newprint/ConnectPrintUtil.java
0 → 100644
View file @
cd3c227f
package
com
.
gingersoft
.
gsa
.
cloud
.
print
.
newprint
;
import
com.gingersoft.gsa.cloud.constans.PrintConstans
;
import
com.gingersoft.gsa.cloud.print.PrintSocketHolder
;
import
java.io.IOException
;
import
java.net.InetSocketAddress
;
import
java.net.Socket
;
import
java.util.HashMap
;
import
java.util.Map
;
public
class
ConnectPrintUtil
{
/**
* volatile关键字: 保持内存的可见性--所有线程都能获取的共享内存的最新状态
* volatile的作用:每次读取前必须先从主存刷新最新的值,每次写入后必须立即同步回主存当中
*/
private
static
volatile
ConnectPrintUtil
connectPrintUtil
;
private
ConnectPrintUtil
()
{
}
public
static
ConnectPrintUtil
getInstance
()
{
if
(
connectPrintUtil
==
null
)
{
synchronized
(
ConnectPrintUtil
.
class
)
{
if
(
connectPrintUtil
==
null
)
{
connectPrintUtil
=
new
ConnectPrintUtil
();
}
}
}
return
connectPrintUtil
;
}
private
Map
<
String
,
Socket
>
socketMap
=
new
HashMap
<>();
private
PrintStatesChangeListener
mPrintStatesChangeListener
;
private
PrintMessageBean
printMessageBean
;
public
ConnectPrintUtil
setPrintStatesChangeListener
(
PrintStatesChangeListener
printStatesChangeListener
)
{
mPrintStatesChangeListener
=
printStatesChangeListener
;
return
connectPrintUtil
;
}
public
ConnectPrintUtil
connect
(
String
ip
)
{
return
connect
(
ip
,
9100
);
}
public
ConnectPrintUtil
connect
(
String
ip
,
int
port
)
{
setState
(
PrintSocketHolder
.
STATE_1
,
""
);
Socket
socket
=
socketMap
.
get
(
ip
);
if
(
socket
!=
null
&&
socket
.
isConnected
())
{
setState
(
PrintSocketHolder
.
STATE_1
,
""
);
}
else
{
socket
=
new
Socket
();
//ip, port
InetSocketAddress
socketAddress
=
new
InetSocketAddress
(
ip
,
port
);
//设置 超时时间
try
{
socket
.
setSoTimeout
(
PrintConstans
.
SO_TIMEOUT
);
socket
.
connect
(
socketAddress
,
PrintConstans
.
PRINT_TIMEOUT
);
//开始连接ip
socketMap
.
put
(
ip
,
socket
);
}
catch
(
IOException
e
)
{
socketMap
.
remove
(
ip
);
setState
(
PrintSocketHolder
.
ERROR_1
,
"連接失敗"
+
e
.
getMessage
());
e
.
printStackTrace
();
}
}
return
connectPrintUtil
;
}
private
void
setState
(
int
code
,
String
msg
)
{
if
(
mPrintStatesChangeListener
!=
null
)
{
if
(
printMessageBean
==
null
)
{
printMessageBean
=
new
PrintMessageBean
(
code
,
msg
);
}
mPrintStatesChangeListener
.
onStateChange
(
printMessageBean
);
}
}
}
base-module/src/main/java/com/gingersoft/gsa/cloud/print/newprint/PrintMessageBean.java
0 → 100644
View file @
cd3c227f
package
com
.
gingersoft
.
gsa
.
cloud
.
print
.
newprint
;
import
lombok.Data
;
@Data
public
class
PrintMessageBean
{
public
PrintMessageBean
(
int
code
,
String
msg
)
{
this
.
code
=
code
;
this
.
msg
=
msg
;
}
private
int
code
;
private
String
msg
;
}
base-module/src/main/java/com/gingersoft/gsa/cloud/print/newprint/PrintStatesChangeListener.java
0 → 100644
View file @
cd3c227f
package
com
.
gingersoft
.
gsa
.
cloud
.
print
.
newprint
;
public
interface
PrintStatesChangeListener
{
void
onStateChange
(
PrintMessageBean
printMessageBean
);
}
base-module/src/main/java/com/gingersoft/gsa/cloud/print/newprint/PrintUtil.java
0 → 100644
View file @
cd3c227f
package
com
.
gingersoft
.
gsa
.
cloud
.
print
.
newprint
;
import
android.bluetooth.BluetoothDevice
;
import
android.os.AsyncTask
;
import
com.gingersoft.gsa.cloud.database.bean.PrinterDeviceBean
;
import
com.gingersoft.gsa.cloud.print.PrintDataMaker
;
import
com.gingersoft.gsa.cloud.print.PrintExecutor
;
import
com.gingersoft.gsa.cloud.print.PrintSocketHolder
;
import
java.util.List
;
public
class
PrintUtil
{
private
PrintSocketHolder
holder
;
private
int
mReconnectTimes
=
0
;
private
int
time
=
0
;
private
String
prjIds
;
private
PrintSocketHolder
.
OnStateChangedListener
listener
;
private
PrintExecutor
.
OnPrintResultListener
mListener
;
private
PrintExecutor
.
OnPrjPrintResultListener
onPrjPrintResultListener
;
public
PrintUtil
()
{
// holder = new PrintSocketHolder(printerDeviceBean);
}
/**
* 执行打印请求
*
* @return 错误代码
*/
private
int
doRequest
(
PrintDataMaker
maker
)
{
if
(
mReconnectTimes
==
0
)
{
holder
.
onPrinterStateChanged
(
PrintSocketHolder
.
STATE_0
);
List
<
byte
[]>
data
=
maker
.
getPrintData
();
prjIds
=
maker
.
getPrjIds
();
if
(!
holder
.
isSocketPrepared
())
{
int
prepare
=
holder
.
prepareSocket
();
if
(
prepare
!=
PrintSocketHolder
.
ERROR_0
)
return
prepare
;
}
return
holder
.
sendData
(
data
);
}
else
{
holder
.
onPrinterStateChanged
(
PrintSocketHolder
.
STATE_0
);
List
<
byte
[]>
data
=
maker
.
getPrintData
();
prjIds
=
maker
.
getPrjIds
();
if
(
holder
.
isSocketPrepared
())
{
if
(
sendData
(
data
))
return
PrintSocketHolder
.
ERROR_0
;
else
return
PrintSocketHolder
.
ERROR_100
;
}
else
{
if
(
prepareSocket
()
&&
sendData
(
data
))
{
return
PrintSocketHolder
.
ERROR_0
;
}
else
{
return
PrintSocketHolder
.
ERROR_100
;
}
}
}
}
/**
* 执行打印请求
*
* @return 错误代码
*/
public
int
doPrinterRequest
(
PrintDataMaker
maker
)
{
holder
.
setOnStateChangedListener
(
listener
);
return
doRequest
(
maker
);
}
private
boolean
prepareSocket
()
{
time
++;
return
time
<
mReconnectTimes
&&
(
holder
.
prepareSocket
()
==
PrintSocketHolder
.
ERROR_0
||
prepareSocket
());
}
private
boolean
sendData
(
List
<
byte
[]>
data
)
{
if
(
holder
.
sendData
(
data
)
==
PrintSocketHolder
.
ERROR_0
)
{
time
=
0
;
return
true
;
}
else
{
return
prepareSocket
()
&&
sendData
(
data
);
}
}
/**
* 异步执行打印请求
*/
public
void
doPrinterRequestAsync
(
PrintDataMaker
maker
)
{
// new PrintExecutor.PrintTask().execute(maker);
}
/**
* 销毁
*/
public
int
closeSocket
()
{
return
holder
.
closeSocket
();
}
/**
* 设置IP及端口
*/
public
void
setIp
(
PrinterDeviceBean
printerDeviceBean
)
{
holder
.
setIp
(
printerDeviceBean
);
}
/**
* 设置蓝牙
*
* @param device 设备
*/
public
void
setDevice
(
BluetoothDevice
device
)
{
holder
.
setDevice
(
device
);
}
/**
* 设置状态监听
*
* @param listener 监听
*/
public
void
setOnStateChangedListener
(
PrintSocketHolder
.
OnStateChangedListener
listener
)
{
this
.
listener
=
listener
;
}
/**
* 设置重连次数
*
* @param times 次数
*/
public
void
setReconnectTimes
(
int
times
)
{
mReconnectTimes
=
times
;
}
/**
* 设置结果回调
*
* @param listener 回调
*/
public
void
setOnPrintResultListener
(
PrintExecutor
.
OnPrintResultListener
listener
)
{
this
.
mListener
=
listener
;
}
public
interface
OnPrintResultListener
{
void
onResult
(
int
errorCode
,
PrinterDeviceBean
printerDeviceBean
);
}
/**
* PRJ打印結果回調
*/
public
interface
OnPrjPrintResultListener
{
void
onResult
(
int
errorCode
,
String
ids
);
}
public
void
setOnPrjPrintResultListener
(
PrintExecutor
.
OnPrjPrintResultListener
onPrjPrintResultListener
)
{
this
.
onPrjPrintResultListener
=
onPrjPrintResultListener
;
}
private
class
PrintTask
extends
AsyncTask
<
PrintDataMaker
,
Integer
,
Integer
>
implements
PrintSocketHolder
.
OnStateChangedListener
{
@Override
protected
void
onPreExecute
()
{
super
.
onPreExecute
();
holder
.
setOnStateChangedListener
(
this
);
}
@Override
protected
Integer
doInBackground
(
PrintDataMaker
...
makers
)
{
if
(
makers
==
null
||
makers
.
length
<
1
)
return
PrintSocketHolder
.
ERROR_0
;
return
doRequest
(
makers
[
0
]);
}
@Override
protected
void
onProgressUpdate
(
Integer
...
values
)
{
super
.
onProgressUpdate
(
values
);
if
(
values
==
null
||
values
.
length
<
1
)
return
;
if
(
listener
!=
null
)
listener
.
onStateChanged
(
values
[
0
],
holder
.
getPrinterDeviceBean
());
}
@Override
protected
void
onPostExecute
(
Integer
integer
)
{
super
.
onPostExecute
(
integer
);
if
(
integer
!=
null
)
{
onResult
(
integer
);
}
}
/**
* 打印结果
*
* @param errorCode 错误代码
*/
private
void
onResult
(
int
errorCode
)
{
try
{
if
(
mListener
!=
null
)
mListener
.
onResult
(
errorCode
,
holder
.
getPrinterDeviceBean
());
if
(
onPrjPrintResultListener
!=
null
)
{
onPrjPrintResultListener
.
onResult
(
errorCode
,
prjIds
);
}
}
catch
(
Exception
e
)
{
e
.
printStackTrace
();
}
}
@Override
public
void
onStateChanged
(
int
state
,
PrinterDeviceBean
printerDeviceBean
)
{
publishProgress
(
state
);
}
}
}
base-module/src/main/java/com/gingersoft/gsa/cloud/service/GetInfoUpdateService.kt
View file @
cd3c227f
...
...
@@ -111,6 +111,10 @@ class GetInfoUpdateService : Service() {
*/
@RequiresApi
(
Build
.
VERSION_CODES
.
O
)
fun
createNotificationChannel
()
{
if
(!
GsaCloudApplication
.
isLogin
){
stopSelf
()
return
}
//设定的通知渠道名称
val
channelName
=
"New Order Notification"
//设置通知的重要程度
...
...
@@ -121,6 +125,7 @@ class GetInfoUpdateService : Service() {
//向系统注册通知渠道,注册后不能改变重要性以及其他通知行为
val
notificationManager
=
getSystemService
(
Context
.
NOTIFICATION_SERVICE
)
as
NotificationManager
notificationManager
.
createNotificationChannel
(
channel
)
notificationManager
.
cancelAll
()
startNotification
()
}
...
...
coldchain-module/src/main/java/com/gingersoft/coldchain_module/mvp/ui/activity/ColdChainMainActivity.java
View file @
cd3c227f
...
...
@@ -341,7 +341,7 @@ public class ColdChainMainActivity extends BaseFragmentActivity<ColdChainMainPre
@Override
public
void
initTopBar
()
{
topBar
.
setTitle
(
"
冷
鏈接單"
);
topBar
.
setTitle
(
"
凍
鏈接單"
);
topBar
.
addLeftImageButton
(
R
.
drawable
.
icon_return
,
R
.
id
.
iv_left_back
).
setOnClickListener
(
v
->
killMyself
());
topBar
.
addRightImageButton
(
R
.
drawable
.
icon_topbar_overflow
,
R
.
id
.
topbar_right_change_button
).
setOnClickListener
(
v
->
{
if
(
pop
==
null
)
{
...
...
delivery_pick_module/src/main/java/com/gingersoft/gsa/delivery_pick_mode/data/model/bean/OrderList.kt
View file @
cd3c227f
...
...
@@ -14,6 +14,7 @@ class OrderList {
var
count
:
Int
=
0
var
page
:
PageBean
?
=
null
var
data
:
List
<
DataBean
>?
=
null
val
statistics
:
StatisticsBean
?
=
null
class
PageBean
{
/**
...
...
@@ -99,6 +100,8 @@ class OrderList {
var
typeDayOrderNum
:
Int
=
0
}
}
class
StatisticsBean
(
val
reservationConfigTime
:
Int
,
val
reservationNumber
:
Int
,
val
immediateNumber
:
Int
)
}
...
...
delivery_pick_module/src/main/java/com/gingersoft/gsa/delivery_pick_mode/model/viewModel/PageViewModel.kt
View file @
cd3c227f
...
...
@@ -76,7 +76,7 @@ class PageViewModel(private val repository: WeatherRepository) : ViewModel() {
var
appointmentType
=
MutableLiveData
(
0
)
//0為即時單,1為預約單
var
instantOrderNum
=
MutableLiveData
(
0
)
//即時單單數
var
bookingOrderNum
=
MutableLiveData
(
0
)
//預約單單數
var
bookingConfigTime
=
MutableLiveData
<
Int
>()
//預約單配置時間
var
addServiceChargeBean
=
MutableLiveData
<
AddServiceChargeBean
>()
/**
...
...
@@ -169,6 +169,11 @@ class PageViewModel(private val repository: WeatherRepository) : ViewModel() {
}
private
fun
OrderList
.
loadInfo
(
isLoadMore
:
Boolean
,
position
:
Int
)
{
getData
()
?.
statistics
?.
let
{
bookingOrderNum
.
value
=
it
.
reservationNumber
instantOrderNum
.
value
=
it
.
immediateNumber
}
if
(
getData
()
!=
null
&&
getData
()
?.
data
!=
null
)
{
val
myData
:
ArrayList
<
OrderList
.
DataBeanX
.
DataBean
>
=
getData
()
?.
data
as
ArrayList
<
OrderList
.
DataBeanX
.
DataBean
>
if
(
myData
.
isNotEmpty
())
{
...
...
delivery_pick_module/src/main/java/com/gingersoft/gsa/delivery_pick_mode/ui/activity/DeliveryOrderMainActivity.kt
View file @
cd3c227f
...
...
@@ -146,6 +146,10 @@ class DeliveryOrderMainActivity : BaseActivity() {
tv_booking_order_num
.
visibility
=
View
.
VISIBLE
tv_booking_order_num
.
text
=
it
.
toString
()
})
bookingConfigTime
.
observe
(
this
@DeliveryOrderMainActivity
,
Observer
{
tv_booking_order
.
text
=
"預約單($it)"
})
}
}
...
...
delivery_pick_module/src/main/java/com/gingersoft/gsa/delivery_pick_mode/ui/adapter/OtherOrdersAdapter.kt
View file @
cd3c227f
...
...
@@ -103,6 +103,8 @@ class OtherOrdersAdapter(var context: Context, var outTime: Int) : Adapter<Other
data
.
STATUS
==
8
->
{
state
=
"待製作"
bg
.
setColor
(
getColor
(
R
.
color
.
order_state4_color
))
holder
.
flBorder
.
visibility
=
View
.
VISIBLE
//顯示邊框
alphaAnimator
(
holder
.
flBorder
)
}
data
.
STATUS
==
3
->
{
state
=
if
(
data
.
order_type
==
7
)
{
...
...
@@ -162,6 +164,7 @@ class OtherOrdersAdapter(var context: Context, var outTime: Int) : Adapter<Other
}
private
fun
alphaAnimator
(
view
:
View
)
{
view
.
clearAnimation
()
val
animatorSet
=
AnimatorSet
()
val
ofFloat
=
ofFloat
(
view
,
"alpha"
,
0f
,
1f
)
ofFloat
.
duration
=
200
...
...
delivery_pick_module/src/main/java/com/gingersoft/gsa/delivery_pick_mode/ui/fragment/PlaceholderFragment.kt
View file @
cd3c227f
...
...
@@ -11,7 +11,6 @@ import com.gingersoft.gsa.cloud.base.utils.other.TextUtil
import
com.gingersoft.gsa.cloud.base.utils.toast.ToastUtils
import
com.gingersoft.gsa.delivery_pick_mode.R
import
com.gingersoft.gsa.delivery_pick_mode.model.viewModel.PageViewModel
import
com.gingersoft.gsa.delivery_pick_mode.ui.activity.DeliveryOrderMainActivity
import
com.gingersoft.gsa.delivery_pick_mode.ui.activity.OrderDetailsActivity
import
com.gingersoft.gsa.delivery_pick_mode.ui.adapter.OtherOrdersAdapter
import
com.gingersoft.gsa.delivery_pick_mode.ui.base.BaseFragment
...
...
@@ -55,15 +54,6 @@ class PlaceholderFragment : BaseFragment(R.layout.fragment_other_order) {
refresh_layout
.
finishRefresh
()
refresh_layout
.
finishLoadMore
()
if
(
activity
is
DeliveryOrderMainActivity
&&
(
activity
as
DeliveryOrderMainActivity
).
selectPosition
==
position
){
if
(
position
<=
1
&&
pageViewModel
.
appointmentType
.
value
==
1
)
{
//預約單
pageViewModel
.
bookingOrderNum
.
value
=
it
.
size
}
else
{
pageViewModel
.
instantOrderNum
.
value
=
it
.
size
}
}
it
?.
let
{
layout_nodata
.
setState
(
it
.
size
<=
0
)
adapter
.
setData
(
it
)
...
...
delivery_pick_module/src/main/res/values/strings.xml
View file @
cd3c227f
<resources>
<string
name=
"app_name"
>
訂單管理
</string>
<string
name=
"app_name"
>
外送/自取
</string>
</resources>
download-module/src/main/java/com/gingersoft/gsa/cloud/download/mvp/model/downmanager/DownloadManager.java
View file @
cd3c227f
package
com
.
gingersoft
.
gsa
.
cloud
.
download
.
mvp
.
model
.
downmanager
;
import
android.content.Context
;
import
com.gingersoft.gsa.cloud.base.threadPool.ThreadPoolManager
;
import
com.gingersoft.gsa.cloud.base.utils.LanguageUtils
;
import
com.gingersoft.gsa.cloud.base.utils.gson.GsonUtils
;
import
com.gingersoft.gsa.cloud.base.utils.log.LogUtil
;
import
com.gingersoft.gsa.cloud.base.utils.okhttpUtils.OkHttp3Utils
;
import
com.gingersoft.gsa.cloud.download.mvp.presenter.DownloadPresenter
;
import
com.jess.arms.utils.ArmsUtils
;
import
java.net.URLEncoder
;
import
java.util.List
;
import
io.reactivex.Observer
;
...
...
login-module/src/main/java/com/gingersoft/gsa/cloud/login/mvp/ui/activity/mvp/ui/activity/SwitchServerActivity.java
View file @
cd3c227f
...
...
@@ -2,7 +2,6 @@ package com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity;
import
android.content.Intent
;
import
android.os.Bundle
;
import
android.util.Log
;
import
android.widget.Button
;
import
android.widget.RadioButton
;
import
android.widget.RadioGroup
;
...
...
@@ -11,7 +10,6 @@ import android.widget.TextView;
import
androidx.annotation.NonNull
;
import
androidx.annotation.Nullable
;
import
com.billy.cc.core.component.CC
;
import
com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
;
import
com.gingersoft.gsa.cloud.base.utils.other.SPUtils
;
import
com.gingersoft.gsa.cloud.base.utils.toast.ToastUtils
;
...
...
@@ -62,7 +60,7 @@ public class SwitchServerActivity extends BaseActivity<SwitchServerPresenter> im
TextView
tvNowServer
;
private
int
[]
rbIds
=
new
int
[]{
R
.
id
.
rb_server_hk
,
R
.
id
.
rb_server_formal
,
R
.
id
.
rb_youchang
,
R
.
id
.
rb_shiwei
,
R
.
id
.
rb_shishu
};
private
int
selectIndex
;
@Override
public
void
setupActivityComponent
(
@NonNull
AppComponent
appComponent
)
{
DaggerSwitchServerComponent
//如找不到该类,请编译一下项目
...
...
@@ -84,14 +82,14 @@ public class SwitchServerActivity extends BaseActivity<SwitchServerPresenter> im
tvNowServer
.
setText
(
"當前服務器:"
+
nowServer
);
((
RadioButton
)
radioGroup
.
getChildAt
(
HttpsConstans
.
isFormal
)).
setChecked
(
true
);
radioGroup
.
setOnCheckedChangeListener
((
group
,
checkedId
)
->
{
SPUtils
.
put
(
mContext
,
"isFormal"
,
group
.
indexOfChild
(
findViewById
(
checkedId
)));
ToastUtils
.
show
(
mContext
,
"已切換環境,下次重啟生效"
);
});
radioGroup
.
setOnCheckedChangeListener
((
group
,
checkedId
)
->
selectIndex
=
group
.
indexOfChild
(
findViewById
(
checkedId
)));
switchServer
.
setOnClickListener
(
v
->
{
GsaCloudApplication
.
isLogin
=
false
;
GsaCloudApplication
.
clearMemberInfo
();
System
.
exit
(
0
);
SPUtils
.
put
(
mContext
,
"isFormal"
,
selectIndex
);
GsaCloudApplication
.
logOut
();
ToastUtils
.
show
(
mContext
,
"已切換環境,重啟生效"
+
selectIndex
);
GsaCloudApplication
.
initDomainUrl
();
finish
();
startActivity
(
new
Intent
(
mContext
,
LoginActivity
.
class
));
});
}
...
...
main-module/src/main/java/com/gingersoft/gsa/cloud/main/mvp/ui/activity/RestaurantQrCodeActivity.java
View file @
cd3c227f
...
...
@@ -164,8 +164,8 @@ public class RestaurantQrCodeActivity extends BaseActivity<QrCodePresenter> impl
}
if
(
dataBean
.
getFreezingService
()
==
1
)
{
tabs
.
add
(
"
冷
鏈"
);
views
.
add
(
getQrCodeView
(
"
冷
鏈"
,
dataBean
.
getFreezingServiceUrl
()));
tabs
.
add
(
"
凍
鏈"
);
views
.
add
(
getQrCodeView
(
"
凍
鏈"
,
dataBean
.
getFreezingServiceUrl
()));
}
initTab
();
}
...
...
print-module/src/main/java/com/joe/print/mvp/print/PrinterRoot.java
View file @
cd3c227f
...
...
@@ -34,10 +34,8 @@ import com.gingersoft.gsa.cloud.base.common.bean.OrderDetail;
import
com.gingersoft.gsa.cloud.base.common.bean.PayMethod
;
import
com.gingersoft.gsa.cloud.base.threadPool.ThreadPoolManager
;
import
com.gingersoft.gsa.cloud.base.utils.AidlUtil
;
import
com.gingersoft.gsa.cloud.base.utils.MoneyUtil
;
import
com.gingersoft.gsa.cloud.base.utils.other.TextUtil
;
import
com.gingersoft.gsa.cloud.base.utils.time.TimeUtils
;
import
com.gingersoft.gsa.cloud.base.utils.view.BitmapUtil
;
import
com.gingersoft.gsa.cloud.base.utils.view.ImageUtils
;
import
com.gingersoft.gsa.cloud.base.utils.view.LayoutToBitmapUtils
;
import
com.gingersoft.gsa.cloud.base.utils.view.QRCodeUtil
;
...
...
@@ -619,6 +617,7 @@ public abstract class PrinterRoot implements PrintSocketHolder.OnStateChangedLis
TextView
tvNowPoint
=
view
.
findViewById
(
R
.
id
.
tv_print_model_nowPoints
);
//現在的積分
TextView
tvAddPoints
=
view
.
findViewById
(
R
.
id
.
tv_print_model_addPoints
);
//本次添加積分
TextView
tvOldPoints
=
view
.
findViewById
(
R
.
id
.
tv_print_model_oldPoints
);
//之前的積分
if
(
data
.
getAddPoints
()
!=
0
||
data
.
getOldPoints
()
!=
0
||
data
.
getAddPoints
()
!=
0
)
{
tvAddPoints
.
setText
(
"本次積分:"
+
data
.
getAddPoints
());
tvNowPoint
.
setText
(
"結餘積分:"
+
data
.
getNowPoints
());
...
...
@@ -630,6 +629,8 @@ public abstract class PrinterRoot implements PrintSocketHolder.OnStateChangedLis
if
(
data
.
getPHONE
()
!=
null
&&
data
.
getPHONE
().
length
()
>
0
)
{
tvMemberPhone
.
setText
(
"會員電話:"
+
getReplaceAfter
(
data
.
getPHONE
()));
}
}
else
{
view
.
setVisibility
(
View
.
GONE
);
}
return
view
;
}
...
...
print-module/src/main/java/com/joe/print/mvp/print/service/PrjService.java
View file @
cd3c227f
...
...
@@ -319,6 +319,7 @@ public class PrjService extends Service implements ReceiveListener {
printDatas
.
clear
();
listMap
.
clear
();
currentIndex
=
1
;
totalPrj
=
0
;
PrjBean
prjBean
=
JsonUtils
.
parseObject
(
json
,
PrjBean
.
class
);
if
(
prjBean
==
null
||
prjBean
.
getData
()
==
null
)
{
return
;
...
...
print-module/src/main/java/com/joe/print/mvp/ui/activity/PrintActivity.java
View file @
cd3c227f
...
...
@@ -134,6 +134,14 @@ public class PrintActivity extends BaseActivity<PrintPresenter> implements Print
printerInIt
.
setPrintListener
(
this
);
}
initPrintConfig
();
// new Thread(new Runnable() {
// @Override
// public void run() {
// Handler handler = new Handler(Looper.getMainLooper());
// handler.sendMessage()
// }
// });
}
private
int
selectPrint
=
-
1
;
...
...
print-module/src/main/java/com/joe/print/mvp/ui/activity/PrintTestActivity.java
View file @
cd3c227f
package
com
.
joe
.
print
.
mvp
.
ui
.
activity
;
import
android.graphics.Bitmap
;
import
android.os.Bundle
;
import
android.util.Log
;
import
android.widget.EditText
;
...
...
@@ -15,120 +14,18 @@ import com.gingersoft.gsa.cloud.database.bean.PrinterDeviceBean;
import
com.gingersoft.gsa.cloud.print.PrintExecutor
;
import
com.gingersoft.gsa.cloud.print.PrintSocketHolder
;
import
com.joe.print.R
;
import
com.joe.print.mvp.model.bean.PrintInfoBean
;
import
com.joe.print.mvp.print.PrintTest
;
import
com.joe.print.mvp.print.common.PrinterFinderCallback
;
import
com.joe.print.mvp.print.common.SendCallback
;
import
com.joe.print.mvp.print.common.SendResultCode
;
import
com.joe.print.mvp.print.usb.UsbPrint
;
import
com.joe.print.mvp.print.usb.UsbPrinter
;
import
com.joe.print.mvp.print.usb.UsbPrinterFinder
;
import
java.util.ArrayList
;
import
java.util.List
;
public
class
PrintTestActivity
extends
AppCompatActivity
implements
PrintSocketHolder
.
OnStateChangedListener
,
PrintExecutor
.
OnPrintResultListener
,
ReceiveListener
{
private
int
lineLength
=
24
;
//一行42個
private
int
LEFT_TEXT_LENGTH
=
8
;
private
String
json
=
"{\n"
+
" \"success\":true,\n"
+
" \"sysTime\":1595414257771,\n"
+
" \"data\":[\n"
+
" {\n"
+
" \"MEMBER_NAME\":\"\",\n"
+
" \"delivery_man_phone_num\":\"\",\n"
+
" \"payTime\":\"2020-07-21 12:04:26.0\",\n"
+
" \"discount_amount\":0,\n"
+
" \"PHONE\":\"13825748837\",\n"
+
" \"memberTypeId\":32,\n"
+
" \"orderPayType\":1,\n"
+
" \"orderStatus\":2,\n"
+
" \"ORDER_NO\":\"26200123048322822\",\n"
+
" \"remark\":\"\",\n"
+
" \"pid\":0,\n"
+
" \"addressDetail\":\"香港長沙灣長沙灣道长沙湾政府合署你\",\n"
+
" \"payType\":5,\n"
+
" \"DELIVERY_CHARGE\":10,\n"
+
" \"SEND_TIME\":\"盡快送達 預計 13:04-13:29\",\n"
+
" \"sendMobile\":\"\",\n"
+
" \"ID\":11116180,\n"
+
" \"CREATE_TIME\":\"2020-07-21 12:04:26.0\",\n"
+
" \"takeFoodCode\":\"0633\",\n"
+
" \"billNo\":\"\",\n"
+
" \"RECEIVER\":\"xu 先生\",\n"
+
" \"Order_ID\":11116180,\n"
+
" \"NUMBER\":1,\n"
+
" \"PRICE\":29.29,\n"
+
" \"delivery_man_name\":\"\",\n"
+
" \"Lunchbox\":3,\n"
+
" \"PRODUCT_NAME\":[\n"
+
" {\n"
+
" \"odsId\":\"48864514\",\n"
+
" \"PRICE\":\"29.3\",\n"
+
" \"num\":\"1\",\n"
+
" \"pid\":\"0\",\n"
+
" \"PRODUCT_NAME\":\"精選牛肉asdfh sdfjabs sdf sdfsafasf\",\n"
+
" \"child\":[\n"
+
" {\n"
+
" \"odsId\":\"48864515\",\n"
+
" \"PRICE\":\"0.0\",\n"
+
" \"num\":\"1\",\n"
+
" \"pid\":\"48864514\",\n"
+
" \"PRODUCT_NAME\":\"甜品asdf sdafadf sadfaf\",\n"
+
" \"child\":[\n"
+
" {\n"
+
" \"odsId\":\"48864516\",\n"
+
" \"PRICE\":\"10.0\",\n"
+
" \"num\":\"1\",\n"
+
" \"pid\":\"48864515\",\n"
+
" \"PRODUCT_NAME\":\"默認細項1asfdsdfa\"\n"
+
" },\n"
+
" {\n"
+
" \"odsId\":\"48864517\",\n"
+
" \"PRICE\":\"10.0\",\n"
+
" \"num\":\"1\",\n"
+
" \"pid\":\"48864515\",\n"
+
" \"PRODUCT_NAME\":\"默認細項2asfasf asdfa\"\n"
+
" },\n"
+
" {\n"
+
" \"odsId\":\"48864518\",\n"
+
" \"PRICE\":\"1.0\",\n"
+
" \"num\":\"1\",\n"
+
" \"pid\":\"48864515\",\n"
+
" \"PRODUCT_NAME\":\"細項默認1\"\n"
+
" },\n"
+
" {\n"
+
" \"odsId\":\"48864519\",\n"
+
" \"PRICE\":\"1.0\",\n"
+
" \"num\":\"1\",\n"
+
" \"pid\":\"48864515\",\n"
+
" \"PRODUCT_NAME\":\"細項默認3\"\n"
+
" }\n"
+
" ]\n"
+
" },\n"
+
" {\n"
+
" \"odsId\":\"48864520\",\n"
+
" \"PRICE\":\"0.0\",\n"
+
" \"num\":\"1\",\n"
+
" \"pid\":\"48864514\",\n"
+
" \"PRODUCT_NAME\":\"雞飯(四客)\"\n"
+
" }\n"
+
" ]\n"
+
" }\n"
+
" ],\n"
+
" \"odsId\":48864514,\n"
+
" \"order_from\":7,\n"
+
" \"sender\":\"\",\n"
+
" \"PAY_AMOUNT\":64.3,\n"
+
" \"levelName1\":\"GS基本用戶\",\n"
+
" \"TOTAL_AMOUNT\":\"64.3\",\n"
+
" \"status\":2\n"
+
" }\n"
+
" ]\n"
+
"}"
;
private
UsbPrint
usbPrint
;
private
List
<
UsbPrinter
>
usbPrinters
;
@Override
protected
void
onCreate
(
Bundle
savedInstanceState
)
{
...
...
@@ -138,31 +35,9 @@ public class PrintTestActivity extends AppCompatActivity implements PrintSocketH
UsbPrinterFinder
printerFinder
=
new
UsbPrinterFinder
(
this
,
printerFinderCallback
);
printerFinder
.
startFinder
();
List
<
PrintInfoBean
>
printInfoBeans
=
new
ArrayList
<>();
printInfoBeans
.
add
(
new
PrintInfoBean
(
new
String
[]{
"EnglishEnglishEnglish"
},
new
Double
[]{
2
d
},
new
String
[]{
"en"
}));
printInfoBeans
.
add
(
new
PrintInfoBean
(
new
String
[]{
"日語伐採に加えて"
},
new
Double
[]{
2
d
},
new
String
[]{
"ja"
}));
printInfoBeans
.
add
(
new
PrintInfoBean
(
new
String
[]{
"简体字简体字简体字"
},
new
Double
[]{
2
d
},
new
String
[]{
"cn"
}));
printInfoBeans
.
add
(
new
PrintInfoBean
(
new
String
[]{
"繁体字繁体字繁体字"
},
new
Double
[]{
2
d
},
new
String
[]{
"tw"
}));
printInfoBeans
.
add
(
new
PrintInfoBean
(
new
String
[]{
"한국어.한국어.한국어."
},
new
Double
[]{
2
d
},
new
String
[]{
"ko"
}));
printInfoBeans
.
add
(
new
PrintInfoBean
(
new
String
[]{
"ภาษาไทยภาษาไทย"
},
new
Double
[]{
2
d
},
new
String
[]{
"th"
}));
printInfoBeans
.
add
(
new
PrintInfoBean
(
new
String
[]{
"ViệtNameViệtName"
},
new
Double
[]{
2
d
},
new
String
[]{
"vi"
}));
printInfoBeans
.
add
(
new
PrintInfoBean
(
new
String
[]{
"\n\n\nEnglishに加えて简体字繁体字한국어ภาษาไทยViệtName"
},
new
Double
[]{
2
d
},
new
String
[]{
"multi"
}));
PrinterDeviceBean
printerDeviceBean
=
new
PrinterDeviceBean
();
printerDeviceBean
.
setIp
(
"192.168.1.203"
);
printerDeviceBean
.
setPort
(
9100
);
Bitmap
bitmap
=
new
PrintTest
().
getTestPrintBitmap
(
this
,
printerDeviceBean
);
findViewById
(
R
.
id
.
btn_test
).
setOnClickListener
(
view
->
{
//打印測試
// PrintExecutor executor = new PrintExecutor(printerDeviceBean);
// executor.setOnStateChangedListener(stateChangedListener);
// executor.setOnPrintResultListener(resultListener);
// TestPrintMaker maker = new TestPrintMaker(printInfoBeans);
// executor.doPrinterRequestAsync(maker);
// EpsonPrint mPrinter = new EpsonPrint();
// mPrinter.initializeObject(GsaCloudApplication.getAppContext(), this);
// mPrinter.putPrintString(ed_ip.getText().toString(), 42, printInfoBeans, this);
});
}
...
...
@@ -199,7 +74,6 @@ public class PrintTestActivity extends AppCompatActivity implements PrintSocketH
@Override
public
void
onFinished
(
List
<
UsbPrinter
>
printers
)
{
ToastUtils
.
show
(
PrintTestActivity
.
this
,
"printCount = "
+
printers
.
size
());
usbPrinters
=
printers
;
Log
.
d
(
TAG
,
"printCount = "
+
printers
.
size
());
// listAdapter.replaceDatas(usbPrinters);
}
...
...
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