Commit 2ceb6509 by Wyh

9.12 1、預約單問題 2、prj打印頁數 3、冷鏈歷史訂單 4、冷鏈修改餐廳營業狀態 5、冷鏈搜索問題 6、二維碼模塊問題修改 7、營業報表小數點限制

Signed-off-by: Wyh <1239658231>
parent 7d5e8b8b
......@@ -131,6 +131,9 @@ dependencies {
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
api 'com.github.huangyanbin:SmartTable:2.2.0'
api rootProject.ext.dependencies["permissionx"]
api rootProject.ext.dependencies["design"]
api rootProject.ext.dependencies["appcompat-v7"]
}
repositories {
mavenCentral()
......
package com.gingersoft.gsa.cloud.constans;
public class DeliveryPickConstans {
public static final String ORDER_TYPE = "orderType";
}
......@@ -213,6 +213,9 @@ class GetInfoUpdateService : Service() {
putTimeLog("連接成功")
cancelTimerDisposable()
myBind?.block?.invoke(false)
if (postCallBack != null) {
postCallBack!!.callBack(0)
}
}
}
......
......@@ -28,7 +28,7 @@ class BtnBuilder(var functions: List<Function>) {
}
}
class BtnBean(val type: Int, val btnContent: String, val btnColor: Int, val btnImg: Int)
class BtnBean(val type: Int, var btnContent: String, val btnColor: Int, val btnImg: Int)
fun getSureBtn(): BtnBean? {
return getBtn(FunctionManagerConstans.takeaway.CONFIRM_BTN_KEY, SureBtn, "確認訂單", R.color.other_order_details_sure_btn_color, R.drawable.ic_sure)
......
......@@ -189,6 +189,17 @@
android:text="19"
android:textSize="@dimen/dp_48"
android:textStyle="bold" />
<TextView
android:id="@+id/tv_prj_page_index"
style="@style/Print_kitchen_table_number_text_style"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_20"
android:layout_gravity="center_horizontal"
android:text="19"
android:textSize="@dimen/dp_28" />
</LinearLayout>
......
......@@ -477,6 +477,8 @@
<color name="order_state2_color">#FF720A</color>
<!-- 待取餐背景色-->
<color name="order_state3_color">#00479D</color>
<!-- 待製作按鈕背景色-->
<color name="order_state4_color">#21AE37</color>
<!-- 在線支付背景色-->
<color name="cash_on_delivery_bg">#E1BF32</color>
......
......@@ -52,8 +52,6 @@ android {
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
kapt rootProject.ext.dependencies["dagger2-compiler"]
kapt rootProject.ext.dependencies["butterknife-compiler"]
implementation rootProject.ext.dependencies["BaseRecyclerViewAdapter"]
......
......@@ -4,6 +4,7 @@ import com.gingersoft.coldchain_module.mvp.model.bean.BalanceBean;
import com.gingersoft.coldchain_module.mvp.model.bean.OrderList;
import com.gingersoft.coldchain_module.mvp.model.bean.PickUpBean;
import com.gingersoft.coldchain_module.mvp.model.bean.SupplementInfoBean;
import com.gingersoft.coldchain_module.mvp.model.bean.UpdateRestaurantStateBean;
import com.jess.arms.mvp.IModel;
import com.jess.arms.mvp.IView;
......@@ -17,6 +18,8 @@ public interface ColdChainMainContract {
void loadNumber(SupplementInfoBean bean);
void loadBalance(double price, double bond,boolean isBlink);
void setRestaurantState(int state);
}
//Model层定义接口,外部只需关心Model返回的数据,无需关心内部细节,即是否使用缓存getOrderList(@Body RequestBody requestBody);
......@@ -28,5 +31,7 @@ public interface ColdChainMainContract {
Observable<PickUpBean> pickUp(RequestBody requestBody);
Observable<BalanceBean> getBalance(String brandId);
Observable<UpdateRestaurantStateBean> updateRestOpenStatus(RequestBody requestBody);
}
}
......@@ -7,6 +7,7 @@ import com.gingersoft.coldchain_module.mvp.model.bean.BalanceBean;
import com.gingersoft.coldchain_module.mvp.model.bean.OrderList;
import com.gingersoft.coldchain_module.mvp.model.bean.PickUpBean;
import com.gingersoft.coldchain_module.mvp.model.bean.SupplementInfoBean;
import com.gingersoft.coldchain_module.mvp.model.bean.UpdateRestaurantStateBean;
import com.gingersoft.coldchain_module.mvp.model.service.ColdChainService;
import com.google.gson.Gson;
import com.jess.arms.di.scope.ActivityScope;
......@@ -58,5 +59,9 @@ public class ColdChainMainModel extends BaseModel implements ColdChainMainContra
return mRepositoryManager.obtainRetrofitService(ColdChainService.class).getBalance(brandId);
}
@Override
public Observable<UpdateRestaurantStateBean> updateRestOpenStatus(RequestBody requestBody) {
return mRepositoryManager.obtainRetrofitService(ColdChainService.class).updateRestOpenStatus(requestBody);
}
}
\ No newline at end of file
package com.gingersoft.coldchain_module.mvp.model.bean;
public class UpdateRestaurantStateBean {
/**
* success : true
* sysTime : 1599899899775
* data : {"msg":"數據更新成功!","num":1}
*/
private boolean success;
private long sysTime;
private DataBean data;
public boolean isSuccess() {
return success;
}
public void setSuccess(boolean success) {
this.success = success;
}
public long getSysTime() {
return sysTime;
}
public void setSysTime(long sysTime) {
this.sysTime = sysTime;
}
public DataBean getData() {
return data;
}
public void setData(DataBean data) {
this.data = data;
}
public static class DataBean {
/**
* msg : 數據更新成功!
* num : 1
*/
private String msg;
private int num;
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
}
}
......@@ -5,6 +5,7 @@ import com.gingersoft.coldchain_module.mvp.model.bean.OrderList;
import com.gingersoft.coldchain_module.mvp.model.bean.PickUpBean;
import com.gingersoft.coldchain_module.mvp.model.bean.SupplementInfoBean;
import com.gingersoft.coldchain_module.mvp.model.bean.SupplementResultBean;
import com.gingersoft.coldchain_module.mvp.model.bean.UpdateRestaurantStateBean;
import io.reactivex.Observable;
import me.jessyan.retrofiturlmanager.RetrofitUrlManager;
......@@ -42,4 +43,7 @@ public interface ColdChainService {
@GET("balance/get" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<BalanceBean> getBalance(@Query("brandId") String brandId);
@Headers({"Domain-Name: member-web"})
@POST("wx/updateRestOpenStatus" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<UpdateRestaurantStateBean> updateRestOpenStatus(@Body RequestBody requestBody);
}
......@@ -7,6 +7,7 @@ import com.gingersoft.coldchain_module.mvp.contract.ColdChainMainContract;
import com.gingersoft.coldchain_module.mvp.model.bean.BalanceBean;
import com.gingersoft.coldchain_module.mvp.model.bean.PickUpBean;
import com.gingersoft.coldchain_module.mvp.model.bean.SupplementInfoBean;
import com.gingersoft.coldchain_module.mvp.model.bean.UpdateRestaurantStateBean;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.utils.other.TextUtil;
import com.jess.arms.di.scope.ActivityScope;
......@@ -133,4 +134,31 @@ public class ColdChainMainPresenter extends BasePresenter<ColdChainMainContract.
}
});
}
public void updateRestOpenStatus(int state, int restaurantId) {
RequestBody requestBody = new FormBody.Builder()
.add("openStatus", state + "")
.add("restId", restaurantId + "")
.build();
mModel.updateRestOpenStatus(requestBody)
.subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> mRootView.showLoading("修改狀態中..."))
.subscribeOn(AndroidSchedulers.mainThread())
.observeOn(AndroidSchedulers.mainThread())
.doAfterTerminate(() -> mRootView.hideLoading())
.compose(RxLifecycleUtils.bindToLifecycle(mRootView))
.subscribe(new ErrorHandleSubscriber<UpdateRestaurantStateBean>(mErrorHandler) {
@Override
public void onNext(@NonNull UpdateRestaurantStateBean info) {
if (info != null && info.isSuccess()) {
mRootView.setRestaurantState(state);
} else if(info != null && info.getData() != null && TextUtil.isNotEmptyOrNullOrUndefined(info.getData().getMsg())){
mRootView.showMessage(info.getData().getMsg());
} else {
mRootView.showMessage("修改狀態失敗");
}
}
});
}
}
......@@ -54,7 +54,7 @@ public class OrderListPresenter extends BasePresenter<OrderListContract.Model, O
private List<OrderList.DataBeanX.DataBean> orderList = new ArrayList<>();
private Disposable disposable;
public void getOrderList(int restaurantId, int page, String status, String type) {
public void getOrderList(int restaurantId, int page, String status, String type, String phone) {
if(disposable != null){
if(!disposable.isDisposed()){
return;
......@@ -67,6 +67,8 @@ public class OrderListPresenter extends BasePresenter<OrderListContract.Model, O
.add("status", status)
.add("type", type)
.add("appointmentType ", "0")
.add("orderNo", "")
.add("phone", phone)
.build();
mModel.getOrderList(requestBody)
.subscribeOn(Schedulers.io())
......
......@@ -91,18 +91,18 @@ public class OrderListFragment extends BaseFragment<OrderListPresenter> implemen
mRefreshLayout.setOnRefreshListener(refreshLayout -> onRefreshData());
mRefreshLayout.setOnLoadMoreListener(refreshLayout -> {
page++;
getOrderList();
getOrderList("");
});
}
public void onRefreshData() {
page = 1;
mRefreshLayout.setEnableLoadMore(true);
getOrderList();
getOrderList("");
}
private void getOrderList() {
mPresenter.getOrderList(restaurantId, page, status, type);
public void getOrderList(String phone) {
mPresenter.getOrderList(restaurantId, page, status, type, phone);
}
// @Override
......
......@@ -126,7 +126,56 @@
android:textSize="@dimen/dp_12"
app:layout_constraintRight_toRightOf="@id/cold_chain_self_progress"
app:layout_constraintTop_toTopOf="@id/tv_month_self_num_text" />
</androidx.constraintlayout.widget.ConstraintLayout>
<EditText
android:id="@+id/ed_cold_chain_order_num_search"
android:layout_width="0dp"
android:layout_height="@dimen/dp_35"
android:layout_marginTop="@dimen/dp_10"
android:layout_marginRight="@dimen/dp_10"
android:background="@drawable/shape_search_bg"
android:hint="請輸入手機號或訂單號"
android:inputType="number"
android:paddingLeft="@dimen/dp_10"
android:paddingRight="@dimen/dp_50"
android:textColor="@color/theme_333_color"
android:textColorHint="@color/color_ccc"
android:textSize="@dimen/dp_14"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toLeftOf="@id/tv_cold_chain_restaurant_state"
app:layout_constraintTop_toBottomOf="@id/tv_month_takeaway_num_text" />
<ImageView
android:id="@+id/iv_cold_chain_search_order"
android:layout_width="@dimen/dp_50"
android:layout_height="0dp"
android:padding="@dimen/dp_10"
android:src="@drawable/ic_search"
app:layout_constraintBottom_toBottomOf="@id/ed_cold_chain_order_num_search"
app:layout_constraintRight_toRightOf="@id/ed_cold_chain_order_num_search"
app:layout_constraintTop_toTopOf="@id/ed_cold_chain_order_num_search" />
<TextView
android:id="@+id/tv_cold_chain_restaurant_state"
style="@style/otherOrder_restaurant_state_style"
android:background="@drawable/shape_restaurant_state_bg"
android:text="營業中 "
app:layout_constraintBottom_toBottomOf="@id/ed_cold_chain_order_num_search"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="@id/ed_cold_chain_order_num_search" />
<ImageView
android:layout_width="@dimen/dp_10"
android:layout_height="@dimen/dp_5"
android:layout_centerVertical="true"
android:layout_marginRight="@dimen/dp_4"
android:src="@drawable/qmui_popup_arrow_down"
app:layout_constraintBottom_toBottomOf="@id/tv_cold_chain_restaurant_state"
app:layout_constraintRight_toRightOf="@id/tv_cold_chain_restaurant_state"
app:layout_constraintTop_toTopOf="@id/tv_cold_chain_restaurant_state" />
</androidx.constraintlayout.widget.ConstraintLayout>
<TextView
android:id="@+id/tv_balance"
......@@ -136,7 +185,8 @@
android:padding="@dimen/dp_10"
android:text="餘額:"
android:textColor="@color/theme_333_color"
android:textSize="@dimen/dp_16" />
android:textSize="@dimen/dp_16"
android:visibility="gone" />
</com.google.android.material.appbar.AppBarLayout>
</androidx.coordinatorlayout.widget.CoordinatorLayout>
......
......@@ -8,7 +8,7 @@ ext {
//正式版: 1.0.3 3
//內部測試版:1.2.0 20
versionCode : 8,
versionName : "1.0.8"
versionName : "1.0.81"
]
version = [
......
......@@ -54,10 +54,7 @@ android {
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.core:core-ktx:1.2.0'
implementation 'com.google.android.material:material:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0'
// alternatively, just LiveData
implementation "android.arch.lifecycle:livedata:1.1.1"
......
package com.gingersoft.gsa.delivery_pick_mode;
import android.content.Intent;
import android.util.Log;
import com.billy.cc.core.component.CC;
import com.billy.cc.core.component.CCResult;
......@@ -9,15 +8,16 @@ import com.billy.cc.core.component.CCUtil;
import com.billy.cc.core.component.IComponent;
import com.gingersoft.gsa.cloud.service.GetInfoUpdateService;
import com.gingersoft.gsa.delivery_pick_mode.ui.activity.DeliveryOrderMainActivity;
import com.gingersoft.gsa.delivery_pick_mode.ui.activity.HistoryOrderActivity;
public class OtherOrderComponent implements IComponent {
public class DeliveryPickComponent implements IComponent {
@Override
public String getName() {
//组件的名称,调用此组件的方式:
// CC.obtainBuilder("ComponentA")...build().callAsync()
return "Component.OtherOrder";
return "ComponentDeliveryPick";
}
/**
......@@ -50,7 +50,10 @@ public class OtherOrderComponent implements IComponent {
case "closeHeart":
Intent intent = new Intent(cc.getContext(), GetInfoUpdateService.class);
cc.getContext().stopService(intent);
Log.e("eee", "closeHeart");
break;
case "historyActivity":
CCUtil.navigateTo(cc, HistoryOrderActivity.class);
CC.sendCCResult(cc.getCallId(), CCResult.success());
break;
default:
// cc.callAsync(new IComponentCallback() {
......
......@@ -7,8 +7,8 @@ import okhttp3.FormBody
class HistoryOrderRepository private constructor(private val network: CoolWeatherNetwork) {
suspend fun getHistoryOrderList(restaurantId: String, status: String, startDate: String, endDate: String, pageIndex: String, pageSize: String, orderNo: String = "", phone: String = "") = withContext(Dispatchers.IO) {
val requestBody = FormBody.Builder()
suspend fun getHistoryOrderList(restaurantId: String, status: String, startDate: String, endDate: String, pageIndex: String, pageSize: String, orderType: Int, orderNo: String = "", phone: String = "") = withContext(Dispatchers.IO) {
val builder = FormBody.Builder()
.add("restaurantId", restaurantId)
.add("status", status)//4為已完成 6為取消
.add("pageIndex", pageIndex)
......@@ -17,7 +17,10 @@ class HistoryOrderRepository private constructor(private val network: CoolWeathe
.add("startDate", startDate)
.add("endDate", endDate)
.add("phone", phone)
.build()
if (orderType == 8) {
builder.add("orderType", orderType.toString())
}
val requestBody = builder.build()
val heWeather = network.getHistoryOrderList(requestBody)
heWeather
}
......
......@@ -23,6 +23,7 @@ class HistoryOrderViewModel(private val historyOrderRepository: HistoryOrderRepo
var historyTime = MutableLiveData<String>(TimeUtils.getOldDate(0)) //按時間查詢
var status = MutableLiveData("4") //按類型查詢
var searchValue = MutableLiveData("")//按搜索內容查詢
var orderType = 0
fun getHistoryOrderList(context: Context, pageIndex: String, orderNum: String = "", startDate: String, endDate: String, status: String) {
launch({
......@@ -33,7 +34,7 @@ class HistoryOrderViewModel(private val historyOrderRepository: HistoryOrderRepo
} else {
orderNumber = orderNum
}
historyOrderRepository.getHistoryOrderList(GsaCloudApplication.getRestaurantId(context).toString(), status, startDate, endDate, pageIndex, "10", orderNumber, phone).apply {
historyOrderRepository.getHistoryOrderList(GsaCloudApplication.getRestaurantId(context).toString(), status, startDate, endDate, pageIndex, "10", orderType, orderNumber, phone).apply {
this.data?.let {
if (it.size > 0) {
it.removeAt(it.size - 1)//移除最後一個,最後一個是顯示總條數的
......
......@@ -68,7 +68,8 @@ class DeliveryOrderMainActivity : BaseActivity() {
private var titles: ArrayList<TextView> = ArrayList()
private var layoutHeight: Float = 0F
private var btnHeight: Float = 0F
private var selectPosition = 0
public var selectPosition = 0
lateinit var mReceiver: ClearHeartBroadcastReceiver
override fun onCreate(savedInstanceState: Bundle?) {
......@@ -111,11 +112,9 @@ class DeliveryOrderMainActivity : BaseActivity() {
tv_immediate_order.setTextColor(ContextCompat.getColor(this, R.color.theme_333_color))
pageViewModel.appointmentType.postValue(1)
}
pageViewModel.apply {
getDeliveryInfo(restaurantId.toString(), memberId.toString())
getBanlance(GsaCloudApplication.getBrandId(this@DeliveryOrderMainActivity))
balanceBean.observe(this@DeliveryOrderMainActivity, Observer {
it?.data?.let { it ->
tv_balance.text = "餘額:${it.balance}" + "(保證金: ${it.bond} )"
......@@ -139,13 +138,21 @@ class DeliveryOrderMainActivity : BaseActivity() {
}
}
})
instantOrderNum.observe(this@DeliveryOrderMainActivity, Observer {
tv_immediate_order_num.visibility = View.VISIBLE
tv_immediate_order_num.text = it.toString()
})
bookingOrderNum.observe(this@DeliveryOrderMainActivity, Observer {
tv_booking_order_num.visibility = View.VISIBLE
tv_booking_order_num.text = it.toString()
})
}
}
private fun initViewPager() {
val sectionsPagerAdapter = SectionsPagerAdapter(this, supportFragmentManager, ints)
view_pager.adapter = sectionsPagerAdapter
view_pager.offscreenPageLimit = 4
view_pager.offscreenPageLimit = 1
view_pager.addOnPageChangeListener(object : ViewPager.OnPageChangeListener {
override fun onPageScrollStateChanged(state: Int) {
......@@ -392,7 +399,7 @@ class DeliveryOrderMainActivity : BaseActivity() {
override fun callBack(type: Int) {
//-1斷開連接,\n-2:消息傳輸錯誤,\n0:連接消息,\n1:登錄通知,\n2:登出通知,\n3:外賣送單通知,\n4:自取送單通知,\n5:歷史訂單通知,\n6:修改訂單狀態通知,\n7:支付成功通知"
if (type == 3 || type == 4 || type == 5
|| type == 6 || type == 7) {
|| type == 6 || type == 7 || type == 0) {
pageViewModel.refreshState.postValue(selectPosition)
}
//刷新餘額
......
......@@ -3,14 +3,17 @@ package com.gingersoft.gsa.delivery_pick_mode.ui.activity
import android.os.Bundle
import android.view.View
import androidx.lifecycle.ViewModelProvider
import com.billy.cc.core.component.CCUtil
import com.gingersoft.gsa.cloud.base.utils.time.TimePickerUtils
import com.gingersoft.gsa.cloud.base.utils.time.TimeUtils
import com.gingersoft.gsa.cloud.base.utils.toast.ToastUtils
import com.gingersoft.gsa.cloud.constans.DeliveryPickConstans
import com.gingersoft.gsa.delivery_pick_mode.R
import com.gingersoft.gsa.delivery_pick_mode.model.viewModel.HistoryOrderViewModel
import com.gingersoft.gsa.delivery_pick_mode.ui.base.BaseActivity
import com.gingersoft.gsa.delivery_pick_mode.ui.fragment.HistoryFragment
import com.gingersoft.gsa.delivery_pick_mode.util.InjectorUtil
import com.gingersoft.gsa.delivery_pick_mode.util.getmColor
import com.google.android.material.tabs.TabLayout
import kotlinx.android.synthetic.main.activity_history_order.*
import java.text.ParseException
......@@ -24,6 +27,8 @@ class HistoryOrderActivity : BaseActivity() {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_history_order)
// type = CCUtil.getNavigateParam(this, , )
tv_start_time.text = TimeUtils.getOldDate(0)
tv_end_time.text = TimeUtils.getOldDate(0)
......@@ -49,12 +54,12 @@ class HistoryOrderActivity : BaseActivity() {
override fun onTabReselected(tab: TabLayout.Tab?) {
}
})
supportFragmentManager.beginTransaction().add(R.id.content_layout, HistoryFragment.newInstance()).commit()
}
private fun initViewModel() {
mViewModel = ViewModelProvider(this, InjectorUtil.getHistoryModelFactory())[HistoryOrderViewModel::class.java].apply {
orderType = CCUtil.getNavigateParam(this@HistoryOrderActivity, DeliveryPickConstans.ORDER_TYPE, 0)
historyTime.observe(this@HistoryOrderActivity, androidx.lifecycle.Observer {
tv_start_time.text = it
})
......@@ -75,7 +80,7 @@ class HistoryOrderActivity : BaseActivity() {
private fun initAppTop() {
qm_other_order_bar.setTitle(R.string.history_order)
qm_other_order_bar.addLeftImageButton(R.drawable.icon_return, R.id.iv_left_back).setOnClickListener { finish() }
qm_other_order_bar.setBackgroundColor(resources.getColor(R.color.theme_color))
qm_other_order_bar.setBackgroundColor(getmColor(R.color.theme_color))
}
fun onClickListener(v: View?) {
......
......@@ -58,6 +58,7 @@ class OrderDetailsActivity : BaseActivity() {
private var isRead: Int = -1
private var state: Int = -1
private var isTimeOut: Boolean = false
private var isBookingOrder: Boolean = false
lateinit var skeletonScreen: ViewSkeletonScreen
var restaurantId: Int = -1
......@@ -91,6 +92,7 @@ class OrderDetailsActivity : BaseActivity() {
isRead = intent.getIntExtra("isRead", -1)//是否已讀訂單
state = intent.getIntExtra("orderStatus", -1)//訂單狀態
isTimeOut = intent.getBooleanExtra("isTimeOut", false)//接單是否超時
isBookingOrder = intent.getBooleanExtra("isBookingOrder", false)//是否是預約單
pageViewModel = ViewModelProvider(this, InjectorUtil.getWeatherModelFactory())[PageViewModel::class.java].apply {
if (isRead == 0) {
......@@ -216,8 +218,22 @@ class OrderDetailsActivity : BaseActivity() {
tv_order_state.setTextColor(resources.getColor(R.color.order_state2_color))
}
}
8 -> {//預約單
if (!isBookingOrder) {
btnBuilder.getSureBtn()?.let {
btnList.add(it)
}
}
btnBuilder.getCancelBtn()?.let {
btnList.add(it)
}
orderStatusText = "待確認"
}
else -> {//待確認訂單
btnBuilder.getSureBtn()?.let {
if (isBookingOrder) {
it.btnContent = "確認接單"
}
btnList.add(it)
}
btnBuilder.getCancelBtn()?.let {
......@@ -521,7 +537,11 @@ class OrderDetailsActivity : BaseActivity() {
private fun PageViewModel.confirmOrder(orderDetails: OrderDetails.DataBean, trafficType: String = "", isPrint: Boolean = true) {
showLoading()
confirmOrder(orderDetails, trafficType, restaurantId, isPrint) { msg ->
var status = 2
if (isBookingOrder) {
status = 8
}
confirmOrder(orderDetails, status, trafficType, restaurantId, if (isBookingOrder) false else isPrint) { msg ->
cancelDialogForLoading()
val intent = Intent()
intent.putExtra("deliveryAmount", orderDetails.deliveryAmount)
......
......@@ -10,6 +10,7 @@ import androidx.recyclerview.widget.LinearLayoutManager
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication
import com.gingersoft.gsa.cloud.base.common.bean.PayMethod
import com.gingersoft.gsa.cloud.base.utils.MoneyUtil
import com.gingersoft.gsa.cloud.base.utils.toast.ToastUtils
import com.gingersoft.gsa.cloud.base.widget.DialogUtils
import com.gingersoft.gsa.cloud.print.bean.OrderDetails.DataBean
import com.gingersoft.gsa.delivery_pick_mode.R
......@@ -61,7 +62,11 @@ class PayActivity : BaseActivity() {
pageViewModel.payTypeBean.observe(this, Observer {
//獲取支付方式
// other_pay_view.loadInfo(this, PayTypeInfo.getPayMethodByPayType(it), MoneyUtil.sub(orderDetails.TOTAL_AMOUNT!!.toDouble(), orderDetails.discount_amount), foodCount)
other_pay_view.notifyBillMethodAdapter(it)
if (it == null) {
ToastUtils.show(this@PayActivity, "沒有配置支付方式")
} else {
other_pay_view.notifyBillMethodAdapter(it)
}
})
other_pay_view.setmOnSureClickLisenter { payMethods ->
......@@ -72,7 +77,7 @@ class PayActivity : BaseActivity() {
hepler.getView<TextView>(R.id.tv_dialog_confirm).setOnClickListener {
dialog.dismiss()
showLoading()
pageViewModel.closingBill(orderDetails, payMethods){_, _ ->
pageViewModel.closingBill(orderDetails, payMethods) { _, _ ->
cancelDialogForLoading()
setResult(RESULT_OK)
finish()
......
......@@ -73,9 +73,7 @@ class OtherOrdersAdapter(var context: Context, var outTime: Int) : Adapter<Other
3 -> ContextCompat.getDrawable(holder.itemView.context, R.drawable.ic_truck)
else -> null
}
// @drawable/ic_motorcycle
var state: String? = null
val bg = GradientDrawable()
bg.cornerRadius = dp2px(5f).toFloat()
......@@ -102,6 +100,10 @@ class OtherOrdersAdapter(var context: Context, var outTime: Int) : Adapter<Other
state = "製作中"
bg.setColor(getColor(R.color.order_state1_color))
}
data.STATUS == 8 -> {
state = "待製作"
bg.setColor(getColor(R.color.order_state4_color))
}
data.STATUS == 3 -> {
state = if (data.order_type == 7) {
"待取餐"
......
......@@ -30,6 +30,6 @@ class SectionsPagerAdapter(private val context: Context, fm: FragmentManager, va
override fun getCount(): Int {
// Show 5 total pages.
return 5
return titles.size
}
}
\ No newline at end of file
......@@ -11,6 +11,7 @@ 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
......@@ -29,27 +30,40 @@ class PlaceholderFragment : BaseFragment(R.layout.fragment_other_order) {
private val restaurantId by lazy { GsaCloudApplication.getRestaurantId(activity) }
private val memberId by lazy { GsaCloudApplication.getMemberId(activity) }
private lateinit var adapter: OtherOrdersAdapter
private var position = 0
override fun onActivityCreated(savedInstanceState: Bundle?) {
super.onActivityCreated(savedInstanceState)
position = arguments?.getInt(INDEX) ?: 0
pageViewModel.apply {
// 綁定狀態,如果這個值發生變化
refreshState.observe(viewLifecycleOwner, Observer {
if (arguments?.getInt(INDEX) == it) {
if (position == it) {
page = 1
getOrderList(false)
}
})
//有多少個Fragment就添加多少個監聽
while (mOrderList.size <= arguments?.getInt(INDEX)!!) {
while (mOrderList.size <= position) {
mOrderList.add(MutableLiveData())
}
// 綁定監聽當前fragment的數據項
mOrderList[arguments?.getInt(INDEX)!!].observe(viewLifecycleOwner, Observer {
mOrderList[position].observe(viewLifecycleOwner, Observer {
cancelDialogForLoading()
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)
......@@ -72,7 +86,11 @@ class PlaceholderFragment : BaseFragment(R.layout.fragment_other_order) {
})
appointmentType.observe(viewLifecycleOwner, Observer {
refresh()
if (position <= 1) {
//判斷小於1是因為只有 前兩個狀態才有預約單
showLoading("獲取數據中...")
refresh()
}
})
}
// 初始化recyclerview
......@@ -111,6 +129,14 @@ class PlaceholderFragment : BaseFragment(R.layout.fragment_other_order) {
intent.putExtra("orderStatus", data.STATUS)
intent.putExtra("orderPayType", data.orderPayType)
intent.putExtra("isRead", data.isRead)
//傳遞是否是預約單
if (position <= 1) {
if (pageViewModel.appointmentType.value == 1) {
//預約單
intent.putExtra("isBookingOrder", true)
}
}
//已指派物流 並且 狀態為未接單 才判斷是否超時
if (data.isDelete == 0 && data.curStat < 2) {
if (pageViewModel.timeOut == 0) {
......
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="@dimen/dp_8" />
<solid android:color="@color/close_btn_color" />
</shape>
\ No newline at end of file
......@@ -451,15 +451,14 @@
<TextView
android:id="@+id/tv_immediate_order_num"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_gravity="center_horizontal"
android:layout_marginLeft="@dimen/dp_5"
android:layout_toRightOf="@id/tv_immediate_order"
android:background="@drawable/ui_shape_red_oval"
android:padding="@dimen/dp_2"
android:text="10"
android:layout_width="@dimen/dp_20"
android:layout_height="@dimen/dp_20"
android:gravity="center"
android:textColor="@color/white"
android:textSize="@dimen/dp_12" />
......@@ -485,18 +484,16 @@
<TextView
android:id="@+id/tv_booking_order_num"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_width="@dimen/dp_20"
android:layout_height="@dimen/dp_20"
android:layout_centerVertical="true"
android:layout_gravity="center_horizontal"
android:layout_marginLeft="@dimen/dp_5"
android:layout_toRightOf="@id/tv_booking_order"
android:background="@drawable/ui_shape_red_oval"
android:padding="@dimen/dp_2"
android:text="10"
android:gravity="center"
android:textColor="@color/white"
android:textSize="@dimen/dp_12" />
</RelativeLayout>
</LinearLayout>
......
......@@ -80,7 +80,7 @@ dependencies {
addComponent 'download-module'
addComponent 'table-module'
addComponent 'print-module'
addComponent 'delivery_pick_mode'
addComponent 'delivery_pick_module'
addComponent 'manager-module'
addComponent 'coldchain-module'
......
package com.gingersoft.gsa.cloud.login.mvp.ui.activity.mvp.ui.activity;
import android.app.Activity;
import android.app.Dialog;
import android.content.Intent;
import android.os.Bundle;
......@@ -17,6 +18,7 @@ import com.billy.cc.core.component.CC;
import com.gingersoft.gsa.cloud.base.application.GsaCloudApplication;
import com.gingersoft.gsa.cloud.base.utils.JsonUtils;
import com.gingersoft.gsa.cloud.base.utils.RestaurantInfoUtils;
import com.gingersoft.gsa.cloud.base.utils.log.LogUtil;
import com.gingersoft.gsa.cloud.base.utils.other.TextUtil;
import com.gingersoft.gsa.cloud.base.widget.DialogUtils;
import com.gingersoft.gsa.cloud.constans.AppConstans;
......@@ -35,6 +37,7 @@ import com.gingersoft.gsa.cloud.ui.bean.view.SectionRestaurantItem;
import com.gingersoft.gsa.cloud.ui.widget.dialog.LoadingDialog;
import com.jess.arms.base.BaseActivity;
import com.jess.arms.di.component.AppComponent;
import com.jess.arms.integration.AppManager;
import com.jess.arms.utils.ArmsUtils;
import com.qmuiteam.qmui.widget.QMUITopBar;
import com.qmuiteam.qmui.widget.section.QMUISection;
......@@ -45,6 +48,8 @@ import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import javax.inject.Inject;
import butterknife.BindView;
import static com.jess.arms.utils.Preconditions.checkNotNull;
......@@ -52,6 +57,8 @@ import static com.jess.arms.utils.Preconditions.checkNotNull;
public class ChooseRestaurantActivity extends BaseActivity<ChooseRestaurantPresenter> implements ChooseRestaurantContract.View {
@Inject
AppManager mAppManager;
@BindView(R2.id.topbar)
QMUITopBar mTopBar;
@BindView(R2.id.section_layout)
......@@ -268,6 +275,7 @@ public class ChooseRestaurantActivity extends BaseActivity<ChooseRestaurantPrese
@Override
public void jumpDownloadActivity() {
killBeforeActivity();
CC.obtainBuilder("Component.Download")
.setActionName("showDownloadActivity")
.addParam("fromPage", 1)
......@@ -275,6 +283,19 @@ public class ChooseRestaurantActivity extends BaseActivity<ChooseRestaurantPrese
.call();
}
private void killBeforeActivity() {
List<Activity> activities = mAppManager.getActivityList();
for (int i = activities.size(); i >= 0; i--) {
if (i < activities.size()) {
Activity activity = activities.get(i);
if (!activity.getClass().getName().equals(getClass().getName())) {
LogUtil.d(TAG, "killBeforeActivty: " + i + " - " + activity.getClass().getSimpleName());
mAppManager.killActivity(activity.getClass());
mAppManager.removeActivity(activity);
}
}
}
}
@Override
public void jumpActivity(Class activity) {
startActivity(new Intent(this, activity));
......
......@@ -50,8 +50,6 @@ dependencies {
api project(':updateApk')
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
annotationProcessor rootProject.ext.dependencies["dagger2-compiler"]
debugImplementation rootProject.ext.dependencies["canary-debug"]
releaseImplementation rootProject.ext.dependencies["canary-release"]
......
......@@ -172,9 +172,9 @@ public class BusinessReportPresenter extends BasePresenter<BusinessReportContrac
List<DailyReportBean> dailyReportBeans = new ArrayList<>();
dailyReportBeans.add(new DailyReportBean("支付統計", "賬單數量", "佔比(%)", "金額"));
for (OrderAnalysisBean.DataBean.ListBean listBean : info.getData().getList()) {
dailyReportBeans.add(new DailyReportBean(listBean.getPayName(), listBean.getBillNum() + "", listBean.getPercentage() + "", listBean.getPayAmount() + ""));
dailyReportBeans.add(new DailyReportBean(listBean.getPayName(), listBean.getBillNum() + "", listBean.getPercentage() + "", MoneyUtil.get_ItemDecimals_money(listBean.getPayAmount()) + ""));
}
dailyReportBeans.add(new DailyReportBean("合計", info.getData().getBillNumSum() + "", "100", info.getData().getAmountSum() + ""));
dailyReportBeans.add(new DailyReportBean("合計", info.getData().getBillNumSum() + "", "100", MoneyUtil.get_ItemDecimals_money(info.getData().getAmountSum()) + ""));
mRootView.loadOrderAnalysis(dailyReportBeans);
} else {
mRootView.loadOrderAnalysis(new ArrayList<>());
......@@ -212,9 +212,10 @@ public class BusinessReportPresenter extends BasePresenter<BusinessReportContrac
List<DailyReportBean> dailyReportBeans = new ArrayList<>();
dailyReportBeans.add(new DailyReportBean("訂單類型", "訂單數量", "佔比(%)", "金額"));
for (OrderDetailsReport.DataBean.ListBean listBean : info.getData().getList()) {
dailyReportBeans.add(new DailyReportBean(listBean.getOrderType(), listBean.getBillNum() + "", listBean.getPercentage() + "", listBean.getPayAmount() + ""));
dailyReportBeans.add(new DailyReportBean(listBean.getOrderType(), listBean.getBillNum() + "", listBean.getPercentage() + "", MoneyUtil.get_ItemDecimals_money(listBean.getPayAmount()) + ""));
}
dailyReportBeans.add(new DailyReportBean("合計", info.getData().getBillNumSum() + "", "100", info.getData().getAmountSum() + ""));
dailyReportBeans.add(new DailyReportBean("合計", info.getData().getBillNumSum() + "", "100", MoneyUtil.get_ItemDecimals_money(info.getData().getAmountSum()) + ""));
mRootView.loadOrderDetailsReport(dailyReportBeans);
} else {
mRootView.loadOrderDetailsReport(new ArrayList<>());
......@@ -277,16 +278,16 @@ public class BusinessReportPresenter extends BasePresenter<BusinessReportContrac
String[] itemNames = new String[]{"項目銷售總金額", "折扣", "服務費", "賬單小數", "簽單", "貼士", "餐盒費", "送貨費", "營業金額淨值"};
List<BusinessBean> businessBeans = new ArrayList<>();
if (dataBean != null) {
businessBeans.add(new BusinessBean(itemNames[0], String.valueOf(dataBean.getFoodAmount())));
businessBeans.add(new BusinessBean(itemNames[1], String.valueOf(dataBean.getDisAmount())));
businessBeans.add(new BusinessBean(itemNames[2], String.valueOf(dataBean.getSeramount())));
businessBeans.add(new BusinessBean(itemNames[3], String.valueOf(dataBean.getRoundAmount())));
businessBeans.add(new BusinessBean(itemNames[4], String.valueOf(dataBean.getSaleAmount())));
businessBeans.add(new BusinessBean(itemNames[5], String.valueOf(dataBean.getTisAmount())));
businessBeans.add(new BusinessBean(itemNames[6], String.valueOf(dataBean.getBoxAmount())));
businessBeans.add(new BusinessBean(itemNames[7], String.valueOf(dataBean.getDelAmount())));
businessBeans.add(new BusinessBean(itemNames[0], String.valueOf(MoneyUtil.get_ItemDecimals_money(dataBean.getFoodAmount()))));
businessBeans.add(new BusinessBean(itemNames[1], String.valueOf(MoneyUtil.get_ItemDecimals_money(dataBean.getDisAmount()))));
businessBeans.add(new BusinessBean(itemNames[2], String.valueOf(MoneyUtil.get_ItemDecimals_money(dataBean.getSeramount()))));
businessBeans.add(new BusinessBean(itemNames[3], String.valueOf(MoneyUtil.get_ItemDecimals_money(dataBean.getRoundAmount()))));
businessBeans.add(new BusinessBean(itemNames[4], String.valueOf(MoneyUtil.get_ItemDecimals_money(dataBean.getSaleAmount()))));
businessBeans.add(new BusinessBean(itemNames[5], String.valueOf(MoneyUtil.get_ItemDecimals_money(dataBean.getTisAmount()))));
businessBeans.add(new BusinessBean(itemNames[6], String.valueOf(MoneyUtil.get_ItemDecimals_money(dataBean.getBoxAmount()))));
businessBeans.add(new BusinessBean(itemNames[7], String.valueOf(MoneyUtil.get_ItemDecimals_money(dataBean.getDelAmount()))));
double netProfit = MoneyUtil.sub(dataBean.getFoodAmount(), dataBean.getDisAmount(), dataBean.getSeramount(), dataBean.getRoundAmount(), dataBean.getSaleAmount(), dataBean.getTisAmount(), dataBean.getBoxAmount(), dataBean.getDelAmount());
businessBeans.add(new BusinessBean(itemNames[8], String.valueOf(netProfit)));
businessBeans.add(new BusinessBean(itemNames[8], String.valueOf(MoneyUtil.get_ItemDecimals_money(netProfit))));
} else {
//為空,全部顯示0
for (String itemName : itemNames) {
......
......@@ -150,7 +150,7 @@ public class NewMainPresenter extends BasePresenter<NewMainContract.Model, NewMa
.build();
//關閉心跳
CC.obtainBuilder("Component.OtherOrder")
CC.obtainBuilder("ComponentDeliveryPick")
.setActionName("closeHeart")
.build()
.call();
......
......@@ -386,7 +386,7 @@ public class NewMainActivity extends BaseFragmentActivity<NewMainPresenter> impl
.build()
.call();
} else if (name.equals("外送/自取")) {
CC.obtainBuilder("Component.OtherOrder")
CC.obtainBuilder("ComponentDeliveryPick")
.setActionName("orderActivity")
.build()
.call();
......
......@@ -16,6 +16,7 @@ import androidx.core.content.ContextCompat;
import com.gingersoft.gsa.cloud.base.utils.toast.ToastUtils;
import com.gingersoft.gsa.cloud.base.utils.view.QRCodeUtil;
import com.gingersoft.gsa.cloud.constans.HttpsConstans;
import com.gingersoft.gsa.cloud.main.R;
import com.gingersoft.gsa.cloud.main.R2;
import com.gingersoft.gsa.cloud.main.di.component.DaggerErCodeComponent;
......@@ -169,7 +170,9 @@ public class RestaurantQrCodeActivity extends BaseActivity<QrCodePresenter> impl
initTab();
}
private View getQrCodeView(String title, String url) {
private View getQrCodeView(String title, String oldUrl) {
String url = HttpsConstans.ROOT_URL + oldUrl;
View view = View.inflate(mContext, R.layout.layout_qrcode_item, null);
TextView tvTitle = view.findViewById(R.id.tv_qrcode_item_title);
ImageView qrCode = view.findViewById(R.id.iv_qr_code);
......
......@@ -25,7 +25,7 @@ public class BusinessInfoAdapter extends BaseQuickAdapter<BusinessBean, BaseView
@Override
protected void convert(BaseViewHolder helper, BusinessBean item) {
helper.setText(R.id.tv_business_info_amount, item.getAmount() + "");
helper.setText(R.id.tv_business_info_amount, item.getAmount());
helper.setText(R.id.tv_business_info_name, item.getProjectName());
if (isPrint) {
((TextView) helper.getView(R.id.tv_business_info_name)).setTextSize(22);
......
......@@ -19,7 +19,7 @@
android:layout_gravity="bottom"
android:background="@color/theme_color"
android:gravity="center"
android:text="清機"
android:text="日結清機"
android:textColor="@color/theme_white_color"
android:textSize="@dimen/dp_15" />
......
......@@ -47,7 +47,6 @@ dependencies {
kapt rootProject.ext.dependencies["dagger2-compiler"]
kapt rootProject.ext.dependencies["butterknife-compiler"]
implementation 'androidx.appcompat:appcompat:1.1.0'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test:runner:1.3.0'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0'
......
......@@ -40,9 +40,7 @@ android {
dependencies {
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'androidx.appcompat:appcompat:1.1.0'
//不要超過1.0.2,不然android5.1.1用webview會有問題
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
androidTestImplementation 'androidx.test:runner:1.2.0'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
annotationProcessor rootProject.ext.dependencies["dagger2-compiler"]
......
......@@ -94,6 +94,9 @@ public class PrjBean {
private String takeTime;
private String sendTime;
private int currentIndex;//當前是第幾張prj
private int totalPrj;//本次總共有多少張prj
public int getId() {
return id;
}
......@@ -325,6 +328,22 @@ public class PrjBean {
public void setSendTime(String sendTime) {
this.sendTime = sendTime;
}
public int getCurrentIndex() {
return currentIndex;
}
public void setCurrentIndex(int currentIndex) {
this.currentIndex = currentIndex;
}
public int getTotalPrj() {
return totalPrj;
}
public void setTotalPrj(int totalPrj) {
this.totalPrj = totalPrj;
}
}
public Map<String, List<Bean>> getPrjMap() {
......
......@@ -113,6 +113,7 @@ public class PrintPrjKitchen extends PrinterRoot {
TextView tvKitChenLocation = view.findViewById(R.id.tv_kitchen_location);
TextView tvPeople = view.findViewById(R.id.tv_people);
TextView tvOperator = view.findViewById(R.id.tv_operator);
TextView tvCurrentPageIndex = view.findViewById(R.id.tv_prj_page_index);
RecyclerView rvFood = view.findViewById(R.id.rv_kitchen_food);
TextView tvTableNumber2 = view.findViewById(R.id.tv_kitchen_print_table_number2);
LinearLayout layoutOpenTableTime = view.findViewById(R.id.layout_opening_table_time);
......@@ -186,6 +187,8 @@ public class PrintPrjKitchen extends PrinterRoot {
tvOrderTime.setText(TimeUtils.getCurrentTimeInString(TimeUtils.DEFAULT_DATE_MDHM));
//操作人員
tvOperator.setText(prjBean.getUserName());
tvCurrentPageIndex.setText(prjBean.getCurrentIndex() + "/" + prjBean.getTotalPrj());
return viewToZoomBitmap(context, view, printerDeviceBean);
}
......
......@@ -77,6 +77,7 @@ public class PrjService extends Service implements ReceiveListener {
private List<PrintCurrencyBean> printCurrencyBeans;//通用打印配置
private Context mContext;
private String TAG = "Prj";
@Override
public void onCreate() {
super.onCreate();
......@@ -87,7 +88,7 @@ public class PrjService extends Service implements ReceiveListener {
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
mContext = this;
ThreadPoolManager.getInstence().putExecutableTasks(()->{
ThreadPoolManager.getInstence().putExecutableTasks(() -> {
getPrintList();
//開始請求
startGetPrjInfo();
......@@ -311,12 +312,15 @@ public class PrjService extends Service implements ReceiveListener {
// }
// }
// }
private int totalPrj;
private int currentIndex;
private void newPrint(String json) {
printDatas.clear();
listMap.clear();
currentIndex = 1;
PrjBean prjBean = JsonUtils.parseObject(json, PrjBean.class);
if (prjBean == null || prjBean.getData() == null) {
return;
}
//有數據,取消輪詢,等待打印結束。
......@@ -335,6 +339,7 @@ public class PrjService extends Service implements ReceiveListener {
if (datas == null || datas.size() <= 0) {
return;
}
totalPrj += datas.size();
listMap.put(key, datas);//打印位置和需要打印的數據
// PrintPrjKitchen.getPrjMap().put(key, datas);
// printDatas.addAll(datas);
......@@ -342,6 +347,13 @@ public class PrjService extends Service implements ReceiveListener {
} catch (JSONException e) {
e.printStackTrace();
}
for (Map.Entry<String, List<PrjBean.DataBean.Bean>> prjMap : listMap.entrySet()) {
for (PrjBean.DataBean.Bean bean : prjMap.getValue()) {
bean.setCurrentIndex(currentIndex);
bean.setTotalPrj(totalPrj);
currentIndex++;
}
}
//讀取打印機和通用配置,可以優化
//獲取所有打印機
PrinterDeviceDaoUtils printerDeviceDaoUtils = new PrinterDeviceDaoUtils(this);
......@@ -384,6 +396,7 @@ public class PrjService extends Service implements ReceiveListener {
//打印回調了多少次都要記錄下來,所以一次只能傳遞一張prj過去,等到打印回調再打第二張
private String EpsIds = "";
/**
* 生成用於打印的prj的Bitmap
*/
......@@ -548,7 +561,7 @@ public class PrjService extends Service implements ReceiveListener {
}
}
private String getPrintIds(List<Map<String, Bitmap>> bitmapMaps){
private String getPrintIds(List<Map<String, Bitmap>> bitmapMaps) {
StringBuilder stringBuilder = new StringBuilder();
for (int i = 0; i < bitmapMaps.size(); i++) {
for (Map.Entry<String, Bitmap> mapEntry : bitmapMaps.get(i).entrySet()) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment