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;
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.UpdateOrderStatusBean;
import com.gingersoft.gsa.cloud.bean.PublicBean;
import com.gingersoft.gsa.cloud.print.bean.OrderDetails;
import com.jess.arms.mvp.IModel;
import com.jess.arms.mvp.IView;
......@@ -37,5 +38,7 @@ public interface OrderDetailsContract {
Observable<ReadBean> setIsRead(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;
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.service.OrderDetailService;
import com.gingersoft.gsa.cloud.bean.PublicBean;
import com.gingersoft.gsa.cloud.print.bean.OrderDetails;
import com.google.gson.Gson;
import com.jess.arms.di.scope.ActivityScope;
......@@ -69,5 +70,10 @@ public class OrderDetailsModel extends BaseModel implements OrderDetailsContract
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 {
private double dayOrderNum;
private int sumNum;
private String Open_Status;
private int isPrintPdf;//是否已打印PDF 0否 1是
public int getCurStat() {
return curStat;
......@@ -435,6 +436,14 @@ public class OrderList {
this.Open_Status = Open_Status;
}
public int getIsPrintPdf() {
return isPrintPdf;
}
public void setIsPrintPdf(int isPrintPdf) {
this.isPrintPdf = isPrintPdf;
}
public static class OrderType7Bean {
/**
* typeTotalAmount : 986.9
......
......@@ -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.ShipAnyOrdersNewBean;
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 io.reactivex.Observable;
......@@ -43,4 +44,8 @@ public interface OrderDetailService {
@POST("printerRecording/add" + RetrofitUrlManager.IDENTIFICATION_PATH_SIZE + 2)
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;
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.other.TextUtil;
import com.gingersoft.gsa.cloud.bean.PublicBean;
import com.gingersoft.gsa.cloud.print.bean.OrderDetails;
import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.http.imageloader.ImageLoader;
......@@ -77,10 +78,12 @@ public class OrderDetailsPresenter extends BasePresenter<OrderDetailsContract.Mo
.build();
mModel.findOrderDetails(requestBody)
.subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> {})
.doOnSubscribe(disposable -> {
})
.subscribeOn(AndroidSchedulers.mainThread())
.observeOn(AndroidSchedulers.mainThread())
.doAfterTerminate(() -> {})
.doAfterTerminate(() -> {
})
.compose(RxLifecycleUtils.bindToLifecycle(mRootView))
.subscribe(new ErrorHandleSubscriber<OrderDetails>(mErrorHandler) {
......@@ -223,7 +226,7 @@ public class OrderDetailsPresenter extends BasePresenter<OrderDetailsContract.Mo
mRootView.updateOrderState(status);
if (TextUtil.isNotEmptyOrNullOrUndefined(labUrl)) {
//下載打印文件
download(labUrl);
download(dataBean.getID(), labUrl);
} else {
mRootView.showMessage("未獲取到物流單下載鏈接,無法打印");
mRootView.killMyself();
......@@ -271,8 +274,9 @@ public class OrderDetailsPresenter extends BasePresenter<OrderDetailsContract.Mo
}
}
public void download(String url) {
public void download(int orderId, String url) {
try {
updatePrintPdfStatus(orderId);
Disposable subscribe = Observable.create((ObservableOnSubscribe<File>) emitter -> {
OkHttpClient client = new OkHttpClient.Builder().build();
Request request = new Request.Builder()
......@@ -406,7 +410,7 @@ public class OrderDetailsPresenter extends BasePresenter<OrderDetailsContract.Mo
public void cancelLogistics(int orderId, boolean isCancelOrder) {
RequestBody requestBody = new FormBody.Builder()
.add("restaurantId", GsaCloudApplication.getRestaurantId() +"")
.add("restaurantId", GsaCloudApplication.getRestaurantId() + "")
.add("orderId", orderId + "")
.add("reasonId", "")
.add("reasonDesc", "")
......@@ -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
RequestBody requestBody = new FormBody.Builder()
.add("orderId", orderId + "")
.build();
Log.e("eee", "訂單ID:" + orderId);
mModel.findOrderDetails(requestBody)
.subscribeOn(Schedulers.io())
.doOnSubscribe(disposable -> {})
......
......@@ -303,7 +303,7 @@ public class OrderDetailsActivity extends BaseActivity<OrderDetailsPresenter> im
requestPermissions((allGranted, grantedList, deniedList) -> {
if (allGranted) {
if (TextUtil.isNotEmptyOrNullOrUndefined(labUrl)) {
mPresenter.download(labUrl);
mPresenter.download(bean.getID(), labUrl);
} else {
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 {
//正式版: 1.0.3 3
//內部測試版:1.2.0 20
versionCode : 8,
versionName : "1.0.8"
versionName : "1.0.82"
]
version = [
......
......@@ -194,7 +194,7 @@ public abstract class PrinterRoot implements PrintSocketHolder.OnStateChangedLis
n5Print(bitmaps, listener);
} else if (PrintConstans.PRINT_MODEL_WISEPOS.contains(model)) {
//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
public void onSubscribe(Disposable d) {
......@@ -233,17 +233,15 @@ public abstract class PrinterRoot implements PrintSocketHolder.OnStateChangedLis
case "requestType":
wiseposBean.setRequestType(xmlPullParser.nextText());
break;
default:
if (wiseposBean.getState().equals("SUCCESS")) {
listener.printSuccess();
} else {
listener.printFile("打印失敗");
}
break;
}
break;
case XmlPullParser.END_TAG:
//這個節點解析完成
if (wiseposBean.getState() != null && wiseposBean.getState().equals("SUCCESS")) {
listener.printSuccess();
} else {
listener.printFile("打印失敗");
}
break;
}
eventType = xmlPullParser.next();
......
......@@ -254,9 +254,17 @@ public class PrinterAddActivity extends BaseActivity<PrinterAddPresenter> implem
private void setLanguage() {
StringBuilder stringBuilder = new StringBuilder();
for (int i = 0; i < languageType.length; i++) {
stringBuilder.append(languageSelect.get(Integer.parseInt(languageType[i]) - 1));
if (i != languageType.length - 1) {
stringBuilder.append(",");
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) {
stringBuilder.append(",");
}
}
}
tvLanguage.setText(stringBuilder.toString());
......
......@@ -32,11 +32,16 @@ public class KitChenPrjPrintFoodAdapter extends BaseQuickAdapter<PrjBean.DataBea
protected void convert(BaseViewHolder helper, PrjBean.DataBean.Bean item) {
String[] languageTypes = printerDeviceBean.getLanguageType().split(",");
LinearLayout layout = helper.getView(R.id.layout_print_kitchen_parent);
for (int i = 0; i < languageTypes.length; i++) {
if (languageTypes[i].equals("2")) {
for (String type : languageTypes) {
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()));
} else if (languageTypes[i].equals("3")) {
} else if (languageType.equals("3")) {
//語言三
layout.addView(getOtherLanguageView(helper.getAdapterPosition(), item.getItemType(), item.getProductName3(), item.getNumber()));
} 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