diff --git a/app/build.gradle b/app/build.gradle index 3966841..144b308 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -9,7 +9,7 @@ android { //noinspection ExpiredTargetSdkVersion targetSdkVersion 29 versionCode 1 - versionName "1.0.16" + versionName "1.0.18" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" ndk { abiFilters 'armeabi', 'x86', 'armeabi-v7a', 'x86_64', 'arm64-v8a' diff --git a/app/release/output.json b/app/release/output.json index 81e2a65..c0477a9 100644 --- a/app/release/output.json +++ b/app/release/output.json @@ -1 +1 @@ -[{"outputType":{"type":"APK"},"apkInfo":{"type":"MAIN","splits":[],"versionCode":1,"versionName":"1.0.16","enabled":true,"outputFile":"维科上料报工系统_v1.0.16.apk","fullName":"release","baseName":"release"},"path":"维科上料报工系统_v1.0.16.apk","properties":{}}] \ No newline at end of file +[{"outputType":{"type":"APK"},"apkInfo":{"type":"MAIN","splits":[],"versionCode":1,"versionName":"1.0.18","enabled":true,"outputFile":"维科上料报工系统_v1.0.18.apk","fullName":"release","baseName":"release"},"path":"维科上料报工系统_v1.0.18.apk","properties":{}}] \ No newline at end of file diff --git a/app/src/main/java/com/techscan/wk/rxretrofit/ApiService.java b/app/src/main/java/com/techscan/wk/rxretrofit/ApiService.java index 8595d61..6bd5c70 100644 --- a/app/src/main/java/com/techscan/wk/rxretrofit/ApiService.java +++ b/app/src/main/java/com/techscan/wk/rxretrofit/ApiService.java @@ -92,6 +92,9 @@ public interface ApiService { @GET("/web/order/getByzboxid") Observable getByzboxid(@Query("zboxid") String zboxid); + @GET("/web/order/getStork") + Observable getStork(@Query("matnr") String matnr); + @POST("/web/report/storage") Observable storage(@Body String json); diff --git a/app/src/main/java/com/techscan/wk/rxretrofit/HttpMethods.java b/app/src/main/java/com/techscan/wk/rxretrofit/HttpMethods.java index c07342f..d6efbf1 100644 --- a/app/src/main/java/com/techscan/wk/rxretrofit/HttpMethods.java +++ b/app/src/main/java/com/techscan/wk/rxretrofit/HttpMethods.java @@ -378,6 +378,14 @@ public class HttpMethods { .observeOn(AndroidSchedulers.mainThread()) .subscribe(observer); } + public void getStork(String matnr, + Observer observer) { + getApiService().getStork(matnr) + .subscribeOn(Schedulers.io()) + .unsubscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .subscribe(observer); + } public void getlgort(Observer observer) { getApiService().getlgort() diff --git a/app/src/main/java/com/techscan/wk/ui/proreq/ProReqActivity.java b/app/src/main/java/com/techscan/wk/ui/proreq/ProReqActivity.java index ff60eba..0350608 100644 --- a/app/src/main/java/com/techscan/wk/ui/proreq/ProReqActivity.java +++ b/app/src/main/java/com/techscan/wk/ui/proreq/ProReqActivity.java @@ -90,7 +90,8 @@ import q.rorbin.badgeview.QBadgeView; /** * Description:鐢熶骇涓婃枡 - * [)>@06@QRPART@10V101010@1P11002734@3SX1000019400001@1T20240724001@Q20@14D20240724@@ + * [)>@06@QRPART@10V101010@1P33700680@3SX1000019400001@1T20240724001@Q2000@14D20240724@@ + * * @author MULEI * @date 2024/9/11 */ @@ -202,10 +203,10 @@ public class ProReqActivity extends CommonFunctionActivity { boolean isHIDE_GW = PreferencesUtil.getBoolean(context, AppConst.HIDE_GW, false); for (int i = 0; i < dynamicFormBeans.size(); i++) { DynamicFormBean bean = dynamicFormBeans.get(i); - if(bean.getFieldName().equals("ZCJBM")){ + if (bean.getFieldName().equals("ZCJBM")) { bean.setShow(!isHIDE_CJ); } - if(bean.getFieldName().equals("ZGWH")){ + if (bean.getFieldName().equals("ZGWH")) { bean.setShow(!isHIDE_GW); } } @@ -459,7 +460,7 @@ public class ProReqActivity extends CommonFunctionActivity { return; } - if(!checkNumber(quantity)){ + if (!checkNumber(quantity)) { showError(getString(R.string.The_quantity_is_not_correct)); setNextFocus("quantity"); return; @@ -500,7 +501,7 @@ public class ProReqActivity extends CommonFunctionActivity { DialogUtil.showErrorInfoDialog(context, "褰撳墠鏁伴噺" + quantity + "锛屽巻鍙插凡鎵暟閲" + (finalHisScanNum + data) + "锛屽凡鎵暟閲忔诲拰瓒呰繃鏉$爜鏁伴噺" + finalBarNum + "锛岃纭"); } else { - addDetail(barDataBean,currenScanNum); + chekcStock(barDataBean, currenScanNum); } } } @@ -512,15 +513,50 @@ public class ProReqActivity extends CommonFunctionActivity { }); } else { - addDetail(barDataBean,currenScanNum); + chekcStock(barDataBean, currenScanNum); } } + + private void chekcStock(AnalysisBarBean barDataBean, double currenScanNum) { + //璁$畻鍑哄綋鍓嶇墿鏂欏湪鏄庣粏涓凡鎵弿鐨勬暟閲 + Double hisScanNum = LitePal.where("matnr = ? ", barDataBean.getMateriel()).sum(ProReqDetailBean.class, "erfmg", double.class); + HttpMethods.getInstance().getStork(barDataBean.getMateriel(), new BaseObserver(context) { + @Override + protected void onSuccess(ResponseBody body) throws Exception { + String string = body.string(); + Type objectType = new TypeToken>() { + }.getType(); + BaseResponseBean baseResponseBean = gson.fromJson(string, objectType); + if (baseResponseBean.getCode() != 200) { + showError(baseResponseBean.getMsg()); + return; + } + if (baseResponseBean.getData() != null) { + //鏈嶅姟绔繑鍥炶绠卞彿宸叉壂鎻忔暟閲 + double data = baseResponseBean.getData(); + if (hisScanNum + currenScanNum > data) { + DialogUtil.showErrorInfoDialog(context, "褰撳墠鏁伴噺" + currenScanNum + "锛屾槑缁嗗凡鎵暟閲" + hisScanNum + + "锛屽凡鎵暟閲忔诲拰瓒呰繃搴撳瓨鏁伴噺" + data + "锛岃纭"); + } else { + addDetail(barDataBean, currenScanNum); + } + } + } + + @Override + protected void onFailure(Throwable e) throws Exception { + CustomErrorDialog(e, ProReqActivity.this); + } + }); + } + + /** * 鍔犲叆鏄庣粏鏂规硶 */ - private void addDetail(AnalysisBarBean barDataBean,double currenScanNum) { + private void addDetail(AnalysisBarBean barDataBean, double currenScanNum) { //DynamicFormBean ZLYSJItem = dynamicFormAdapter.getItemByFieldName("ZLYSJ");//棰嗙敤鏃堕棿 DynamicFormBean ZCJBMItem = dynamicFormAdapter.getItemByFieldName("ZCJBM");//杞﹂棿缂栫爜 DynamicFormBean ZGWHItem = dynamicFormAdapter.getItemByFieldName("ZGWH");//宸ヤ綅鍙 @@ -632,7 +668,7 @@ public class ProReqActivity extends CommonFunctionActivity { * @param id 宸ュ崟鍙 */ private void query(String id) { - HttpMethods.getInstance().getOrderInfo(id,true, new BaseObserver(context) { + HttpMethods.getInstance().getOrderInfo(id, true, new BaseObserver(context) { @Override protected void onSuccess(ResponseBody body) throws Exception { String string = body.string(); @@ -942,10 +978,10 @@ public class ProReqActivity extends CommonFunctionActivity { boolean isHIDE_GW = PreferencesUtil.getBoolean(context, AppConst.HIDE_GW, false); for (int i = 0; i < dynamicFormBeans.size(); i++) { DynamicFormBean bean = dynamicFormBeans.get(i); - if(bean.getFieldName().equals("ZCJBM") ){ + if (bean.getFieldName().equals("ZCJBM")) { bean.setShow(!isHIDE_CJ); } - if(bean.getFieldName().equals("ZGWH")){ + if (bean.getFieldName().equals("ZGWH")) { bean.setShow(!isHIDE_GW); } } diff --git a/app/src/main/java/com/techscan/wk/ui/reportwork/ReportWorkOffsetActivity.java b/app/src/main/java/com/techscan/wk/ui/reportwork/ReportWorkOffsetActivity.java index 8037aab..8463576 100644 --- a/app/src/main/java/com/techscan/wk/ui/reportwork/ReportWorkOffsetActivity.java +++ b/app/src/main/java/com/techscan/wk/ui/reportwork/ReportWorkOffsetActivity.java @@ -314,7 +314,7 @@ public class ReportWorkOffsetActivity extends CommonFunctionActivity { QMUIDialog.MessageDialogBuilder messageDialogBuilder = new QMUIDialog.MessageDialogBuilder(context); messageDialogBuilder.setTitle(getResources().getString(R.string.tips_title)) .setCancelable(false) - .setMessage(getString(R.string.Data_saved_successfully)) + .setMessage(baseResponseBean.getData()) .addAction(getResources().getString(R.string.cancel_info), (dialog, index) -> dialog.dismiss()) .addAction(getResources().getString(R.string.confirm_info), (dialog, index) -> { dialog.dismiss();