Commit 8e495d2d by mReturn

处理工单页改版

parent 8d476a37
......@@ -30,7 +30,9 @@ public interface MultiProcessOrderContract {
List<String> getImages();
List<String> getSnImages();
String getSnNumbers();
void setSnNumbers(String snStrs);
void showSnView(boolean show);
}
abstract class Presenter extends BasePresenter<View> {
......
......@@ -43,11 +43,11 @@ public class MultiProcessOrderPresenter extends MultiProcessOrderContract.Presen
private Spu mSpu;
private ArrayList<String> mImages = new ArrayList<>();
private ArrayList<String> mHttpUrl = new ArrayList<>();
private ArrayList<String> mSnHttpUrl = new ArrayList<>();
// private ArrayList<String> mSnHttpUrl = new ArrayList<>();
public ObservableField<Spu> mDetail = new ObservableField<>();
public ObservableField<String> mInfo = new ObservableField<>();
public ObservableField<String> mBrandName = new ObservableField<>();
public ObservableField<String> mSn = new ObservableField<>();
// public ObservableField<String> mSn = new ObservableField<>();
public ObservableField<Boolean> mSpuState = new ObservableField<>();
public ObservableField<Boolean> mIsShowSn = new ObservableField<>(false);
public ObservableField<Boolean> mIsShowPhone = new ObservableField<>(false);
......@@ -70,7 +70,8 @@ public class MultiProcessOrderPresenter extends MultiProcessOrderContract.Presen
mId = mSpu.getId();
mDetail.set(mSpu);
mBrandName.set(mSpu.getBrandName());
mSn.set(mSpu.getSn());
mView.setSnNumbers(mSpu.getSn());
// mSn.set(mSpu.getSn());
mView.initAddIv();
mView.initPhotoView(mImages);
if (mSpus.size() >= 2 || (mSpus.size() == 1 && mSpu.getStatus() == 2)) {
......@@ -89,21 +90,13 @@ public class MultiProcessOrderPresenter extends MultiProcessOrderContract.Presen
PictureFileUtils.deleteCacheDirFile(BaseApplication.getContext());
}
private MultipartBody.Part[] packPhoto(List<String> imageUrl, String type) {
private MultipartBody.Part[] packPhoto(List<String> imageUrl) {
ArrayList<File> files = new ArrayList<>();
if (type.equals("sn")) {
mSnHttpUrl.clear();
} else {
mHttpUrl.clear();
}
mHttpUrl.clear();
if (imageUrl != null && imageUrl.size() > 0) {
for (int i = 0; i < imageUrl.size(); i++) {
if (imageUrl.get(i).contains("http")) {
if (type.equals("sn")) {
mSnHttpUrl.add(imageUrl.get(i));
} else {
mHttpUrl.add(imageUrl.get(i));
}
mHttpUrl.add(imageUrl.get(i));
} else {
files.add(new File(imageUrl.get(i)));
}
......@@ -126,7 +119,7 @@ public class MultiProcessOrderPresenter extends MultiProcessOrderContract.Presen
params.put("customerCheckComment", info);
params.put("id", id);
params.put("brandName", mBrandName.get());
params.put("sn", mSn.get());
params.put("sn", mView.getSnNumbers());
//照片上传
if (imageUrl != null) {
StringBuilder str = new StringBuilder();
......@@ -195,58 +188,25 @@ public class MultiProcessOrderPresenter extends MultiProcessOrderContract.Presen
@Override
public void commitPhoto() {
if (mIsShowSn.get() && (TextUtils.isEmpty(mSn.get()) || mView.getSnImages().size() == 0)) {
ToastUtils.showShortToast(R.string.sn_photo_not_null);
if (mIsShowSn.get() && (TextUtils.isEmpty(mView.getSnNumbers()))) {
ToastUtils.showShortToast(R.string.sn_not_null);
return;
}
mView.showDialog();
MultipartBody.Part[] parts;
List<String> imageUrl = mView.getImages();
if (imageUrl != null && imageUrl.size() > 0) {
parts = packPhoto(imageUrl, "");
parts = packPhoto(imageUrl);
if (parts.length == 0) {
if (mIsShowSn.get()) {
List<String> images = mView.getSnImages();
MultipartBody.Part[] snParts = packPhoto(images, "sn");
if (mSnHttpUrl.size() == 1) {
commitOrder(mHttpUrl, mSnHttpUrl);
} else {
BaseApiFactory.uploadPhoto(snParts).subscribe(baseObserver(
list -> commitOrder(mHttpUrl, list)));
}
} else {
commitOrder(mHttpUrl, null);
}
commitOrder(mHttpUrl, null);
} else {
BaseApiFactory.uploadPhoto(parts).subscribe(baseObserver(list -> {
list.addAll(0, mHttpUrl);
if (mIsShowSn.get()) {
List<String> images = mView.getSnImages();
MultipartBody.Part[] snParts = packPhoto(images, "sn");
if (mSnHttpUrl.size() == 1) {
commitOrder(list, mSnHttpUrl);
} else {
BaseApiFactory.uploadPhoto(snParts).subscribe(baseObserver(
list1 -> commitOrder(list, list1)));
}
} else {
commitOrder(list, null);
}
commitOrder(list, null);
}));
}
} else {
if (mIsShowSn.get()) {
List<String> images = mView.getSnImages();
MultipartBody.Part[] snParts = packPhoto(images, "sn");
if (mSnHttpUrl.size() == 1) {
commitOrder(null, mSnHttpUrl);
} else {
BaseApiFactory.uploadPhoto(snParts).subscribe(baseObserver(
list -> commitOrder(null, list)));
}
} else {
commitOrder(null, null);
}
commitOrder(null, null);
}
}
......@@ -276,7 +236,8 @@ public class MultiProcessOrderPresenter extends MultiProcessOrderContract.Presen
OrderApiFactory.getMultiProcessInfo(mId).subscribe(baseObserver(spu -> {
mDetail.set(spu);
mBrandName.set(spu.getBrandName());
mSn.set(spu.getSn());
mView.setSnNumbers(spu.getSn());
// mSn.set(spu.getSn());
mInfo.set(spu.getCustomerCheckComment());
List<Pic> pics = spu.getListPic();
ArrayList<String> imges = new ArrayList<>();
......@@ -289,6 +250,7 @@ public class MultiProcessOrderPresenter extends MultiProcessOrderContract.Presen
}
if (spu.getNeedSerialNumPic() != null && spu.getNeedSerialNumPic() == 1) {
mIsShowSn.set(true);
mView.showSnView(true);
}
}));
}
......
......@@ -46,6 +46,7 @@ import java.util.List;
/**
* Created by luofan
* on 2018/5/21.
* 提交验收
*/
public class MultipleProcessActivity extends BaseActivity<MultipleProcessPresenter, ActivityMultipleProcessBinding> implements MultipleProcessContract.View {
......
......@@ -42,7 +42,7 @@
android:name=".ui.activity.QrCodeActivity"
android:screenOrientation="portrait" />
<activity
android:name=".ui.activity.OrderDetailsActivity"
android:name="com.dayu.order.ui.activity.OrderDetailsActivity"
android:configChanges="orientation|screenSize|keyboardHidden"
android:windowSoftInputMode="adjustResize"
android:screenOrientation="portrait" />
......
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
>
<LinearLayout
android:id="@+id/rl_serial_num"
android:layout_width="match_parent"
android:layout_height="@dimen/dp_54"
android:layout_below="@id/line_version"
android:background="@color/cl_white"
android:gravity="center_vertical"
android:orientation="horizontal">
<TextView
android:id="@+id/tv_serial_num"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_13"
android:text="@string/order_serail"
android:textColor="@color/cl_home_title_text_color"
android:textSize="@dimen/sp_15" />
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="*"
android:textColor="#F74848"
android:textSize="@dimen/sp_15" />
<EditText
android:id="@+id/et_serial_num"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_marginLeft="76dp"
android:layout_weight="1"
android:background="@null"
android:hint="@string/order_serail_hint"
android:maxEms="50"
android:textColor="@color/default_text_color"
android:textSize="@dimen/sp_15" />
<ImageView
android:id="@+id/scan"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="15dp"
android:src="@drawable/icon_scan" />
</LinearLayout>
<ImageView
android:id="@+id/line_serial"
style="@style/line"
/>
</LinearLayout>
......@@ -23,4 +23,7 @@
<string name="write_remark">写备注</string>
<string name="no_str"></string>
<string name="yes_str"></string>
<string name="collect_device_info">收集设备信息</string>
<string name="record_service_result">记录服务结果</string>
<string name="pls_fill_pre_sn">请先补全上面的序列号</string>
</resources>
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 sign in to comment