Commit f1f8f0c0 by Wyh

9.23 1、調用是否打印PDF接口 2、打印機支持多語言BUG

Signed-off-by: Wyh <1239658231>
parent 9f8088c0
...@@ -4,6 +4,7 @@ import com.gingersoft.coldchain_module.mvp.model.bean.CancelLogisticsBean; ...@@ -4,6 +4,7 @@ import com.gingersoft.coldchain_module.mvp.model.bean.CancelLogisticsBean;
import com.gingersoft.coldchain_module.mvp.model.bean.ReadBean; import com.gingersoft.coldchain_module.mvp.model.bean.ReadBean;
import com.gingersoft.coldchain_module.mvp.model.bean.ShipAnyOrdersNewBean; import com.gingersoft.coldchain_module.mvp.model.bean.ShipAnyOrdersNewBean;
import com.gingersoft.coldchain_module.mvp.model.bean.UpdateOrderStatusBean; import com.gingersoft.coldchain_module.mvp.model.bean.UpdateOrderStatusBean;
import com.gingersoft.gsa.cloud.bean.PublicBean;
import com.gingersoft.gsa.cloud.print.bean.OrderDetails; import com.gingersoft.gsa.cloud.print.bean.OrderDetails;
import com.jess.arms.mvp.IModel; import com.jess.arms.mvp.IModel;
import com.jess.arms.mvp.IView; import com.jess.arms.mvp.IView;
...@@ -37,5 +38,7 @@ public interface OrderDetailsContract { ...@@ -37,5 +38,7 @@ public interface OrderDetailsContract {
Observable<ReadBean> setIsRead(RequestBody requestBody); Observable<ReadBean> setIsRead(RequestBody requestBody);
Observable<String> addPrj(RequestBody requestBody); Observable<String> addPrj(RequestBody requestBody);
Observable<PublicBean> updatePrintPdfStatus(RequestBody requestBody);
} }
} }
...@@ -8,6 +8,7 @@ import com.gingersoft.coldchain_module.mvp.model.bean.ReadBean; ...@@ -8,6 +8,7 @@ import com.gingersoft.coldchain_module.mvp.model.bean.ReadBean;
import com.gingersoft.coldchain_module.mvp.model.bean.ShipAnyOrdersNewBean; import com.gingersoft.coldchain_module.mvp.model.bean.ShipAnyOrdersNewBean;
import com.gingersoft.coldchain_module.mvp.model.bean.UpdateOrderStatusBean; import com.gingersoft.coldchain_module.mvp.model.bean.UpdateOrderStatusBean;
import com.gingersoft.coldchain_module.mvp.model.service.OrderDetailService; import com.gingersoft.coldchain_module.mvp.model.service.OrderDetailService;
import com.gingersoft.gsa.cloud.bean.PublicBean;
import com.gingersoft.gsa.cloud.print.bean.OrderDetails; import com.gingersoft.gsa.cloud.print.bean.OrderDetails;
import com.google.gson.Gson; import com.google.gson.Gson;
import com.jess.arms.di.scope.ActivityScope; import com.jess.arms.di.scope.ActivityScope;
...@@ -69,5 +70,10 @@ public class OrderDetailsModel extends BaseModel implements OrderDetailsContract ...@@ -69,5 +70,10 @@ public class OrderDetailsModel extends BaseModel implements OrderDetailsContract
return mRepositoryManager.obtainRetrofitService(OrderDetailService.class).addPrj(requestBody); return mRepositoryManager.obtainRetrofitService(OrderDetailService.class).addPrj(requestBody);
} }
@Override
public Observable<PublicBean> updatePrintPdfStatus(RequestBody requestBody) {
return mRepositoryManager.obtainRetrofitService(OrderDetailService.class).updatePrintPdfStatus(requestBody);
}
} }
\ No newline at end of file
...@@ -186,6 +186,7 @@ public class OrderList { ...@@ -186,6 +186,7 @@ public class OrderList {
private double dayOrderNum; private double dayOrderNum;
private int sumNum; private int sumNum;
private String Open_Status; private String Open_Status;
private int isPrintPdf;//是否已打印PDF 0否 1是
public int getCurStat() { public int getCurStat() {
return curStat; return curStat;
...@@ -435,6 +436,14 @@ public class OrderList { ...@@ -435,6 +436,14 @@ public class OrderList {
this.Open_Status = Open_Status; this.Open_Status = Open_Status;
} }
public int getIsPrintPdf() {
return isPrintPdf;
}
public void setIsPrintPdf(int isPrintPdf) {
this.isPrintPdf = isPrintPdf;
}
public static class OrderType7Bean { public static class OrderType7Bean {
/** /**
* typeTotalAmount : 986.9 * typeTotalAmount : 986.9
......
...@@ -4,6 +4,7 @@ import com.gingersoft.coldchain_module.mvp.model.bean.CancelLogisticsBean; ...@@ -4,6 +4,7 @@ import com.gingersoft.coldchain_module.mvp.model.bean.CancelLogisticsBean;
import com.gingersoft.coldchain_module.mvp.model.bean.ReadBean; import com.gingersoft.coldchain_module.mvp.model.bean.ReadBean;
import com.gingersoft.coldchain_module.mvp.model.bean.ShipAnyOrdersNewBean; import com.gingersoft.coldchain_module.mvp.model.bean.ShipAnyOrdersNewBean;
import com.gingersoft.coldchain_module.mvp.model.bean.UpdateOrderStatusBean; import com.gingersoft.coldchain_module.mvp.model.bean.UpdateOrderStatusBean;
import com.gingersoft.gsa.cloud.bean.PublicBean;
import com.gingersoft.gsa.cloud.print.bean.OrderDetails; import com.gingersoft.gsa.cloud.print.bean.OrderDetails;
import io.reactivex.Observable; import io.reactivex.Observable;
...@@ -43,4 +44,8 @@ public interface OrderDetailService { ...@@ -43,4 +44,8 @@ public interface OrderDetailService {
@POST("printerRecording/add" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2) @POST("printerRecording/add" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<String> addPrj(@Body RequestBody requestBody); Observable<String> addPrj(@Body RequestBody requestBody);
@Headers({"Domain-Name: ricepon_gsa"})
@POST("shipanyTransportOrderInfo/update" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
Observable<PublicBean> updatePrintPdfStatus(@Body RequestBody requestBody);
} }
...@@ -14,6 +14,7 @@ import com.gingersoft.gsa.cloud.base.utils.FileUtils; ...@@ -14,6 +14,7 @@ import com.gingersoft.gsa.cloud.base.utils.FileUtils;
import com.gingersoft.gsa.cloud.base.utils.gson.GsonUtils; 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.log.LogUtil;
import com.gingersoft.gsa.cloud.base.utils.other.TextUtil; import com.gingersoft.gsa.cloud.base.utils.other.TextUtil;
import com.gingersoft.gsa.cloud.bean.PublicBean;
import com.gingersoft.gsa.cloud.print.bean.OrderDetails; import com.gingersoft.gsa.cloud.print.bean.OrderDetails;
import com.jess.arms.di.scope.ActivityScope; import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.http.imageloader.ImageLoader; import com.jess.arms.http.imageloader.ImageLoader;
...@@ -77,10 +78,12 @@ public class OrderDetailsPresenter extends BasePresenter<OrderDetailsContract.Mo ...@@ -77,10 +78,12 @@ public class OrderDetailsPresenter extends BasePresenter<OrderDetailsContract.Mo
.build(); .build();
mModel.findOrderDetails(requestBody) mModel.findOrderDetails(requestBody)
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> {}) .doOnSubscribe(disposable -> {
})
.subscribeOn(AndroidSchedulers.mainThread()) .subscribeOn(AndroidSchedulers.mainThread())
.observeOn(AndroidSchedulers.mainThread()) .observeOn(AndroidSchedulers.mainThread())
.doAfterTerminate(() -> {}) .doAfterTerminate(() -> {
})
.compose(RxLifecycleUtils.bindToLifecycle(mRootView)) .compose(RxLifecycleUtils.bindToLifecycle(mRootView))
.subscribe(new ErrorHandleSubscriber<OrderDetails>(mErrorHandler) { .subscribe(new ErrorHandleSubscriber<OrderDetails>(mErrorHandler) {
...@@ -223,7 +226,7 @@ public class OrderDetailsPresenter extends BasePresenter<OrderDetailsContract.Mo ...@@ -223,7 +226,7 @@ public class OrderDetailsPresenter extends BasePresenter<OrderDetailsContract.Mo
mRootView.updateOrderState(status); mRootView.updateOrderState(status);
if (TextUtil.isNotEmptyOrNullOrUndefined(labUrl)) { if (TextUtil.isNotEmptyOrNullOrUndefined(labUrl)) {
//下載打印文件 //下載打印文件
download(labUrl); download(dataBean.getID(), labUrl);
} else { } else {
mRootView.showMessage("未獲取到物流單下載鏈接,無法打印"); mRootView.showMessage("未獲取到物流單下載鏈接,無法打印");
mRootView.killMyself(); mRootView.killMyself();
...@@ -271,8 +274,9 @@ public class OrderDetailsPresenter extends BasePresenter<OrderDetailsContract.Mo ...@@ -271,8 +274,9 @@ public class OrderDetailsPresenter extends BasePresenter<OrderDetailsContract.Mo
} }
} }
public void download(String url) { public void download(int orderId, String url) {
try { try {
updatePrintPdfStatus(orderId);
Disposable subscribe = Observable.create((ObservableOnSubscribe<File>) emitter -> { Disposable subscribe = Observable.create((ObservableOnSubscribe<File>) emitter -> {
OkHttpClient client = new OkHttpClient.Builder().build(); OkHttpClient client = new OkHttpClient.Builder().build();
Request request = new Request.Builder() Request request = new Request.Builder()
...@@ -406,7 +410,7 @@ public class OrderDetailsPresenter extends BasePresenter<OrderDetailsContract.Mo ...@@ -406,7 +410,7 @@ public class OrderDetailsPresenter extends BasePresenter<OrderDetailsContract.Mo
public void cancelLogistics(int orderId, boolean isCancelOrder) { public void cancelLogistics(int orderId, boolean isCancelOrder) {
RequestBody requestBody = new FormBody.Builder() RequestBody requestBody = new FormBody.Builder()
.add("restaurantId", GsaCloudApplication.getRestaurantId() +"") .add("restaurantId", GsaCloudApplication.getRestaurantId() + "")
.add("orderId", orderId + "") .add("orderId", orderId + "")
.add("reasonId", "") .add("reasonId", "")
.add("reasonDesc", "") .add("reasonDesc", "")
...@@ -452,4 +456,32 @@ public class OrderDetailsPresenter extends BasePresenter<OrderDetailsContract.Mo ...@@ -452,4 +456,32 @@ public class OrderDetailsPresenter extends BasePresenter<OrderDetailsContract.Mo
}); });
} }
public void updatePrintPdfStatus(int orderId) {
RequestBody requestBody = new FormBody.Builder()
.add("orderId", orderId + "")
.add("isPrint", "1")
.build();
mModel.updatePrintPdfStatus(requestBody)
.subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> {
})
.subscribeOn(AndroidSchedulers.mainThread())
.observeOn(AndroidSchedulers.mainThread())
.doAfterTerminate(() -> mRootView.hideLoading())
.compose(RxLifecycleUtils.bindToLifecycle(mRootView))
.subscribe(new ErrorHandleSubscriber<PublicBean>(mErrorHandler) {
@Override
public void onNext(@NonNull PublicBean info) {
}
@Override
public void onError(Throwable t) {
super.onError(t);
mRootView.killMyself();
}
});
}
} }
...@@ -161,7 +161,6 @@ public class OrderListPresenter extends BasePresenter<OrderListContract.Model, O ...@@ -161,7 +161,6 @@ public class OrderListPresenter extends BasePresenter<OrderListContract.Model, O
RequestBody requestBody = new FormBody.Builder() RequestBody requestBody = new FormBody.Builder()
.add("orderId", orderId + "") .add("orderId", orderId + "")
.build(); .build();
Log.e("eee", "訂單ID:" + orderId);
mModel.findOrderDetails(requestBody) mModel.findOrderDetails(requestBody)
.subscribeOn(Schedulers.io()) .subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> {}) .doOnSubscribe(disposable -> {})
......
...@@ -303,7 +303,7 @@ public class OrderDetailsActivity extends BaseActivity<OrderDetailsPresenter> im ...@@ -303,7 +303,7 @@ public class OrderDetailsActivity extends BaseActivity<OrderDetailsPresenter> im
requestPermissions((allGranted, grantedList, deniedList) -> { requestPermissions((allGranted, grantedList, deniedList) -> {
if (allGranted) { if (allGranted) {
if (TextUtil.isNotEmptyOrNullOrUndefined(labUrl)) { if (TextUtil.isNotEmptyOrNullOrUndefined(labUrl)) {
mPresenter.download(labUrl); mPresenter.download(bean.getID(), labUrl);
} else { } else {
showMessage("獲取打印鏈接失敗"); showMessage("獲取打印鏈接失敗");
} }
......
package com.gingersoft.coldchain_module;
import org.junit.Test;
import static org.junit.Assert.*;
/**
* Example local unit test, which will execute on the development machine (host).
*
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
*/
public class ExampleUnitTest {
@Test
public void addition_isCorrect() {
assertEquals(4, 2 + 2);
}
}
\ No newline at end of file
...@@ -8,7 +8,7 @@ ext { ...@@ -8,7 +8,7 @@ ext {
//正式版: 1.0.3 3 //正式版: 1.0.3 3
//內部測試版:1.2.0 20 //內部測試版:1.2.0 20
versionCode : 8, versionCode : 8,
versionName : "1.0.8" versionName : "1.0.82"
] ]
version = [ version = [
......
...@@ -194,7 +194,7 @@ public abstract class PrinterRoot implements PrintSocketHolder.OnStateChangedLis ...@@ -194,7 +194,7 @@ public abstract class PrinterRoot implements PrintSocketHolder.OnStateChangedLis
n5Print(bitmaps, listener); n5Print(bitmaps, listener);
} else if (PrintConstans.PRINT_MODEL_WISEPOS.contains(model)) { } else if (PrintConstans.PRINT_MODEL_WISEPOS.contains(model)) {
//BBPOS Wisepos 打印 localhost 192.168.1.162 //BBPOS Wisepos 打印 localhost 192.168.1.162
OkHttp3Utils.get("http://localhost:8080/pos?transactionType=PRINT&isExternal=true&apiVersion=21&printData=<html><body><H2>測試打印結果</H2></body></html>").subscribe(new Observer<String>() { OkHttp3Utils.get("http://localhost:8080/pos?transactionType=PRINT&isExternal=true&apiVersion=21&printData=<html><body><H2>BBPOS test print</H2></body></html>").subscribe(new Observer<String>() {
@Override @Override
public void onSubscribe(Disposable d) { public void onSubscribe(Disposable d) {
...@@ -233,17 +233,15 @@ public abstract class PrinterRoot implements PrintSocketHolder.OnStateChangedLis ...@@ -233,17 +233,15 @@ public abstract class PrinterRoot implements PrintSocketHolder.OnStateChangedLis
case "requestType": case "requestType":
wiseposBean.setRequestType(xmlPullParser.nextText()); wiseposBean.setRequestType(xmlPullParser.nextText());
break; break;
default:
if (wiseposBean.getState().equals("SUCCESS")) {
listener.printSuccess();
} else {
listener.printFile("打印失敗");
}
break;
} }
break; break;
case XmlPullParser.END_TAG: case XmlPullParser.END_TAG:
//這個節點解析完成 //這個節點解析完成
if (wiseposBean.getState() != null && wiseposBean.getState().equals("SUCCESS")) {
listener.printSuccess();
} else {
listener.printFile("打印失敗");
}
break; break;
} }
eventType = xmlPullParser.next(); eventType = xmlPullParser.next();
......
...@@ -254,11 +254,19 @@ public class PrinterAddActivity extends BaseActivity<PrinterAddPresenter> implem ...@@ -254,11 +254,19 @@ public class PrinterAddActivity extends BaseActivity<PrinterAddPresenter> implem
private void setLanguage() { private void setLanguage() {
StringBuilder stringBuilder = new StringBuilder(); StringBuilder stringBuilder = new StringBuilder();
for (int i = 0; i < languageType.length; i++) { for (int i = 0; i < languageType.length; i++) {
stringBuilder.append(languageSelect.get(Integer.parseInt(languageType[i]) - 1)); int index;
if (languageType[i].contains(".")) {
index = Integer.parseInt(languageType[i].substring(0, languageType[i].indexOf("."))) - 1;
} else {
index = Integer.parseInt(languageType[i]) - 1;
}
if (index >= 0 && index < languageSelect.size()) {
stringBuilder.append(languageSelect.get(index));
if (i != languageType.length - 1) { if (i != languageType.length - 1) {
stringBuilder.append(","); stringBuilder.append(",");
} }
} }
}
tvLanguage.setText(stringBuilder.toString()); tvLanguage.setText(stringBuilder.toString());
} }
......
...@@ -32,11 +32,16 @@ public class KitChenPrjPrintFoodAdapter extends BaseQuickAdapter<PrjBean.DataBea ...@@ -32,11 +32,16 @@ public class KitChenPrjPrintFoodAdapter extends BaseQuickAdapter<PrjBean.DataBea
protected void convert(BaseViewHolder helper, PrjBean.DataBean.Bean item) { protected void convert(BaseViewHolder helper, PrjBean.DataBean.Bean item) {
String[] languageTypes = printerDeviceBean.getLanguageType().split(","); String[] languageTypes = printerDeviceBean.getLanguageType().split(",");
LinearLayout layout = helper.getView(R.id.layout_print_kitchen_parent); LinearLayout layout = helper.getView(R.id.layout_print_kitchen_parent);
for (int i = 0; i < languageTypes.length; i++) { for (String type : languageTypes) {
if (languageTypes[i].equals("2")) {
String languageType = type;
if (languageType.contains(".")) {
languageType = type.substring(0, type.indexOf("."));
}
if (languageType.equals("2")) {
//語言二 //語言二
layout.addView(getOtherLanguageView(helper.getAdapterPosition(), item.getItemType(), item.getProductName2(), item.getNumber())); layout.addView(getOtherLanguageView(helper.getAdapterPosition(), item.getItemType(), item.getProductName2(), item.getNumber()));
} else if (languageTypes[i].equals("3")) { } else if (languageType.equals("3")) {
//語言三 //語言三
layout.addView(getOtherLanguageView(helper.getAdapterPosition(), item.getItemType(), item.getProductName3(), item.getNumber())); layout.addView(getOtherLanguageView(helper.getAdapterPosition(), item.getItemType(), item.getProductName3(), item.getNumber()));
} else { } else {
......
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