Commit 634b34c9 by mReturn

收发货UI

parent ed6ea768
Showing with 1539 additions and 108 deletions
...@@ -79,6 +79,7 @@ dependencies { ...@@ -79,6 +79,7 @@ dependencies {
api 'com.scwang.smartrefresh:SmartRefreshHeader:1.1.0' api 'com.scwang.smartrefresh:SmartRefreshHeader:1.1.0'
api 'com.google.android:flexbox:1.0.0' api 'com.google.android:flexbox:1.0.0'
api 'com.github.chrisbanes:PhotoView:2.0.0' api 'com.github.chrisbanes:PhotoView:2.0.0'
api 'cjt.library.wheel:camera:1.1.9'
api project(':umeng') api project(':umeng')
......
...@@ -17,6 +17,8 @@ ...@@ -17,6 +17,8 @@
<activity android:name="com.dayu.base.ui.activity.PreviewActivty" /> <activity android:name="com.dayu.base.ui.activity.PreviewActivty" />
<activity android:name="com.dayu.base.ui.activity.ImgGalleryActivty" <activity android:name="com.dayu.base.ui.activity.ImgGalleryActivty"
android:screenOrientation="portrait"/> android:screenOrientation="portrait"/>
<activity android:name="com.dayu.base.ui.activity.CameraActivity"
android:screenOrientation="portrait"/>
</application> </application>
</manifest> </manifest>
package com.dayu.base.api; package com.dayu.base.api;
import com.dayu.base.api.protocol.AddressInfoBean;
import com.dayu.base.api.protocol.BaseResponse; import com.dayu.base.api.protocol.BaseResponse;
import com.dayu.base.api.protocol.TreeAddressBean; import com.dayu.base.api.protocol.TreeAddressBean;
import com.dayu.common.Constants; import com.dayu.common.Constants;
...@@ -67,4 +68,12 @@ public interface APIService { ...@@ -67,4 +68,12 @@ public interface APIService {
*/ */
@GET(Constants.API_7300+"/geography/tree/{parentId}") @GET(Constants.API_7300+"/geography/tree/{parentId}")
Observable<BaseResponse<List<TreeAddressBean>>> getTreeAddress(@Path("parentId") int parednId); Observable<BaseResponse<List<TreeAddressBean>>> getTreeAddress(@Path("parentId") int parednId);
/**
* 获取地址信息.
*
* @return
*/
@GET(Constants.API_7100 + "/engineerAddress/default/accountId/{accountId}")
Observable<BaseResponse<AddressInfoBean>> getAddressInfo(@Path("accountId") int accountId);
} }
package com.dayu.usercenter.model.bean; package com.dayu.base.api.protocol;
public class AddressInfoBean { public class AddressInfoBean {
......
package com.dayu.base.ui.activity;
import android.content.Intent;
import android.content.pm.ActivityInfo;
import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.os.Environment;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.view.WindowManager;
import android.widget.Toast;
import com.cjt2325.cameralibrary.JCameraView;
import com.cjt2325.cameralibrary.listener.ClickListener;
import com.cjt2325.cameralibrary.listener.ErrorListener;
import com.cjt2325.cameralibrary.listener.JCameraListener;
import com.cjt2325.cameralibrary.util.DeviceUtil;
import com.cjt2325.cameralibrary.util.FileUtil;
import com.dayu.baselibrary.R;
import com.dayu.common.Constants;
import com.dayu.utils.ToastUtils;
import java.io.File;
/**
* 拍照/视频界面
*/
public class CameraActivity extends AppCompatActivity {
/**
* 视频保存目录
*/
public static final String VIDEO_PATH = "dayu/video";
private JCameraView jCameraView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
setContentView(R.layout.activity_camera);
jCameraView = (JCameraView) findViewById(R.id.jcameraview);
//设置视频保存路径
jCameraView.setSaveVideoPath(Environment.getExternalStorageDirectory().getPath() + File.separator + VIDEO_PATH);
jCameraView.setMediaQuality(JCameraView.MEDIA_QUALITY_HIGH*10);
if (getIntent().hasExtra(Constants.ONLY_VIDEO)) {
jCameraView.setTip(getResources().getString(R.string.moment_take_video));
jCameraView.setFeatures(jCameraView.BUTTON_STATE_ONLY_RECORDER);
} else {
jCameraView.setFeatures(jCameraView.BUTTON_STATE_BOTH);
jCameraView.setTip(getResources().getString(R.string.moment_take_photo));
}
jCameraView.setErrorLisenter(new ErrorListener() {
@Override
public void onError() {
//错误监听
Intent intent = new Intent();
setResult(Constants.CAMERA_CODE, intent);
finish();
}
@Override
public void AudioPermissionError() {
Toast.makeText(CameraActivity.this, getResources().getString(R.string.moment_permission_4), Toast.LENGTH_SHORT).show();
}
});
//JCameraView监听
jCameraView.setJCameraLisenter(new JCameraListener() {
@Override
public void captureSuccess(Bitmap bitmap) {
String path = FileUtil.saveBitmap(VIDEO_PATH, bitmap);
Intent intent = new Intent();
intent.putExtra("imgPath", path);
setResult(Constants.CAMERA_IMG, intent);
finish();
}
@Override
public void recordSuccess(String url, Bitmap firstFrame) {
//获取视频路径
String path = FileUtil.saveBitmap(VIDEO_PATH, firstFrame);
// if (getIntent().hasExtra(Constants.ONLY_VIDEO)){
//// EventBus.getDefault().post(new VideoRecordedEvent(path,url));
// }else {
Intent intent = new Intent();
intent.putExtra("imgPath", path);
intent.putExtra("videoPath", url);
setResult(Constants.CAMERA_VIDEO, intent);
Uri localUri = Uri.parse(url);
Intent localIntent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, localUri);
sendBroadcast(localIntent);
// }
finish();
}
});
jCameraView.setLeftClickListener(new ClickListener() {
@Override
public void onClick() {
CameraActivity.this.finish();
}
});
Log.i("YUU", DeviceUtil.getDeviceModel());
}
@Override
protected void onStart() {
super.onStart();
//全屏显示
if (Build.VERSION.SDK_INT >= 19) {
View decorView = getWindow().getDecorView();
decorView.setSystemUiVisibility(
View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
} else {
View decorView = getWindow().getDecorView();
int option = View.SYSTEM_UI_FLAG_FULLSCREEN;
decorView.setSystemUiVisibility(option);
}
}
@Override
protected void onResume() {
super.onResume();
jCameraView.onResume();
}
@Override
protected void onPause() {
super.onPause();
jCameraView.onPause();
}
}
...@@ -35,30 +35,30 @@ public class Constants { ...@@ -35,30 +35,30 @@ public class Constants {
/** /**
* 测试环境配置. * 测试环境配置.
*/ */
// public static final int LOG_LEVEL = LogUtils.LEVEL_ALL; public static final int LOG_LEVEL = LogUtils.LEVEL_ALL;
// public static final String ENVIROMENT = "debug"; public static final String ENVIROMENT = "debug";
// public static final String BASE_URL = "http://47.94.101.239:3112"; public static final String BASE_URL = "http://47.94.101.239:3112";
// public final static String UP_PHOTO = "/file/uploadMore?targetPath=test/sp/mobile/android/business/checkApply"; public final static String UP_PHOTO = "/file/uploadMore?targetPath=test/sp/mobile/android/business/checkApply";
// public final static String WEB_SOP = "http://47.94.101.239:9004/#/sop"; public final static String WEB_SOP = "http://47.94.101.239:9004/#/sop";
// public final static String CHECK_MULTI_WEB_SOP = "http://47.94.101.239:9004/#/manyServiceResult"; public final static String CHECK_MULTI_WEB_SOP = "http://47.94.101.239:9004/#/manyServiceResult";
// public final static String MULTI_WEB_SOP = "http://47.94.101.239:9004/#/manySop"; public final static String MULTI_WEB_SOP = "http://47.94.101.239:9004/#/manySop";
// public final static String WEB_SOP_DETAIL = "http://47.94.101.239:9004/#/sopdetail"; public final static String WEB_SOP_DETAIL = "http://47.94.101.239:9004/#/sopdetail";
// public final static String WEB_ZHI_SHI = "http://47.94.101.239:9004/#/detail"; public final static String WEB_ZHI_SHI = "http://47.94.101.239:9004/#/detail";
// public static final boolean IS_DEBUG = true; public static final boolean IS_DEBUG = true;
/** /**
* uat环境配置. * uat环境配置.
*/ */
public static final String ENVIROMENT = "uat"; // public static final String ENVIROMENT = "uat";
public static final int LOG_LEVEL = LogUtils.LEVEL_ALL; // public static final int LOG_LEVEL = LogUtils.LEVEL_ALL;
public static final String BASE_URL = "http://47.95.223.6:3112"; // public static final String BASE_URL = "http://47.95.223.6:3112";
public final static String UP_PHOTO = "/file/uploadMore?targetPath=test/sp/mobile/android/business/checkApply"; // public final static String UP_PHOTO = "/file/uploadMore?targetPath=test/sp/mobile/android/business/checkApply";
public final static String WEB_SOP = "http://47.95.223.6:9004/#/sop"; // public final static String WEB_SOP = "http://47.95.223.6:9004/#/sop";
public final static String WEB_SOP_DETAIL = "http://47.95.223.6:9004/#/sopdetail"; // public final static String WEB_SOP_DETAIL = "http://47.95.223.6:9004/#/sopdetail";
public final static String WEB_ZHI_SHI = "http://47.95.223.6:9004/#/detail"; // public final static String WEB_ZHI_SHI = "http://47.95.223.6:9004/#/detail";
public final static String CHECK_MULTI_WEB_SOP = "http://47.95.223.6:9004/#/manyServiceResult"; // public final static String CHECK_MULTI_WEB_SOP = "http://47.95.223.6:9004/#/manyServiceResult";
public final static String MULTI_WEB_SOP = "http://47.95.223.6:9004/#/manySop"; // public final static String MULTI_WEB_SOP = "http://47.95.223.6:9004/#/manySop";
public static final boolean IS_DEBUG = true; // public static final boolean IS_DEBUG = true;
/** /**
* 正式环境. * 正式环境.
...@@ -176,6 +176,7 @@ public class Constants { ...@@ -176,6 +176,7 @@ public class Constants {
public final static String ACCOUNT_BALANCE = "account_balance"; public final static String ACCOUNT_BALANCE = "account_balance";
public final static String ACCOUNT_ID = "accountId"; public final static String ACCOUNT_ID = "accountId";
public final static String ORDER_ID = "orderId"; public final static String ORDER_ID = "orderId";
public final static String ORDER_SOURCE = "order_source"; //1.服务站自建 4.小程序单 5.服务商自建 6.服务商EU单
public final static String TO_DETAIL = "toDetail"; public final static String TO_DETAIL = "toDetail";
public final static String UMENG_DEVICE_TOKEN = "umeng_device_token"; public final static String UMENG_DEVICE_TOKEN = "umeng_device_token";
public final static String ORDER_POSTION = "order_position"; public final static String ORDER_POSTION = "order_position";
...@@ -231,6 +232,10 @@ public class Constants { ...@@ -231,6 +232,10 @@ public class Constants {
public static final String CETIFICATION_STATE = "cetificaiton_state";//1:接单跳转、待预约 0:登录页,个人中心跳转 public static final String CETIFICATION_STATE = "cetificaiton_state";//1:接单跳转、待预约 0:登录页,个人中心跳转
public static final String IS_FORCE = "is_force"; public static final String IS_FORCE = "is_force";
public static final String ONLY_VIDEO = "only_video";
public static final int CAMERA_CODE = 100;
public static final int CAMERA_IMG = 101;
public static final int CAMERA_VIDEO = 102;
public static final HashMap<Integer,List<TreeAddressBean>> treeAddressMap = new HashMap<>(); //地址数据 public static final HashMap<Integer,List<TreeAddressBean>> treeAddressMap = new HashMap<>(); //地址数据
/** /**
......
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<stroke
android:width="1dp"
android:color="@color/common_text_color"/>
<corners android:radius="5dp"/>
<solid android:color="@color/cl_white"/>
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"> <shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="3dp"/> <corners android:radius="5dp"/>
<solid android:color="@color/cl_receiving_order_item_data"/> <solid android:color="@color/cl_receiving_order_item_data"/>
</shape> </shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"> <shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="3dp"/> <corners android:radius="5dp"/>
<solid android:color="@color/cl_line"/> <solid android:color="@color/cl_line"/>
</shape> </shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"> <shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="3dp"/> <corners android:radius="5dp"/>
<solid android:color="@color/text_common_green"/> <solid android:color="@color/text_common_green"/>
</shape> </shape>
\ No newline at end of file
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="24dp"
android:height="24dp"
android:viewportWidth="24.0"
android:viewportHeight="24.0">
<path
android:fillColor="#FFFFFFFF"
android:pathData="M20,11H7.83l5.59,-5.59L12,4l-8,8 8,8 1.41,-1.41L7.83,13H20v-2z"/>
</vector>
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<corners android:radius="8dp"/>
<solid android:color="@color/color_f2"/>
</shape>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<com.cjt2325.cameralibrary.JCameraView
android:id="@+id/jcameraview"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:duration_max="10000"
app:iconLeft="@drawable/ic_back"
app:iconMargin="20dp"
app:iconRight="@null"
app:iconSize="30dp"
app:iconSrc="@drawable/ic_camera" />
</LinearLayout>
...@@ -257,7 +257,7 @@ ...@@ -257,7 +257,7 @@
<string name="server_record">服务记录</string> <string name="server_record">服务记录</string>
<!--<string name="order_part">备件信息</string>--> <!--<string name="order_part">备件信息</string>-->
<string name="order_part">备件物流</string> <string name="order_part">备件物流</string>
<string name="return_one_order_part">备件寄回商家</string> <string name="return_one_order_part">我要向商家发货</string>
<string name="apply_one_order_part">向商家申请备件</string> <string name="apply_one_order_part">向商家申请备件</string>
<string name="order_instruction">视频操作指南</string> <string name="order_instruction">视频操作指南</string>
<string name="open_webview">浏览器打开</string> <string name="open_webview">浏览器打开</string>
...@@ -280,8 +280,8 @@ ...@@ -280,8 +280,8 @@
<string name="order_save_success">数据保存成功</string> <string name="order_save_success">数据保存成功</string>
<string name="no_data">暂无数据</string> <string name="no_data">暂无数据</string>
<string name="dayu_platform">大鱼平台</string> <string name="dayu_platform">大鱼平台</string>
<string name="application_order_part">申请/收货</string> <string name="application_order_part">收货</string>
<string name="return_order_part">返厂/发货</string> <string name="return_order_part">发货</string>
<string name="return_order_part_title">寄回备件</string> <string name="return_order_part_title">寄回备件</string>
<string name="ka_address">收货地址</string> <string name="ka_address">收货地址</string>
<string name="ka_name">收货人名</string> <string name="ka_name">收货人名</string>
...@@ -825,6 +825,7 @@ C) 在甲方使用大鱼平å°æœåŠ¡è¿‡ç¨‹ä¸­äº§ç”Ÿçš„业务数æ®ï¼Œå®¢æˆ·æ•°æ ...@@ -825,6 +825,7 @@ C) 在甲方使用大鱼平å°æœåŠ¡è¿‡ç¨‹ä¸­äº§ç”Ÿçš„业务数æ®ï¼Œå®¢æˆ·æ•°æ
<string name="goods_company">商品所属商家:</string> <string name="goods_company">商品所属商家:</string>
<string name="goods_pn">商品编号PN:</string> <string name="goods_pn">商品编号PN:</string>
<string name="goods_single_price">商品销售单价:</string> <string name="goods_single_price">商品销售单价:</string>
<string name="goods_market_price">市场售价:</string>
<string name="goods_desc">主要功能简介:</string> <string name="goods_desc">主要功能简介:</string>
<string name="goods_video">商品展示视频:</string> <string name="goods_video">商品展示视频:</string>
<string name="advice_seller">咨询商家</string> <string name="advice_seller">咨询商家</string>
...@@ -1006,6 +1007,10 @@ C) 在甲方使用大鱼平å°æœåŠ¡è¿‡ç¨‹ä¸­äº§ç”Ÿçš„业务数æ®ï¼Œå®¢æˆ·æ•°æ ...@@ -1006,6 +1007,10 @@ C) 在甲方使用大鱼平å°æœåŠ¡è¿‡ç¨‹ä¸­äº§ç”Ÿçš„业务数æ®ï¼Œå®¢æˆ·æ•°æ
<string name="limit_100_words">限100字</string> <string name="limit_100_words">限100字</string>
<string name="course_detail">课程详情</string> <string name="course_detail">课程详情</string>
<string name="course_puber">发布方:</string> <string name="course_puber">发布方:</string>
<string name="moment_take_photo">轻触拍照, 按住摄像</string>
<string name="moment_take_video">按住摄像</string>
<string name="moment_permission_4">应用需要录音权限来拍摄视频</string>
<string name="request_permission_failure">获取权限失败</string>
</resources> </resources>
...@@ -99,7 +99,7 @@ ...@@ -99,7 +99,7 @@
<item name="android:layout_height">wrap_content</item> <item name="android:layout_height">wrap_content</item>
<item name="android:orientation">horizontal</item> <item name="android:orientation">horizontal</item>
<item name="android:gravity">center_vertical</item> <item name="android:gravity">center_vertical</item>
<item name="android:layout_marginTop">15dp</item> <item name="android:layout_marginTop">10dp</item>
<item name="android:layout_marginLeft">5dp</item> <item name="android:layout_marginLeft">5dp</item>
<item name="android:layout_marginRight">5dp</item> <item name="android:layout_marginRight">5dp</item>
</style> </style>
...@@ -110,10 +110,18 @@ ...@@ -110,10 +110,18 @@
</style> </style>
<style name="tv_course_content" parent="common_text_style"> <style name="tv_course_content" parent="common_text_style">
<item name="android:layout_marginLeft">10dp</item> <item name="android:layout_marginLeft">15dp</item>
<item name="android:textColor">#8b8b8b</item> <item name="android:textColor">#8b8b8b</item>
</style> </style>
<style name="tv_part_content" parent="common_text_style">
<item name="android:layout_marginLeft">15dp</item>
</style>
<style name="ll_part_content" parent="ll_course_content">
<item name="android:layout_marginLeft">10dp</item>
</style>
<style name="sale_item_text" parent="common_text_style"> <style name="sale_item_text" parent="common_text_style">
<item name="android:maxLines">1</item> <item name="android:maxLines">1</item>
</style> </style>
......
package com.dayu.learncenter.ui.activity; package com.dayu.learncenter.ui.activity;
import android.Manifest;
import android.annotation.SuppressLint;
import android.content.Intent; import android.content.Intent;
import android.text.TextUtils; import android.text.TextUtils;
import android.view.View; import android.view.View;
import com.dayu.base.ui.activity.BaseActivity; import com.dayu.base.ui.activity.BaseActivity;
import com.dayu.base.ui.activity.CameraActivity;
import com.dayu.base.ui.presenter.SImplePresenter; import com.dayu.base.ui.presenter.SImplePresenter;
import com.dayu.common.Constants;
import com.dayu.learncenter.R; import com.dayu.learncenter.R;
import com.dayu.learncenter.databinding.ActivityPubCourseBinding; import com.dayu.learncenter.databinding.ActivityPubCourseBinding;
import com.dayu.utils.GlideImageLoader; import com.dayu.utils.GlideImageLoader;
import com.dayu.utils.MPermissionUtils;
import com.dayu.utils.MediaChooseUtils; import com.dayu.utils.MediaChooseUtils;
import com.dayu.utils.ToastUtils; import com.dayu.utils.ToastUtils;
import com.luck.picture.lib.PictureSelector; import com.luck.picture.lib.PictureSelector;
import com.luck.picture.lib.compress.Luban;
import com.luck.picture.lib.compress.OnCompressListener;
import com.luck.picture.lib.config.PictureConfig; import com.luck.picture.lib.config.PictureConfig;
import com.luck.picture.lib.entity.LocalMedia; import com.luck.picture.lib.entity.LocalMedia;
import java.util.List; import java.util.List;
import java.util.concurrent.TimeUnit;
import io.reactivex.Observable;
import io.reactivex.android.schedulers.AndroidSchedulers;
/** /**
* 开课 * 开课
...@@ -48,6 +55,7 @@ public class PubCourseActivity extends BaseActivity<SImplePresenter, ActivityPub ...@@ -48,6 +55,7 @@ public class PubCourseActivity extends BaseActivity<SImplePresenter, ActivityPub
mBind.btnConfirm.setOnClickListener(view -> onConfimClick()); mBind.btnConfirm.setOnClickListener(view -> onConfimClick());
mBind.rlVideo.setOnClickListener(v -> { mBind.rlVideo.setOnClickListener(v -> {
if (TextUtils.isEmpty(videoPath)) { if (TextUtils.isEmpty(videoPath)) {
// recordVideo();
MediaChooseUtils.chooseSigleVideo(this, 180); MediaChooseUtils.chooseSigleVideo(this, 180);
} }
}); });
...@@ -58,6 +66,30 @@ public class PubCourseActivity extends BaseActivity<SImplePresenter, ActivityPub ...@@ -58,6 +66,30 @@ public class PubCourseActivity extends BaseActivity<SImplePresenter, ActivityPub
mBind.jzVideo.setOnClickListener(v->showToast("click")); mBind.jzVideo.setOnClickListener(v->showToast("click"));
} }
private void recordVideo() {
String[] mPerArr = new String[]{Manifest.permission.RECORD_AUDIO, Manifest.permission.WRITE_EXTERNAL_STORAGE
, Manifest.permission.CAMERA};
MPermissionUtils.requestPermissionsResult(mActivity, 1, mPerArr, new MPermissionUtils.OnPermissionListener() {
@SuppressLint("CheckResult")
@Override
public void onPermissionGranted() {
Observable.timer(200, TimeUnit.MILLISECONDS)
.observeOn(AndroidSchedulers.mainThread())
.subscribe(aLong -> {
Intent intent = new Intent(PubCourseActivity.this, CameraActivity.class);
intent.putExtra(Constants.ONLY_VIDEO, true);
startActivityForResult(intent, Constants.CAMERA_CODE);
});
}
@Override
public void onPermissionDenied() {
ToastUtils.showShortToast(R.string.request_permission_failure);
}
});
}
private void onConfimClick() { private void onConfimClick() {
if (canSubmit()) { if (canSubmit()) {
showToast("submit"); showToast("submit");
......
...@@ -94,7 +94,7 @@ public class HomeLearnFragment extends BaseFragment<SImplePresenter, FragmentHom ...@@ -94,7 +94,7 @@ public class HomeLearnFragment extends BaseFragment<SImplePresenter, FragmentHom
} }
public void setTabNum(int myTabIndex) { public void setTabNum(int myTabIndex) {
EventBus.getDefault().post(new LearnTabNumEvent(1)); // EventBus.getDefault().post(new LearnTabNumEvent(1));
String[] tabNum = new String[]{0 + "", 0 + "", 0 + ""}; String[] tabNum = new String[]{0 + "", 0 + "", 0 + ""};
if (isFirstAddTab) { if (isFirstAddTab) {
mBind.tabLearn.removeAllTabs(); mBind.tabLearn.removeAllTabs();
......
...@@ -13,6 +13,7 @@ import com.dayu.order.api.protocol.OperateInfo; ...@@ -13,6 +13,7 @@ import com.dayu.order.api.protocol.OperateInfo;
import com.dayu.order.api.protocol.Order; import com.dayu.order.api.protocol.Order;
import com.dayu.order.api.protocol.OrderDetail; import com.dayu.order.api.protocol.OrderDetail;
import com.dayu.order.api.protocol.OrderPart; import com.dayu.order.api.protocol.OrderPart;
import com.dayu.order.api.protocol.OrderPartBean;
import com.dayu.order.api.protocol.Pay; import com.dayu.order.api.protocol.Pay;
import com.dayu.order.api.protocol.ServerInstruction; import com.dayu.order.api.protocol.ServerInstruction;
import com.dayu.order.api.protocol.ShipperCompany; import com.dayu.order.api.protocol.ShipperCompany;
...@@ -20,6 +21,7 @@ import com.dayu.order.api.protocol.SopItemBean; ...@@ -20,6 +21,7 @@ import com.dayu.order.api.protocol.SopItemBean;
import com.dayu.order.api.protocol.SopResult; import com.dayu.order.api.protocol.SopResult;
import com.dayu.order.api.protocol.Spu; import com.dayu.order.api.protocol.Spu;
import com.dayu.order.api.protocol.Tab; import com.dayu.order.api.protocol.Tab;
import com.dayu.order.api.protocol.TranCompanyBean;
import com.dayu.order.api.protocol.companyManager; import com.dayu.order.api.protocol.companyManager;
import com.dayu.order.common.OrderConstant; import com.dayu.order.common.OrderConstant;
...@@ -437,4 +439,19 @@ public interface OrderService { ...@@ -437,4 +439,19 @@ public interface OrderService {
*/ */
@GET(Constants.API_7500+"/ordersStatistics/satisfiedOrders") @GET(Constants.API_7500+"/ordersStatistics/satisfiedOrders")
Observable<BaseResponse<List<Order>>> getReceivingOrders(@Query("accountId") int accountId); Observable<BaseResponse<List<Order>>> getReceivingOrders(@Query("accountId") int accountId);
/**
* 备件物流列表
*/
@GET(Constants.API_7200+"/ordersLogistics")
Observable<BaseResponse<BasePageBean<OrderPartBean>>> getOrderPartList(@Query("orderId") int orderId,
@Query("sendType") int sendType,
@Query("page") int page,
@Query("pageSize") int pageSize);
/**
* 查询物流公司
*/
@GET(Constants.API_7300+"/logisticsTraceInfo/logisticsCode/{code}")
Observable<BaseResponse<TranCompanyBean>> getTransCompany(@Path("code") String code);
} }
package com.dayu.order.api.protocol;
public class OrderPartBean {
/**
* comment : string
* courierCompany : string
* courierNumber : string
* createTime : 2020-04-22T07:26:16.303Z
* id : 0
* orderId : 0
* receiveTime : 2020-04-22T07:26:16.303Z
* receiverAddress : string
* receiverMobile : string
* receiverName : string
* sendId : 0
* sendItems : string
* sendMobile : string
* sendName : string
* sendType : 0
* shipperCode : string
* status : 0
*/
private String comment;
private String courierCompany;
private String courierNumber;
private String createTime;
private int id;
private int orderId;
private String receiveTime;
private String receiverAddress;
private String receiverMobile;
private String receiverName;
private int sendId;
private String sendItems;
private String sendMobile;
private String sendName;
private int sendType;
private String shipperCode;
private int status;
public String getComment() {
return comment;
}
public void setComment(String comment) {
this.comment = comment;
}
public String getCourierCompany() {
return courierCompany;
}
public void setCourierCompany(String courierCompany) {
this.courierCompany = courierCompany;
}
public String getCourierNumber() {
return courierNumber;
}
public void setCourierNumber(String courierNumber) {
this.courierNumber = courierNumber;
}
public String getCreateTime() {
return createTime;
}
public void setCreateTime(String createTime) {
this.createTime = createTime;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public int getOrderId() {
return orderId;
}
public void setOrderId(int orderId) {
this.orderId = orderId;
}
public String getReceiveTime() {
return receiveTime;
}
public void setReceiveTime(String receiveTime) {
this.receiveTime = receiveTime;
}
public String getReceiverAddress() {
return receiverAddress;
}
public void setReceiverAddress(String receiverAddress) {
this.receiverAddress = receiverAddress;
}
public String getReceiverMobile() {
return receiverMobile;
}
public void setReceiverMobile(String receiverMobile) {
this.receiverMobile = receiverMobile;
}
public String getReceiverName() {
return receiverName;
}
public void setReceiverName(String receiverName) {
this.receiverName = receiverName;
}
public int getSendId() {
return sendId;
}
public void setSendId(int sendId) {
this.sendId = sendId;
}
public String getSendItems() {
return sendItems;
}
public void setSendItems(String sendItems) {
this.sendItems = sendItems;
}
public String getSendMobile() {
return sendMobile;
}
public void setSendMobile(String sendMobile) {
this.sendMobile = sendMobile;
}
public String getSendName() {
return sendName;
}
public void setSendName(String sendName) {
this.sendName = sendName;
}
public int getSendType() {
return sendType;
}
public void setSendType(int sendType) {
this.sendType = sendType;
}
public String getShipperCode() {
return shipperCode;
}
public void setShipperCode(String shipperCode) {
this.shipperCode = shipperCode;
}
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
}
package com.dayu.order.api.protocol;
public class TranCompanyBean {
/**
* id : 0
* shipperCode : string
* shipperName : string
* status : 0
*/
private int id;
private String shipperCode;
private String shipperName;
private int status;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getShipperCode() {
return shipperCode;
}
public void setShipperCode(String shipperCode) {
this.shipperCode = shipperCode;
}
public String getShipperName() {
return shipperName;
}
public void setShipperName(String shipperName) {
this.shipperName = shipperName;
}
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
}
...@@ -3,21 +3,28 @@ package com.dayu.order.presenter.orderpart; ...@@ -3,21 +3,28 @@ package com.dayu.order.presenter.orderpart;
import android.databinding.ObservableField; import android.databinding.ObservableField;
import android.os.Bundle; import android.os.Bundle;
import com.dayu.base.api.Api;
import com.dayu.common.BaseApplication; import com.dayu.common.BaseApplication;
import com.dayu.common.Constants; import com.dayu.common.Constants;
import com.dayu.order.R; import com.dayu.order.R;
import com.dayu.order.api.OrderApiFactory; import com.dayu.order.api.OrderApiFactory;
import com.dayu.order.api.OrderService;
import com.dayu.order.api.protocol.OrderDetail; import com.dayu.order.api.protocol.OrderDetail;
import com.dayu.order.api.protocol.OrderPart; import com.dayu.order.api.protocol.OrderPart;
import com.dayu.order.ui.activity.ApplyAndRefuseActivity; import com.dayu.order.ui.activity.ApplyAndRefuseActivity;
import com.dayu.order.ui.activity.ApplyAndRefuseNewActivity; import com.dayu.order.ui.activity.ApplyAndRefuseNewActivity;
import com.dayu.order.ui.activity.LogisticsInfoActivity; import com.dayu.order.ui.activity.LogisticsInfoActivity;
import com.dayu.order.ui.activity.OrderPartReceiveActivity;
import com.dayu.order.ui.activity.OrderPartSendActivity;
import com.dayu.order.ui.activity.ReturnPartActivity; import com.dayu.order.ui.activity.ReturnPartActivity;
import com.dayu.order.ui.activity.ReturnPartNewActivity; import com.dayu.order.ui.activity.ReturnPartNewActivity;
import com.dayu.utils.UIUtils; import com.dayu.utils.UIUtils;
import com.dayu.utils.UserManager; import com.dayu.utils.UserManager;
import com.umeng.analytics.MobclickAgent; import com.umeng.analytics.MobclickAgent;
import java.util.ArrayList;
import java.util.List;
import io.reactivex.Observable; import io.reactivex.Observable;
/** /**
...@@ -27,10 +34,13 @@ import io.reactivex.Observable; ...@@ -27,10 +34,13 @@ import io.reactivex.Observable;
public class OrderPartPresenter extends OrderPartContract.Presenter { public class OrderPartPresenter extends OrderPartContract.Presenter {
private ObservableField<Object> datas = new ObservableField<>(); private ObservableField<Object> datas = new ObservableField<>();
public ObservableField<String> title = new ObservableField<>(UIUtils.getString(R.string.apply_one_order_part)); public ObservableField<String> title = new ObservableField<>(UIUtils.getString(R.string.apply_one_order_part));
public ObservableField<Boolean> showBottomBtn = new ObservableField<>(false);
private int mOrderId; private int mOrderId;
private int mSource;
private String mUserName; private String mUserName;
private Integer mCompanyId; private Integer mCompanyId;
private int mType; private int mType;
private int mPage;
@Override @Override
public void onAttached() { public void onAttached() {
...@@ -38,6 +48,7 @@ public class OrderPartPresenter extends OrderPartContract.Presenter { ...@@ -38,6 +48,7 @@ public class OrderPartPresenter extends OrderPartContract.Presenter {
OrderDetail detail = (OrderDetail) bundle.getSerializable(Constants.ORDER_DETAIL); OrderDetail detail = (OrderDetail) bundle.getSerializable(Constants.ORDER_DETAIL);
mType = bundle.getInt(Constants.TYPE); mType = bundle.getInt(Constants.TYPE);
mOrderId = detail.getId(); mOrderId = detail.getId();
mSource = detail.getSource();
mCompanyId = detail.getKaCompanyId(); mCompanyId = detail.getKaCompanyId();
mUserName = UserManager.getInstance().getUser().getAccountName(); mUserName = UserManager.getInstance().getUser().getAccountName();
if (mType == 2) { if (mType == 2) {
...@@ -48,6 +59,7 @@ public class OrderPartPresenter extends OrderPartContract.Presenter { ...@@ -48,6 +59,7 @@ public class OrderPartPresenter extends OrderPartContract.Presenter {
@Override @Override
public void refresh() { public void refresh() {
mPage = 1;
queryPartList(); queryPartList();
} }
...@@ -59,22 +71,34 @@ public class OrderPartPresenter extends OrderPartContract.Presenter { ...@@ -59,22 +71,34 @@ public class OrderPartPresenter extends OrderPartContract.Presenter {
@Override @Override
public void queryPartList() { public void queryPartList() {
OrderApiFactory.queryPart(mOrderId, mType).subscribe(baseObserver( // Api.getService(OrderService.class).getOrderPartList(mOrderId,mType,mPage,Constants.PAGESIZE)
orderPart -> datas.set(orderPart) // .compose(Api.applySchedulers()).subscribe(baseObserver(orderPart -> datas.set(orderPart)
, responeThrowable -> datas.set(Constants.FAILED))); // , responeThrowable -> datas.set(Constants.FAILED)));
// OrderApiFactory.queryPart(mOrderId, mType).subscribe(baseObserver(
// orderPart -> datas.set(orderPart)
// , responeThrowable -> datas.set(Constants.FAILED)));
} }
@Override @Override
public void applyOrReturnPart() { public void applyOrReturnPart() {
Bundle bundle = new Bundle();
bundle.putInt(Constants.ORDER_ID, mOrderId);
bundle.putInt(Constants.ORDER_SOURCE, mSource);
if (mType == 1) { if (mType == 1) {
Bundle bundle = new Bundle(); mView.startActivity(OrderPartReceiveActivity.class, bundle);
bundle.putInt(Constants.ORDER_ID, mOrderId);
bundle.putInt(Constants.TYPE, Constants.APPLY_PART);
mView.startActivity(ApplyAndRefuseActivity.class, bundle);
MobclickAgent.onEvent(BaseApplication.getContext(), "applyApply");
} else if (mType == 2) { } else if (mType == 2) {
dumpToReturnPart(Constants.BYMYSELF, null); mView.startActivity(OrderPartSendActivity.class, bundle);
} }
// if (mType == 1) {
// Bundle bundle = new Bundle();
// bundle.putInt(Constants.ORDER_ID, mOrderId);
// bundle.putInt(Constants.TYPE, Constants.APPLY_PART);
// mView.startActivity(ApplyAndRefuseActivity.class, bundle);
// MobclickAgent.onEvent(BaseApplication.getContext(), "applyApply");
// } else if (mType == 2) {
// dumpToReturnPart(Constants.BYMYSELF, null);
// }
} }
@Override @Override
......
package com.dayu.order.presenter.orderpart_send;
import com.bigkoo.pickerview.listener.OnOptionsSelectListener;
import com.dayu.base.ui.presenter.BasePresenter;
import com.dayu.common.BaseView;
import java.util.List;
public interface PartSendContract {
interface View extends BaseView {
/**
* 展示快递选择框.
* @param cardItem
* @param listener
*/
void showCouriesDialog(List<String> cardItem, OnOptionsSelectListener listener);
/**
* 关闭输入框.
*/
void hideInput();
/**
* 扫描物流单号
*/
void toScan();
/**
* 扫描物流单号
*/
List<String> getImgs();
}
abstract class Presenter extends BasePresenter<View> {
/**
* 发货
*/
public abstract void confirmSend();
/**
* 获取快递公司.
*/
public abstract void getCourier();
}
}
package com.dayu.order.presenter.orderpart_send;
import android.databinding.ObservableField;
import android.text.TextUtils;
import com.dayu.base.api.Api;
import com.dayu.event.UserInfo;
import com.dayu.order.api.OrderApiFactory;
import com.dayu.order.api.OrderService;
import com.dayu.order.api.protocol.OrderPart;
import com.dayu.order.api.protocol.ShipperCompany;
import com.dayu.utils.ToastUtils;
import java.util.ArrayList;
import java.util.List;
public class PartSendPresenter extends PartSendContract.Presenter {
public ObservableField<String> courierCompany = new ObservableField<>();
public ObservableField<String> courierNum = new ObservableField<>();
public ObservableField<String> goodsListStr = new ObservableField<>();
List<ShipperCompany> transCompanyList = new ArrayList<>();
private int mKaId;
private int mOrderId;
private int mType;
private String mKaComent;
private UserInfo mInfo;
private int mPartId;
private OrderPart mPart;
private String mShipperCode;
@Override
public void onAttached() {
}
@Override
public void getCourier() {
mView.hideInput();
if (transCompanyList != null && transCompanyList.size() > 0) {
showCouriesDialog(transCompanyList);
} else {
mView.showDialog();
OrderApiFactory.queryShipperCompany().subscribe(baseObserver(datas -> {
transCompanyList = datas;
showCouriesDialog(datas);
}));
}
}
private void showCouriesDialog(List<ShipperCompany> shipperCompany) {
List<String> list = new ArrayList<>();
for (ShipperCompany sc : shipperCompany) {
list.add(sc.getShipperName());
}
mView.showCouriesDialog(list, (options1, options2, options3, v) -> {
courierCompany.set(list.get(options1));
mShipperCode = shipperCompany.get(options1).getShipperCode();
});
}
public void scan() {
mView.toScan();
}
public void setCourierNum(String snNum) {
if (!TextUtils.isEmpty(snNum)) {
courierNum.set(snNum);
mView.showDialog();
Api.getService(OrderService.class).getTransCompany(snNum).compose(Api.applySchedulers())
.subscribe(baseObserver(data -> {
if (data != null) {
courierCompany.set(data.getShipperName());
mShipperCode = data.getShipperCode();
}
}));
}
}
@Override
public void confirmSend() {
ToastUtils.showShortToast("commit");
}
}
...@@ -17,9 +17,7 @@ import java.util.ArrayList; ...@@ -17,9 +17,7 @@ import java.util.ArrayList;
import java.util.List; import java.util.List;
/** /**
* Created by luofan * 收货
* on 2017/11/8.
* 申请备件
*/ */
public class ApplyAndRefuseNewActivity extends BaseActivity<ApplayAndRefusePresenter, ActivityApplyRefuseNewBinding> public class ApplyAndRefuseNewActivity extends BaseActivity<ApplayAndRefusePresenter, ActivityApplyRefuseNewBinding>
......
package com.dayu.order.ui.activity;
import android.content.Intent;
import android.support.v7.widget.GridLayoutManager;
import android.text.TextUtils;
import com.dayu.base.ui.activity.BaseActivity;
import com.dayu.base.ui.adapter.PhotoViewAdapter;
import com.dayu.base.ui.adapter.SpacesItemDecoration;
import com.dayu.base.ui.presenter.SImplePresenter;
import com.dayu.order.R;
import com.dayu.order.databinding.ActivityOrderPartReceiveBinding;
import com.google.zxing.integration.android.IntentIntegrator;
import com.google.zxing.integration.android.IntentResult;
import com.luck.picture.lib.PictureSelector;
import com.luck.picture.lib.config.PictureConfig;
import com.luck.picture.lib.entity.LocalMedia;
import java.util.ArrayList;
import java.util.List;
public class OrderPartReceiveActivity extends BaseActivity<SImplePresenter,ActivityOrderPartReceiveBinding> {
private PhotoViewAdapter mAdapter;
private ArrayList<String> mImages = new ArrayList<>();
@Override
public void setPresenter() {
}
@Override
public int getLayoutId() {
return R.layout.activity_order_part_receive;
}
@Override
public void initView() {
initPhotoView();
}
private void initPhotoView() {
mBind.photo.addItemDecoration(new SpacesItemDecoration(10));
mBind.photo.setLayoutManager(new GridLayoutManager(mActivity, 5));
mAdapter = new PhotoViewAdapter(mImages, mActivity);
mBind.photo.setAdapter(mAdapter);
mImages.add("add");
mAdapter.setData(mImages);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (resultCode == RESULT_OK) {
switch (requestCode) {
case PictureConfig.CHOOSE_REQUEST:
List<LocalMedia> selectList = PictureSelector.obtainMultipleResult(data);
if (selectList != null && selectList.size() > 0) {
mImages.remove("add");
for (int a = 0; a < selectList.size(); a++) {
// mImages.add(selectList.get(a).getCompressPath());
if (!TextUtils.isEmpty(selectList.get(a).getCompressPath())) {
mImages.add(selectList.get(a).getCompressPath());
} else {
mImages.add(selectList.get(a).getPath());
}
}
if (mImages.size() < 5) {
mImages.add("add");
}
mAdapter.setData(mImages);
}
break;
}
}
}
}
package com.dayu.order.ui.activity;
import android.content.Intent;
import android.support.v7.widget.GridLayoutManager;
import android.text.TextUtils;
import com.bigkoo.pickerview.builder.OptionsPickerBuilder;
import com.bigkoo.pickerview.listener.OnOptionsSelectListener;
import com.bigkoo.pickerview.view.OptionsPickerView;
import com.dayu.base.api.Api;
import com.dayu.base.ui.activity.BaseActivity;
import com.dayu.base.ui.adapter.PhotoViewAdapter;
import com.dayu.base.ui.adapter.SpacesItemDecoration;
import com.dayu.order.R;
import com.dayu.order.api.OrderService;
import com.dayu.order.databinding.ActivityOrderPartSendBinding;
import com.dayu.order.presenter.orderpart_send.PartSendContract;
import com.dayu.order.presenter.orderpart_send.PartSendPresenter;
import com.dayu.utils.UIUtils;
import com.google.zxing.integration.android.IntentIntegrator;
import com.google.zxing.integration.android.IntentResult;
import com.luck.picture.lib.PictureSelector;
import com.luck.picture.lib.config.PictureConfig;
import com.luck.picture.lib.entity.LocalMedia;
import java.util.ArrayList;
import java.util.List;
public class OrderPartSendActivity extends BaseActivity<PartSendPresenter, ActivityOrderPartSendBinding>
implements PartSendContract.View {
private PhotoViewAdapter mAdapter;
private ArrayList<String> mImages = new ArrayList<>();
@Override
public void setPresenter() {
mBind.setPresenter(mPresenter);
}
@Override
public int getLayoutId() {
return R.layout.activity_order_part_send;
}
@Override
public void initView() {
initPhotoView();
}
//跳转到扫描页面
@Override
public void toScan() {
new IntentIntegrator(this)
.setOrientationLocked(false)
.setCaptureActivity(CustomScannerActivity.class)
.initiateScan();
}
@Override
public List<String> getImgs() {
return mImages;
}
//选择图片
private void initPhotoView() {
mBind.photo.addItemDecoration(new SpacesItemDecoration(10));
mBind.photo.setLayoutManager(new GridLayoutManager(mActivity, 5));
mAdapter = new PhotoViewAdapter(mImages, mActivity);
mBind.photo.setAdapter(mAdapter);
mImages.add("add");
mAdapter.setData(mImages);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
IntentResult result = IntentIntegrator.parseActivityResult(requestCode, resultCode, data);
if (result != null && requestCode == IntentIntegrator.REQUEST_CODE) {
String mSnNumber = result.getContents();
mPresenter.setCourierNum(mSnNumber);
return;
}
if (resultCode == RESULT_OK) {
switch (requestCode) {
case PictureConfig.CHOOSE_REQUEST:
List<LocalMedia> selectList = PictureSelector.obtainMultipleResult(data);
if (selectList != null && selectList.size() > 0) {
mImages.remove("add");
for (int a = 0; a < selectList.size(); a++) {
// mImages.add(selectList.get(a).getCompressPath());
if (!TextUtils.isEmpty(selectList.get(a).getCompressPath())) {
mImages.add(selectList.get(a).getCompressPath());
} else {
mImages.add(selectList.get(a).getPath());
}
}
if (mImages.size() < 5) {
mImages.add("add");
}
mAdapter.setData(mImages);
}
break;
}
}
}
@Override
public void showCouriesDialog(List<String> cardItem, OnOptionsSelectListener listener) {
//条件选择器
OptionsPickerView pvOptions = new OptionsPickerBuilder(this, listener)
.setContentTextSize(18)
.setLineSpacingMultiplier(2.0f)
.build();
pvOptions.setPicker(cardItem);
pvOptions.show();
}
@Override
public void hideInput() {
UIUtils.hideInput(mActivity);
}
}
package com.dayu.order.ui.adapter;
import com.dayu.base.ui.adapter.CoreAdapter;
import com.dayu.order.databinding.ItemOrderPartListBinding;
public class OrderPartListAdapter extends CoreAdapter<String,ItemOrderPartListBinding> {
int type;
public OrderPartListAdapter(boolean needFoot, int type) {
super(needFoot);
this.type = type;
}
@Override
protected void onBind(ItemOrderPartListBinding holder, String item, int position) {
super.onBind(holder, item, position);
holder.tvCode.setText(item);
}
}
package com.dayu.order.ui.fragment; package com.dayu.order.ui.fragment;
import android.os.Bundle; import android.os.Bundle;
import android.view.View;
import com.dayu.base.ui.fragment.BaseFragment; import com.dayu.base.ui.fragment.BaseFragment;
import com.dayu.common.Constants; import com.dayu.common.Constants;
import com.dayu.order.R; import com.dayu.order.R;
import com.dayu.order.api.protocol.OrderDetail; import com.dayu.order.api.protocol.OrderDetail;
import com.dayu.order.databinding.FragmentOrderApplicationPartBinding; import com.dayu.order.databinding.FragmentOrderApplicationPartBinding;
import com.dayu.order.ui.adapter.OrderPartListAdapter;
import com.dayu.provider.event.RefreshApplyPart; import com.dayu.provider.event.RefreshApplyPart;
import com.dayu.order.presenter.orderpart.OrderPartContract; import com.dayu.order.presenter.orderpart.OrderPartContract;
import com.dayu.order.presenter.orderpart.OrderPartPresenter; import com.dayu.order.presenter.orderpart.OrderPartPresenter;
...@@ -17,6 +19,9 @@ import org.greenrobot.eventbus.EventBus; ...@@ -17,6 +19,9 @@ import org.greenrobot.eventbus.EventBus;
import org.greenrobot.eventbus.Subscribe; import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode; import org.greenrobot.eventbus.ThreadMode;
import java.util.ArrayList;
import java.util.List;
/** /**
* Created by luofan on 2018/1/18. * Created by luofan on 2018/1/18.
*/ */
...@@ -35,9 +40,18 @@ public class ApplicationOrderPartFragment extends BaseFragment<OrderPartPresente ...@@ -35,9 +40,18 @@ public class ApplicationOrderPartFragment extends BaseFragment<OrderPartPresente
@Override @Override
public void initView() { public void initView() {
int mType = getBundle().getInt(Constants.TYPE);
mBind.applyPart.setVisibility(mType == 2?View.VISIBLE:View.GONE);
EventBus.getDefault().register(this); EventBus.getDefault().register(this);
OrderPartAdapter adapter = new OrderPartAdapter(false); // OrderPartAdapter adapter = new OrderPartAdapter(false);
OrderPartListAdapter adapter = new OrderPartListAdapter(false,mType);
mBind.lvPart.setAdapter(adapter); mBind.lvPart.setAdapter(adapter);
List<String> testDatas = new ArrayList<>();
for (int i=0;i<10;i++){
testDatas.add("test data "+i);
}
adapter.setData(testDatas);
} }
@Override @Override
......
...@@ -8,6 +8,9 @@ import android.view.LayoutInflater; ...@@ -8,6 +8,9 @@ import android.view.LayoutInflater;
import android.view.View; import android.view.View;
import android.widget.ImageView; import android.widget.ImageView;
import com.alibaba.android.arouter.launcher.ARouter;
import com.dayu.base.api.APIService;
import com.dayu.base.api.Api;
import com.dayu.base.ui.activity.ImgGalleryActivty; import com.dayu.base.ui.activity.ImgGalleryActivty;
import com.dayu.base.ui.adapter.CoreAdapter; import com.dayu.base.ui.adapter.CoreAdapter;
import com.dayu.base.ui.fragment.BaseFragment; import com.dayu.base.ui.fragment.BaseFragment;
...@@ -30,6 +33,7 @@ import com.dayu.order.ui.activity.PdfWebViewActivity; ...@@ -30,6 +33,7 @@ import com.dayu.order.ui.activity.PdfWebViewActivity;
import com.dayu.order.ui.activity.QrCodeActivity; import com.dayu.order.ui.activity.QrCodeActivity;
import com.dayu.order.ui.activity.ServerInstructionActivity; import com.dayu.order.ui.activity.ServerInstructionActivity;
import com.dayu.provider.event.TakeOrderSuccessEvent; import com.dayu.provider.event.TakeOrderSuccessEvent;
import com.dayu.provider.router.RouterPath;
import com.dayu.utils.CommonUtils; import com.dayu.utils.CommonUtils;
import com.dayu.utils.GlideImageLoader; import com.dayu.utils.GlideImageLoader;
import com.dayu.utils.ToastUtils; import com.dayu.utils.ToastUtils;
...@@ -181,10 +185,10 @@ public class MultiOrderDetailFragment extends BaseFragment<SImplePresenter, Frag ...@@ -181,10 +185,10 @@ public class MultiOrderDetailFragment extends BaseFragment<SImplePresenter, Frag
double noRePrice = 0; double noRePrice = 0;
if (detail.getTotalPrice() != null) { if (detail.getTotalPrice() != null) {
noRePrice = detail.getTotalPrice(); noRePrice = detail.getTotalPrice();
}else if (detail.getDoorPrice() != null && detail.getServicePrice() != null){ } else if (detail.getDoorPrice() != null && detail.getServicePrice() != null) {
noRePrice = detail.getDoorPrice()+detail.getServicePrice(); noRePrice = detail.getDoorPrice() + detail.getServicePrice();
} }
mBind.tvNoReceivePrice.setText(noRePrice+"元"); mBind.tvNoReceivePrice.setText(noRePrice + "元");
} }
private void setListenter() { private void setListenter() {
...@@ -202,20 +206,37 @@ public class MultiOrderDetailFragment extends BaseFragment<SImplePresenter, Frag ...@@ -202,20 +206,37 @@ public class MultiOrderDetailFragment extends BaseFragment<SImplePresenter, Frag
}); });
mBind.tvTakeOrder.setOnClickListener(v -> { mBind.tvTakeOrder.setOnClickListener(v -> {
showDialog(); showDialog();
OrderApiFactory.receiveOrder(orderId, mUserId).subscribe(mPresenter.baseObserver( Api.getService(APIService.class).getAddressInfo(mUserId).compose(Api.applySchedulers())
aBoolean -> { .subscribe(mPresenter.baseObserver(data -> {
EventBus.getDefault().post(new TakeOrderSuccessEvent()); if (data != null) {
ToastUtils.showLongToast(R.string.take_oreder_success_tosee); takeOrder();
mBind.tvTakeOrder.setVisibility(View.GONE); } else {
mBind.tvOrderState.setText(getStaus(2)); ARouter.getInstance().build(RouterPath.PATH_EDIT_ADDRESS).navigation();
ToastUtils.showShortToast(R.string.pls_complete_address_info);
}
}, responeThrowable -> { }, responeThrowable -> {
EventBus.getDefault().post(new TakeOrderSuccessEvent()); ARouter.getInstance().build(RouterPath.PATH_EDIT_ADDRESS).navigation();
ToastUtils.showShortToast(R.string.take_order_failure); ToastUtils.showShortToast(R.string.pls_complete_address_info);
} }));
));
}); });
} }
private void takeOrder() {
showDialog();
OrderApiFactory.receiveOrder(orderId, mUserId).subscribe(mPresenter.baseObserver(
aBoolean -> {
EventBus.getDefault().post(new TakeOrderSuccessEvent());
ToastUtils.showLongToast(R.string.take_oreder_success_tosee);
mBind.tvTakeOrder.setVisibility(View.GONE);
mBind.tvOrderState.setText(getStaus(2));
}, responeThrowable -> {
EventBus.getDefault().post(new TakeOrderSuccessEvent());
ToastUtils.showShortToast(R.string.take_order_failure);
}
));
}
private void showOpenMarketDialog() { private void showOpenMarketDialog() {
CustomDialog customDialog = new CustomDialog(mActivity, R.style.CustomDialog, UIUtils.getString(R.string.download_gaode_notice) CustomDialog customDialog = new CustomDialog(mActivity, R.style.CustomDialog, UIUtils.getString(R.string.download_gaode_notice)
, (dialog, confirm) -> { , (dialog, confirm) -> {
......
package com.dayu.order.ui.fragment; package com.dayu.order.ui.fragment;
import android.os.Bundle; import android.os.Bundle;
import android.view.View;
import com.alibaba.android.arouter.launcher.ARouter; import com.alibaba.android.arouter.launcher.ARouter;
import com.dayu.base.api.APIService;
import com.dayu.base.api.Api;
import com.dayu.base.ui.fragment.BaseFragment; import com.dayu.base.ui.fragment.BaseFragment;
import com.dayu.common.Constants; import com.dayu.common.Constants;
import com.dayu.order.R; import com.dayu.order.R;
...@@ -45,6 +48,7 @@ public class OrderReceivingFragment extends BaseFragment<ReceivingPresenter, Fra ...@@ -45,6 +48,7 @@ public class OrderReceivingFragment extends BaseFragment<ReceivingPresenter, Fra
@Override @Override
public void initView() { public void initView() {
initUser();
EventBus.getDefault().register(this); EventBus.getDefault().register(this);
mAdapter = new OrderAdapter(true); mAdapter = new OrderAdapter(true);
mAdapter.setViewType(R.layout.fragment_orderdoing_item); mAdapter.setViewType(R.layout.fragment_orderdoing_item);
...@@ -67,33 +71,25 @@ public class OrderReceivingFragment extends BaseFragment<ReceivingPresenter, Fra ...@@ -67,33 +71,25 @@ public class OrderReceivingFragment extends BaseFragment<ReceivingPresenter, Fra
private void initListener() { private void initListener() {
mAdapter.setOnChildClickListener((view, adapter, position) -> { mAdapter.setOnChildClickListener((view, adapter, position) -> {
if (view.getId() == R.id.item_text_phone) { if (view.getId() == R.id.item_text_phone) {
// int detectSatus = UserManager.getInstance().getUser().getDetectStatus(); showDialog();
// if (detectSatus == 2 || detectSatus == 3) { Api.getService(APIService.class).getAddressInfo(mUserId).compose(Api.applySchedulers())
// showCertificationDialog(); .subscribe(mPresenter.baseObserver(data -> {
// } else { if (data != null) {
Order order = (Order) adapter.getItem(position); Order order = (Order) adapter.getItem(position);
mPresenter.receiveOrder(order.getId(), mPresenter.getmUserId()); mPresenter.receiveOrder(order.getId(), mPresenter.getmUserId());
MobclickAgent.onEvent(mActivity, "recevie_order"); MobclickAgent.onEvent(mActivity, "recevie_order");
// } } else {
ARouter.getInstance().build(RouterPath.PATH_EDIT_ADDRESS).navigation();
ToastUtils.showShortToast(R.string.pls_complete_address_info);
}
}, responeThrowable -> {
ARouter.getInstance().build(RouterPath.PATH_EDIT_ADDRESS).navigation();
ToastUtils.showShortToast(R.string.pls_complete_address_info);
}));
} }
}); });
} }
private void showCertificationDialog() {
CustomDialog customDialog = new CustomDialog(mActivity, R.style.CustomDialog, getString(R.string.engineer_identity_not_audite)
, (dialog, confirm) -> {
if (confirm) {
Bundle bundle = new Bundle();
bundle.putInt(Constants.CETIFICATION_STATE, 1);
ARouter.getInstance().build(RouterPath.PATH_CERTIFICAITON).withBundle(Constants.BUNDLE, bundle).navigation();
}
});
customDialog.setTitle(getString(R.string.certification))
.setPositiveButton(getString(R.string.go_certification))
.setNegativeButton(getString(R.string.cancle));
customDialog.show();
}
@Override @Override
public void onDestroy() { public void onDestroy() {
super.onDestroy(); super.onDestroy();
......
...@@ -98,6 +98,12 @@ ...@@ -98,6 +98,12 @@
<activity <activity
android:name=".ui.activity.ReturnPartActivity" android:name=".ui.activity.ReturnPartActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity
android:name=".ui.activity.OrderPartReceiveActivity"
android:screenOrientation="portrait" />
<activity
android:name=".ui.activity.OrderPartSendActivity"
android:screenOrientation="portrait" />
</application> </application>
</manifest> </manifest>
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
<TextView <TextView
android:id="@+id/text_idea" android:id="@+id/text_idea"
style="@style/text_title" style="@style/text_title"
android:text="@={presenter.mTitle}" /> android:text="@string/application_order_part" />
<ImageView <ImageView
android:id="@+id/title_back" android:id="@+id/title_back"
......
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/cl_white"
android:orientation="vertical"
android:padding="1dp">
<RelativeLayout
android:id="@+id/title_idea"
style="@style/title">
<TextView
android:id="@+id/text_idea"
style="@style/text_title"
android:text="@string/application_order_part" />
<ImageView
android:id="@+id/title_back"
style="@style/title_image_back" />
<TextView
android:id="@+id/tv_right_title"
style="@style/title_right_text"
android:text="@string/submit"
android:textColor="@color/cl_home_button"
android:textSize="15sp"
android:visibility="gone" />
</RelativeLayout>
<ImageView style="@style/card_line" />
<android.support.v4.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:focusableInTouchMode="true"
android:focusable="true"
android:orientation="vertical">
<TextView
android:id="@+id/tv_product_title"
android:layout_width="match_parent"
android:layout_height="43dp"
android:background="@color/tv_bg"
android:gravity="center_vertical"
android:paddingLeft="@dimen/dp_15"
android:text="@string/company_send_info"
android:textColor="@color/tv_cl"
android:textSize="14sp" />
<LinearLayout style="@style/ll_part_content">
<TextView
style="@style/tv_course_left"
android:text="@string/part_trans_code" />
<TextView
android:id="@+id/tv_code"
style="@style/tv_part_content" />
</LinearLayout>
<LinearLayout style="@style/ll_part_content">
<TextView
style="@style/tv_course_left"
android:text="@string/part_trans_company" />
<TextView
android:id="@+id/tv_company"
style="@style/tv_part_content" />
</LinearLayout>
<LinearLayout style="@style/ll_part_content">
<TextView
style="@style/tv_course_left"
android:text="@string/part_trans_date" />
<TextView
android:id="@+id/tv_date"
style="@style/tv_part_content" />
</LinearLayout>
<LinearLayout style="@style/ll_part_content">
<TextView
style="@style/tv_course_left"
android:text="@string/part_receiver_addr" />
<TextView
android:id="@+id/tv_address"
style="@style/tv_part_content" />
</LinearLayout>
<LinearLayout style="@style/ll_part_content">
<TextView
style="@style/tv_course_left"
android:text="@string/part_receiver_name" />
<TextView
android:id="@+id/tv_name"
style="@style/tv_part_content" />
</LinearLayout>
<LinearLayout style="@style/ll_part_content">
<TextView
style="@style/tv_course_left"
android:text="@string/part_receiver_phone" />
<TextView
android:id="@+id/tv_phone"
style="@style/tv_part_content" />
</LinearLayout>
<LinearLayout style="@style/ll_part_content">
<TextView
style="@style/tv_course_left"
android:text="@string/part_goods_list" />
<TextView
android:id="@+id/tv_list"
style="@style/tv_part_content" />
</LinearLayout>
<TextView
android:layout_width="match_parent"
android:layout_height="43dp"
android:layout_marginTop="35dp"
android:background="@color/tv_bg"
android:gravity="center_vertical"
android:paddingLeft="@dimen/dp_15"
android:text="@string/receive_goods_remark"
android:textColor="@color/tv_cl"
android:textSize="14sp" />
<EditText
android:id="@+id/edt_remark"
android:layout_width="match_parent"
android:layout_height="60dp"
android:layout_gravity="center"
android:layout_margin="10dp"
android:background="@drawable/bg_input_gray_react"
android:gravity="top"
android:hint="@string/part_recieve_edit_hint"
android:padding="10dp"
android:textColor="@color/cl_home_title_text_color"
android:textColorHint="@color/cl_selector_hui"
android:textSize="@dimen/sp_13.3" />
<android.support.v7.widget.RecyclerView
android:id="@+id/photo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginBottom="15dp" />
</LinearLayout>
</android.support.v4.widget.NestedScrollView>
<TextView
style="@style/btn_bottom_common"
android:layout_width="200dp"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="15dp"
android:text="@string/confirm_receive_goods"
/>
</LinearLayout>
</layout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android">
<data>
<variable
name="presenter"
type="com.dayu.order.presenter.orderpart_send.PartSendPresenter" />
</data>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/cl_white"
android:orientation="vertical"
android:padding="1dp">
<RelativeLayout
android:id="@+id/title_idea"
style="@style/title">
<TextView
android:id="@+id/text_idea"
style="@style/text_title"
android:text="@string/return_order_part" />
<ImageView
android:id="@+id/title_back"
style="@style/title_image_back" />
<TextView
android:id="@+id/tv_right_title"
style="@style/title_right_text"
android:text="@string/submit"
android:textColor="@color/cl_home_button"
android:textSize="15sp"
android:visibility="gone" />
</RelativeLayout>
<ImageView style="@style/card_line" />
<android.support.v4.widget.NestedScrollView
android:layout_width="match_parent"
android:layout_height="wrap_content"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:focusableInTouchMode="true"
android:focusable="true"
android:orientation="vertical">
<TextView
android:id="@+id/tv_product_title"
android:layout_width="match_parent"
android:layout_height="43dp"
android:background="@color/tv_bg"
android:gravity="center_vertical"
android:paddingLeft="@dimen/dp_15"
android:text="@string/company_send_info"
android:textColor="@color/tv_cl"
android:textSize="14sp" />
<LinearLayout style="@style/ll_part_content">
<TextView
style="@style/tv_course_left"
android:text="@string/part_comany_name" />
<TextView
android:id="@+id/tv_company"
style="@style/tv_part_content" />
</LinearLayout>
<LinearLayout style="@style/ll_part_content">
<TextView
style="@style/tv_course_left"
android:text="@string/part_comany_addr" />
<TextView
android:id="@+id/tv_address"
style="@style/tv_part_content" />
</LinearLayout>
<LinearLayout style="@style/ll_part_content">
<TextView
style="@style/tv_course_left"
android:text="@string/part_comany_contacter" />
<TextView
android:id="@+id/tv_name"
style="@style/tv_part_content" />
</LinearLayout>
<LinearLayout style="@style/ll_part_content">
<TextView
style="@style/tv_course_left"
android:text="@string/part_receiver_phone" />
<TextView
android:id="@+id/tv_phone"
style="@style/tv_part_content" />
</LinearLayout>
<TextView
android:layout_width="match_parent"
android:layout_height="43dp"
android:layout_marginTop="10dp"
android:background="@color/tv_bg"
android:gravity="center_vertical"
android:paddingLeft="@dimen/dp_15"
android:text="@string/pls_fill_send_info"
android:textColor="@color/tv_cl"
android:textSize="14sp" />
<TextView
style="@style/tv_course_left"
android:layout_width="wrap_content"
android:layout_marginTop="5dp"
android:layout_marginLeft="10dp"
android:drawableLeft="@drawable/icon_star_necessary"
android:text="@string/part_goods_list" />
<EditText
android:id="@+id/edt_remark"
android:layout_width="match_parent"
android:layout_height="120dp"
android:layout_gravity="center"
android:layout_marginTop="5dp"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:background="@drawable/bg_input_gray_react"
android:gravity="top"
android:hint="@string/part_send_edit_hint"
android:padding="10dp"
android:text="@{presenter.goodsListStr}"
android:textColor="@color/cl_home_title_text_color"
android:textColorHint="@color/cl_selector_hui"
android:textSize="@dimen/sp_13.3" />
<android.support.v7.widget.RecyclerView
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:id="@+id/photo"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="@dimen/dp_10"
/>
<LinearLayout style="@style/ll_part_bottom"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
>
<TextView
style="@style/part_left_text"
android:drawableLeft="@drawable/icon_star_necessary"
android:text="@string/part_trans_code" />
<LinearLayout
android:layout_width="match_parent"
android:layout_height="35dp"
android:orientation="horizontal"
android:background="@drawable/bg_input_gray_react"
android:gravity="center_vertical"
>
<EditText
android:id="@+id/edt_trans_code"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="match_parent"
android:background="@color/transparent"
android:padding="5dp"
android:singleLine="true"
android:text="@{presenter.courierNum}"
/>
<ImageView
android:id="@+id/scan"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginRight="15dp"
android:onClick="@{()->presenter.scan()}"
android:src="@drawable/icon_scan" />
</LinearLayout>
</LinearLayout>
<LinearLayout style="@style/ll_part_bottom"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_marginBottom="15dp"
>
<TextView
style="@style/part_left_text"
android:drawableLeft="@drawable/icon_star_necessary"
android:text="@string/part_trans_company" />
<TextView
android:id="@+id/tv_trans_company"
style="@style/common_text_style"
android:layout_width="match_parent"
android:layout_height="35dp"
android:background="@drawable/btn_gray_commom"
android:drawableRight="@drawable/icon_arrow_down_gray32"
android:paddingRight="15dp"
android:gravity="center"
android:hint="@string/setlect_trans_company_hint"
android:text="@{presenter.courierCompany}"
android:onClick="@{()->presenter.getCourier()}"
/>
</LinearLayout>
</LinearLayout>
</android.support.v4.widget.NestedScrollView>
<TextView
style="@style/btn_bottom_common"
android:layout_width="200dp"
android:layout_gravity="center_horizontal"
android:layout_marginBottom="15dp"
android:onClick="@{()->presenter.confirmSend()}"
android:text="@string/confirm_send_goods"
/>
</LinearLayout>
</layout>
\ No newline at end of file
...@@ -11,7 +11,7 @@ ...@@ -11,7 +11,7 @@
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@color/cl_bg" android:background="@color/white"
android:orientation="vertical"> android:orientation="vertical">
<com.dayu.widgets.LRecyclerView <com.dayu.widgets.LRecyclerView
...@@ -20,8 +20,8 @@ ...@@ -20,8 +20,8 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="0dp" android:layout_height="0dp"
android:layout_weight="1" android:layout_weight="1"
android:paddingBottom="10dp" android:layout_marginTop="10dp"
app:itemType="@layout/item_apply_part_layout" /> app:itemType="@layout/item_order_part_list" />
<TextView <TextView
android:id="@+id/apply_part" android:id="@+id/apply_part"
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:background="@color/cl_bg" android:background="@color/cl_white"
android:orientation="vertical"> android:orientation="vertical">
<android.support.design.widget.TabLayout <android.support.design.widget.TabLayout
......
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="15dp"
android:layout_marginLeft="@dimen/dp_13.3"
android:layout_marginRight="@dimen/dp_13.3"
android:background="@drawable/item_shape_gray"
android:padding="@dimen/dp_10"
>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical"
>
<LinearLayout style="@style/ll_course_content"
android:layout_marginTop="10dp"
>
<TextView
style="@style/tv_course_left"
android:text="@string/part_trans_code" />
<TextView
android:id="@+id/tv_code"
style="@style/tv_part_content"
/>
</LinearLayout>
<LinearLayout style="@style/ll_course_content">
<TextView
style="@style/tv_course_left"
android:text="@string/part_trans_company" />
<TextView
android:id="@+id/tv_company"
style="@style/tv_part_content"
/>
</LinearLayout>
<LinearLayout style="@style/ll_course_content"
android:layout_marginBottom="10dp"
>
<TextView
style="@style/tv_course_left"
android:text="@string/part_trans_date" />
<TextView
android:id="@+id/tv_date"
style="@style/tv_part_content"
/>
</LinearLayout>
</LinearLayout>
<Button
android:id="@+id/btn_status"
android:layout_width="80dp"
android:layout_height="40dp"
android:background="@drawable/btn_black_react"
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true"
android:layout_margin="10dp"
android:text="待收货"
/>
</RelativeLayout>
</layout>
\ No newline at end of file
...@@ -2,12 +2,13 @@ ...@@ -2,12 +2,13 @@
<string name="app_name">orderCenter</string> <string name="app_name">orderCenter</string>
<string name="order_payer_prove_notice">上传发票,订单信息,或者机器sn码,生产日期等信息证明</string> <string name="order_payer_prove_notice">上传发票,订单信息,或者机器sn码,生产日期等信息证明</string>
<string name="part_material_list">物料清单:</string> <string name="part_material_list">物料清单:</string>
<string name="part_goods_list">货物清单:</string>
<string name="part_apply_reason">申请事由:</string> <string name="part_apply_reason">申请事由:</string>
<string name="part_model_config">品牌/品名/型号/配置</string> <string name="part_model_config">品牌/品名/型号/配置</string>
<string name="submit_part_apply">向商家提交申请</string> <string name="submit_part_apply">向商家提交申请</string>
<string name="part_receiver_addr">收货地址:</string> <string name="part_receiver_addr">收货地址:</string>
<string name="part_receiver_name">收货人:</string> <string name="part_receiver_name">收货人:</string>
<string name="part_receiver_phone">手机号:</string> <string name="part_receiver_phone">手机号:</string>
<string name="part_remart_hint">请详细说明</string> <string name="part_remart_hint">请详细说明</string>
<string name="part_comany_name">商家名称:</string> <string name="part_comany_name">商家名称:</string>
<string name="part_comany_addr">商家地址:</string> <string name="part_comany_addr">商家地址:</string>
...@@ -15,7 +16,8 @@ ...@@ -15,7 +16,8 @@
<string name="notify_comany_receive">通知商家收货</string> <string name="notify_comany_receive">通知商家收货</string>
<string name="part_trans_code">快递单号:</string> <string name="part_trans_code">快递单号:</string>
<string name="part_trans_company">物流公司:</string> <string name="part_trans_company">物流公司:</string>
<string name="setlect_trans_company_hint">请选择物流公司名称</string> <string name="part_trans_date">发货日期:</string>
<string name="setlect_trans_company_hint">下拉选择物流公司名称</string>
<string name="take_oreder_now">马上接单</string> <string name="take_oreder_now">马上接单</string>
<string name="receive_money_for_oreder_sender">代派单方商家向客户收款</string> <string name="receive_money_for_oreder_sender">代派单方商家向客户收款</string>
<string name="scan_receive_money">扫码收款</string> <string name="scan_receive_money">扫码收款</string>
...@@ -31,4 +33,13 @@ ...@@ -31,4 +33,13 @@
<string name="no_settelment_price">待结算工费</string> <string name="no_settelment_price">待结算工费</string>
<string name="settelmented_price">已结算工费</string> <string name="settelmented_price">已结算工费</string>
<string name="settlement_date">结算日期</string> <string name="settlement_date">结算日期</string>
<string name="pls_complete_address_info">请先完善您的地址信息</string>
<string name="company_send_info">商家发货信息</string>
<string name="company_receive_info">商家收货信息</string>
<string name="receive_goods_remark">收货备注</string>
<string name="confirm_receive_goods">确认,我已收货</string>
<string name="confirm_send_goods">通知商家收货</string>
<string name="pls_fill_send_info">请填写发货信息</string>
<string name="part_recieve_edit_hint">收货如发现异常情况,请详细说明情况。</string>
<string name="part_send_edit_hint">请详细说明货物品牌品名型号和数量</string>
</resources> </resources>
...@@ -12,6 +12,7 @@ public class RouterPath { ...@@ -12,6 +12,7 @@ public class RouterPath {
public final static String PATH_MAIN = "/app/main"; public final static String PATH_MAIN = "/app/main";
public final static String PATH_MANAGER = "/app/manager_home"; public final static String PATH_MANAGER = "/app/manager_home";
public final static String PATH_SETTING = "/app/setting"; public final static String PATH_SETTING = "/app/setting";
public final static String PATH_EDIT_ADDRESS = "/userCenter/edit_address";
/** /**
......
...@@ -45,6 +45,7 @@ public class ProductDetailBean implements Serializable { ...@@ -45,6 +45,7 @@ public class ProductDetailBean implements Serializable {
private String goodsModel; private String goodsModel;
private String pn; private String pn;
private double price; private double price;
private double marketPrice;
private double salesPrice; private double salesPrice;
private double customerRebate; private double customerRebate;
private String brief; private String brief;
...@@ -69,6 +70,14 @@ public class ProductDetailBean implements Serializable { ...@@ -69,6 +70,14 @@ public class ProductDetailBean implements Serializable {
private List<GoodsCategorysBean> goodsCategorys; private List<GoodsCategorysBean> goodsCategorys;
private List<GoodsPicsBean> goodsPics; private List<GoodsPicsBean> goodsPics;
public double getMarketPrice() {
return marketPrice;
}
public void setMarketPrice(double marketPrice) {
this.marketPrice = marketPrice;
}
public int getId() { public int getId() {
return id; return id;
} }
......
package com.bigfish.salecenter.ui.fragment; package com.bigfish.salecenter.ui.fragment;
import android.content.Intent; import android.content.Intent;
import android.graphics.Paint;
import android.os.Bundle; import android.os.Bundle;
import android.text.TextUtils; import android.text.TextUtils;
import android.view.View; import android.view.View;
...@@ -92,6 +93,8 @@ public class ProductInstructionFragment extends BaseFragment<SImplePresenter, Fr ...@@ -92,6 +93,8 @@ public class ProductInstructionFragment extends BaseFragment<SImplePresenter, Fr
mBind.tvCompany.setText(mDetail.getProviderName()); mBind.tvCompany.setText(mDetail.getProviderName());
mBind.tvCompanyPn.setText(mDetail.getPn()); mBind.tvCompanyPn.setText(mDetail.getPn());
mBind.tvSinglePrice.setText(CommonUtils.getIntMoneyStr(mActivity, mDetail.getPrice())); mBind.tvSinglePrice.setText(CommonUtils.getIntMoneyStr(mActivity, mDetail.getPrice()));
mBind.tvMarketPrice.setText(CommonUtils.getIntMoneyStr(mActivity, mDetail.getMarketPrice()));
// mBind.tvMarketPrice.getPaint().setFlags(Paint.STRIKE_THRU_TEXT_FLAG);
mBind.tvDesc.setText(mDetail.getBrief()); mBind.tvDesc.setText(mDetail.getBrief());
} }
......
...@@ -73,6 +73,21 @@ ...@@ -73,6 +73,21 @@
android:id="@+id/tv_single_price" android:id="@+id/tv_single_price"
style="@style/sale_detail_text2" style="@style/sale_detail_text2"
android:textColor="@color/text_common_blue" /> android:textColor="@color/text_common_blue" />
<View
android:layout_width="0dp"
android:layout_height="1dp"
android:layout_weight="1"
/>
<TextView
style="@style/sale_detail_text"
android:layout_marginRight="10dp"
android:text="@string/goods_market_price" />
<TextView
android:id="@+id/tv_market_price"
style="@style/sale_detail_text2"
android:layout_marginRight="5dp"
android:textColor="@color/cl_tab_gray" />
</LinearLayout> </LinearLayout>
<LinearLayout style="@style/sale_linearlayout_detail"> <LinearLayout style="@style/sale_linearlayout_detail">
......
...@@ -20,8 +20,8 @@ public class UserLicenceAdapter extends CoreAdapter<UserLicenceBean,ItemUserLice ...@@ -20,8 +20,8 @@ public class UserLicenceAdapter extends CoreAdapter<UserLicenceBean,ItemUserLice
protected void onBind(ItemUserLicenceBinding holder, UserLicenceBean item, int position) { protected void onBind(ItemUserLicenceBinding holder, UserLicenceBean item, int position) {
super.onBind(holder, item, position); super.onBind(holder, item, position);
GlideImageLoader.load(mContext, holder.ivImg, item.getUrl(),R.drawable.icon_img_default); GlideImageLoader.load(mContext, holder.ivImg, item.getUrl(),R.drawable.icon_img_default);
holder.tvTitle.setText(item.getName()); holder.tvTitle.setText(item.getLicenceAuthorityName());
holder.tvCompany.setText(item.getLicenceAuthorityName()); holder.tvCompany.setText(item.getDetail());
holder.ivArrow.setVisibility(mPresent.type == 1?View.VISIBLE:View.GONE ); holder.ivArrow.setVisibility(mPresent.type == 1?View.VISIBLE:View.GONE );
holder.btnApply.setVisibility(mPresent.type == 1?View.GONE:View.VISIBLE); holder.btnApply.setVisibility(mPresent.type == 1?View.GONE:View.VISIBLE);
holder.btnApply.setOnClickListener(view -> mPresent.applyAllLicence(item)); holder.btnApply.setOnClickListener(view -> mPresent.applyAllLicence(item));
......
...@@ -5,7 +5,7 @@ import com.dayu.base.api.protocol.BaseResponse; ...@@ -5,7 +5,7 @@ import com.dayu.base.api.protocol.BaseResponse;
import com.dayu.common.Constants; import com.dayu.common.Constants;
import com.dayu.usercenter.model.ApplyLicenceData; import com.dayu.usercenter.model.ApplyLicenceData;
import com.dayu.usercenter.model.SaveSceneData; import com.dayu.usercenter.model.SaveSceneData;
import com.dayu.usercenter.model.bean.AddressInfoBean; import com.dayu.base.api.protocol.AddressInfoBean;
import com.dayu.usercenter.model.bean.BusinessSceneBean; import com.dayu.usercenter.model.bean.BusinessSceneBean;
import com.dayu.usercenter.model.EditBankData; import com.dayu.usercenter.model.EditBankData;
import com.dayu.usercenter.model.bean.CommonRecordListBean; import com.dayu.usercenter.model.bean.CommonRecordListBean;
...@@ -15,7 +15,6 @@ import com.dayu.usercenter.model.bean.SaleRecordBean; ...@@ -15,7 +15,6 @@ import com.dayu.usercenter.model.bean.SaleRecordBean;
import com.dayu.usercenter.model.bean.SaleRecordListBean; import com.dayu.usercenter.model.bean.SaleRecordListBean;
import com.dayu.usercenter.model.bean.ServiceTypeBean; import com.dayu.usercenter.model.bean.ServiceTypeBean;
import com.dayu.usercenter.model.bean.StarRatioBean; import com.dayu.usercenter.model.bean.StarRatioBean;
import com.dayu.base.api.protocol.TreeAddressBean;
import com.dayu.usercenter.model.bean.UserBankInfoBean; import com.dayu.usercenter.model.bean.UserBankInfoBean;
import com.dayu.usercenter.model.bean.UserIncomeBean; import com.dayu.usercenter.model.bean.UserIncomeBean;
import com.dayu.usercenter.model.bean.UserInfoBean; import com.dayu.usercenter.model.bean.UserInfoBean;
...@@ -66,13 +65,7 @@ public interface UserService2 { ...@@ -66,13 +65,7 @@ public interface UserService2 {
@PUT(Constants.API_7800 + "/payAccountBank") @PUT(Constants.API_7800 + "/payAccountBank")
Observable<BaseResponse<Boolean>> updateBankInfo(@Body EditBankData data); Observable<BaseResponse<Boolean>> updateBankInfo(@Body EditBankData data);
/**
* 获取地址信息.
*
* @return
*/
@GET(Constants.API_7100 + "/engineerAddress/default/accountId/{accountId}")
Observable<BaseResponse<AddressInfoBean>> getAddressInfo(@Path("accountId") int accountId);
/** /**
* 设置地址信息 * 设置地址信息
......
...@@ -2,17 +2,15 @@ package com.dayu.usercenter.presenter.userinfo; ...@@ -2,17 +2,15 @@ package com.dayu.usercenter.presenter.userinfo;
import android.databinding.ObservableField; import android.databinding.ObservableField;
import com.dayu.base.api.APIService;
import com.dayu.base.api.Api; import com.dayu.base.api.Api;
import com.dayu.event.UserInfo; import com.dayu.event.UserInfo;
import com.dayu.usercenter.api.UserService2; import com.dayu.usercenter.api.UserService2;
import com.dayu.usercenter.model.bean.AddressInfoBean; import com.dayu.base.api.protocol.AddressInfoBean;
import com.dayu.usercenter.model.bean.UserBankInfoBean; import com.dayu.usercenter.model.bean.UserBankInfoBean;
import com.dayu.usercenter.model.bean.UserInfoBean; import com.dayu.usercenter.model.bean.UserInfoBean;
import com.dayu.utils.ToastUtils;
import com.dayu.utils.UserManager; import com.dayu.utils.UserManager;
import io.reactivex.Observable;
/** /**
* Created by luofan * Created by luofan
* on 2017/11/14. * on 2017/11/14.
...@@ -77,7 +75,7 @@ public class UserInfoPresenter extends UserInfoContract.Presenter { ...@@ -77,7 +75,7 @@ public class UserInfoPresenter extends UserInfoContract.Presenter {
)); ));
} }
public void getAddrInfo() { public void getAddrInfo() {
Api.getService(UserService2.class).getAddressInfo(mAccountId).compose(Api.applySchedulers()) Api.getService(APIService.class).getAddressInfo(mAccountId).compose(Api.applySchedulers())
.subscribe(baseObserver(data->{ .subscribe(baseObserver(data->{
addressInfo.set(data); addressInfo.set(data);
detailAddress.set(data.getProvinceName()+" "+data.getCityName() detailAddress.set(data.getProvinceName()+" "+data.getCityName()
......
...@@ -5,18 +5,19 @@ import android.text.TextUtils; ...@@ -5,18 +5,19 @@ import android.text.TextUtils;
import android.view.View; import android.view.View;
import android.widget.EditText; import android.widget.EditText;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.dayu.base.api.APIService; import com.dayu.base.api.APIService;
import com.dayu.base.api.Api; import com.dayu.base.api.Api;
import com.dayu.base.ui.activity.BaseActivity; import com.dayu.base.ui.activity.BaseActivity;
import com.dayu.base.ui.presenter.SImplePresenter; import com.dayu.base.ui.presenter.SImplePresenter;
import com.dayu.common.Constants; import com.dayu.common.Constants;
import com.dayu.common.MyTextWatcher; import com.dayu.common.MyTextWatcher;
import com.dayu.provider.router.RouterPath;
import com.dayu.usercenter.R; import com.dayu.usercenter.R;
import com.dayu.usercenter.api.UserService2; import com.dayu.usercenter.api.UserService2;
import com.dayu.usercenter.common.UserConstant;
import com.dayu.usercenter.databinding.ActivityEditAddressBinding; import com.dayu.usercenter.databinding.ActivityEditAddressBinding;
import com.dayu.usercenter.event.EditAddressEvent; import com.dayu.usercenter.event.EditAddressEvent;
import com.dayu.usercenter.model.bean.AddressInfoBean; import com.dayu.base.api.protocol.AddressInfoBean;
import com.dayu.base.api.protocol.TreeAddressBean; import com.dayu.base.api.protocol.TreeAddressBean;
import com.dayu.utils.ToastUtils; import com.dayu.utils.ToastUtils;
import com.dayu.utils.UtilsUserAccountMatcher; import com.dayu.utils.UtilsUserAccountMatcher;
...@@ -27,6 +28,7 @@ import org.greenrobot.eventbus.EventBus; ...@@ -27,6 +28,7 @@ import org.greenrobot.eventbus.EventBus;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
@Route(path = RouterPath.PATH_EDIT_ADDRESS)
public class EditAddressActivity extends BaseActivity<SImplePresenter, ActivityEditAddressBinding> { public class EditAddressActivity extends BaseActivity<SImplePresenter, ActivityEditAddressBinding> {
private String name; private String name;
private String phone; private String phone;
...@@ -72,7 +74,7 @@ public class EditAddressActivity extends BaseActivity<SImplePresenter, ActivityE ...@@ -72,7 +74,7 @@ public class EditAddressActivity extends BaseActivity<SImplePresenter, ActivityE
private void initData() { private void initData() {
showDialog(); showDialog();
Api.getService(UserService2.class).getAddressInfo(mUserId).compose(Api.applySchedulers()) Api.getService(APIService.class).getAddressInfo(mUserId).compose(Api.applySchedulers())
.subscribe(mPresenter.baseObserver(data -> { .subscribe(mPresenter.baseObserver(data -> {
getTreeAddrData(data.getProvinceId(), 2, false); getTreeAddrData(data.getProvinceId(), 2, false);
getTreeAddrData(data.getCityId(), 3, false); getTreeAddrData(data.getCityId(), 3, false);
......
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