Commit f0593799 by xuxuan

打卡

parent 40422755
Showing with 470 additions and 47 deletions
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
<option name="linkedExternalProjectsSettings"> <option name="linkedExternalProjectsSettings">
<GradleProjectSettings> <GradleProjectSettings>
<option name="externalProjectPath" value="$PROJECT_DIR$" /> <option name="externalProjectPath" value="$PROJECT_DIR$" />
<option name="gradleJvm" value="jbr-17" /> <option name="gradleJvm" value="#GRADLE_LOCAL_JAVA_HOME" />
<option name="modules"> <option name="modules">
<set> <set>
<option value="$PROJECT_DIR$" /> <option value="$PROJECT_DIR$" />
......
<?xml version="1.0" encoding="UTF-8"?>
<project version="4"> <project version="4">
<component name="DesignSurface"> <component name="DesignSurface">
<option name="filePathToZoomLevelMap"> <option name="filePathToZoomLevelMap">
...@@ -23,7 +24,7 @@ ...@@ -23,7 +24,7 @@
<option name="myDefaultNotNull" value="android.support.annotation.NonNull" /> <option name="myDefaultNotNull" value="android.support.annotation.NonNull" />
<option name="myNullables"> <option name="myNullables">
<value> <value>
<list size="14"> <list size="16">
<item index="0" class="java.lang.String" itemvalue="org.jetbrains.annotations.Nullable" /> <item index="0" class="java.lang.String" itemvalue="org.jetbrains.annotations.Nullable" />
<item index="1" class="java.lang.String" itemvalue="javax.annotation.Nullable" /> <item index="1" class="java.lang.String" itemvalue="javax.annotation.Nullable" />
<item index="2" class="java.lang.String" itemvalue="javax.annotation.CheckForNull" /> <item index="2" class="java.lang.String" itemvalue="javax.annotation.CheckForNull" />
...@@ -38,12 +39,14 @@ ...@@ -38,12 +39,14 @@
<item index="11" class="java.lang.String" itemvalue="org.eclipse.jdt.annotation.Nullable" /> <item index="11" class="java.lang.String" itemvalue="org.eclipse.jdt.annotation.Nullable" />
<item index="12" class="java.lang.String" itemvalue="io.reactivex.annotations.Nullable" /> <item index="12" class="java.lang.String" itemvalue="io.reactivex.annotations.Nullable" />
<item index="13" class="java.lang.String" itemvalue="io.reactivex.rxjava3.annotations.Nullable" /> <item index="13" class="java.lang.String" itemvalue="io.reactivex.rxjava3.annotations.Nullable" />
<item index="14" class="java.lang.String" itemvalue="org.jspecify.nullness.Nullable" />
<item index="15" class="java.lang.String" itemvalue="jakarta.annotation.Nullable" />
</list> </list>
</value> </value>
</option> </option>
<option name="myNotNulls"> <option name="myNotNulls">
<value> <value>
<list size="14"> <list size="16">
<item index="0" class="java.lang.String" itemvalue="org.jetbrains.annotations.NotNull" /> <item index="0" class="java.lang.String" itemvalue="org.jetbrains.annotations.NotNull" />
<item index="1" class="java.lang.String" itemvalue="javax.annotation.Nonnull" /> <item index="1" class="java.lang.String" itemvalue="javax.annotation.Nonnull" />
<item index="2" class="java.lang.String" itemvalue="edu.umd.cs.findbugs.annotations.NonNull" /> <item index="2" class="java.lang.String" itemvalue="edu.umd.cs.findbugs.annotations.NonNull" />
...@@ -58,11 +61,13 @@ ...@@ -58,11 +61,13 @@
<item index="11" class="java.lang.String" itemvalue="io.reactivex.annotations.NonNull" /> <item index="11" class="java.lang.String" itemvalue="io.reactivex.annotations.NonNull" />
<item index="12" class="java.lang.String" itemvalue="io.reactivex.rxjava3.annotations.NonNull" /> <item index="12" class="java.lang.String" itemvalue="io.reactivex.rxjava3.annotations.NonNull" />
<item index="13" class="java.lang.String" itemvalue="lombok.NonNull" /> <item index="13" class="java.lang.String" itemvalue="lombok.NonNull" />
<item index="14" class="java.lang.String" itemvalue="jakarta.annotation.Nonnull" />
<item index="15" class="java.lang.String" itemvalue="org.jspecify.nullness.NonNull" />
</list> </list>
</value> </value>
</option> </option>
</component> </component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" default="true" project-jdk-name="1.8" project-jdk-type="JavaSDK"> <component name="ProjectRootManager" version="2" languageLevel="JDK_11" default="true" project-jdk-name="corretto-11" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" /> <output url="file://$PROJECT_DIR$/build/classes" />
</component> </component>
<component name="ProjectType"> <component name="ProjectType">
......
...@@ -52,6 +52,7 @@ import com.dayu.learncenter.ui.fragment.HomeLearnFragment; ...@@ -52,6 +52,7 @@ import com.dayu.learncenter.ui.fragment.HomeLearnFragment;
import com.dayu.livemodule.LiveUtils; import com.dayu.livemodule.LiveUtils;
import com.dayu.livemodule.event.UserKickOutEvent; import com.dayu.livemodule.event.UserKickOutEvent;
import com.dayu.order.common.TabNumEvent; import com.dayu.order.common.TabNumEvent;
import com.dayu.order.ui.activity.CheckInTakePhotoActivity;
import com.dayu.order.ui.activity.OrderDetailsActivity; import com.dayu.order.ui.activity.OrderDetailsActivity;
import com.dayu.order.ui.activity.ReceivingActivity; import com.dayu.order.ui.activity.ReceivingActivity;
import com.dayu.order.ui.fragment.HomeOrderFragment; import com.dayu.order.ui.fragment.HomeOrderFragment;
...@@ -719,6 +720,14 @@ public class MainActivity extends BaseActivity<MainPresenter, ActivityMainBindin ...@@ -719,6 +720,14 @@ public class MainActivity extends BaseActivity<MainPresenter, ActivityMainBindin
protected void onActivityResult(int requestCode, int resultCode, Intent data) { protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data); super.onActivityResult(requestCode, resultCode, data);
UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data); UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
if (requestCode == CheckInTakePhotoActivity.TAKE_PHOTO_CODE && resultCode == RESULT_OK){
//按天用工打卡上传图片成功,通知fragment调用打卡接口并刷新页面
Intent intent = new Intent();
intent.putExtra("photoUrl", data.getStringExtra("photoUrl"));
intent.setAction(CheckInTakePhotoActivity.TAKE_PHOTO_FINISH_BROADCAST);
sendBroadcast(intent);
}
} }
@Override @Override
......
...@@ -87,6 +87,12 @@ public interface APIService { ...@@ -87,6 +87,12 @@ public interface APIService {
Observable<BaseResponse<List<String>>> uploadPhotoNew( Observable<BaseResponse<List<String>>> uploadPhotoNew(
@Part MultipartBody.Part part, @Query("targetPath") String path, @Query("pathDateFmt") String pathDateFmt); @Part MultipartBody.Part part, @Query("targetPath") String path, @Query("pathDateFmt") String pathDateFmt);
@Multipart
@POST("/file/uploadOne")
Observable<BaseResponse<String>> uploadPhotoOne(
@Part MultipartBody.Part part, @Query("targetPath") String path, @Query("pathDateFmt") String pathDateFmt);
/** /**
* 上传单个视频. * 上传单个视频.
* *
......
...@@ -33,6 +33,10 @@ public class BaseApiFactory { ...@@ -33,6 +33,10 @@ public class BaseApiFactory {
return Api.getService(APIService.class).uploadPhotoNew(part,path,pathDateFmt).compose(Api.applySchedulers()); return Api.getService(APIService.class).uploadPhotoNew(part,path,pathDateFmt).compose(Api.applySchedulers());
} }
public static Observable<String> uploadPhotoOne(MultipartBody.Part part,String path,String pathDateFmt) {
return Api.getService(APIService.class).uploadPhotoOne(part,path,pathDateFmt).compose(Api.applySchedulers());
}
public static Observable<String> uploadVideo(MultipartBody.Part part) { public static Observable<String> uploadVideo(MultipartBody.Part part) {
return Api.getService(APIService.class).uploadVideo(part).compose(Api.applySchedulers()); return Api.getService(APIService.class).uploadVideo(part).compose(Api.applySchedulers());
} }
......
...@@ -134,6 +134,26 @@ public class PictrueUtils { ...@@ -134,6 +134,26 @@ public class PictrueUtils {
}); });
} }
public static void showOriginPicDialog(Activity activity) {
String[] mPerArr = new String[]{Manifest.permission.READ_EXTERNAL_STORAGE,Manifest.permission.WRITE_EXTERNAL_STORAGE};
MPermissionUtils.requestPermissionsResult(activity, 1, mPerArr, new MPermissionUtils.OnPermissionListener() {
@SuppressLint("CheckResult")
@Override
public void onPermissionGranted() {
PictureSelectionModel selector = PictureSelector.create(activity)
.openGallery(SelectMimeType.ofImage())//全部.PictureMimeType.ofAll()、图片.ofImage()、视频.ofVideo()
.setImageEngine(GlideEngine.createGlideEngine())
.setImageSpanCount(4)
.setSelectionMode(SelectModeConfig.MULTIPLE);
selector.forResult(PictureConfig.CHOOSE_REQUEST);
}
@Override
public void onPermissionDenied() {
}
});
}
public static void showPicDialogs(Activity activity,int maxImgCout) { public static void showPicDialogs(Activity activity,int maxImgCout) {
PictureSelectionModel selector = PictureSelector.create(activity) PictureSelectionModel selector = PictureSelector.create(activity)
.openGallery(SelectMimeType.ofImage())//全部.PictureMimeType.ofAll()、图片.ofImage()、视频.ofVideo() .openGallery(SelectMimeType.ofImage())//全部.PictureMimeType.ofAll()、图片.ofImage()、视频.ofVideo()
...@@ -177,4 +197,5 @@ public class PictrueUtils { ...@@ -177,4 +197,5 @@ public class PictrueUtils {
} }
return path; return path;
} }
} }
...@@ -223,6 +223,7 @@ ...@@ -223,6 +223,7 @@
<string name="modify_appointment_time">修改预约时间</string> <string name="modify_appointment_time">修改预约时间</string>
<string name="have_go_on">我已出发</string> <string name="have_go_on">我已出发</string>
<string name="begain_server">开始服务</string> <string name="begain_server">开始服务</string>
<string name="receive_now">马上接单</string>
<string name="process_order">处理工单</string> <string name="process_order">处理工单</string>
<string name="check_upon_delivery">等待验收</string> <string name="check_upon_delivery">等待验收</string>
<string name="order_finish">已完成</string> <string name="order_finish">已完成</string>
......
package com.dayu.order.presenter.checkintakephoto;
import com.dayu.base.ui.presenter.BasePresenter;
import com.dayu.common.BaseView;
public interface CheckInTakePhotoContract {
interface View extends BaseView {
void selectPhoto();
String getPhotoPath();
void uploadPhotoSuccess(String photoUrl);
}
abstract class Presenter extends BasePresenter<CheckInTakePhotoContract.View> {
public abstract void selectPhoto();
public abstract void submit();
}
}
package com.dayu.order.presenter.checkintakephoto;
import android.text.TextUtils;
import com.dayu.base.api.BaseApiFactory;
import com.dayu.common.Constants;
public class CheckInTakePhotoPresenter extends CheckInTakePhotoContract.Presenter {
@Override
public void onAttached() {
}
@Override
public void selectPhoto(){
mView.selectPhoto();
}
@Override
public void submit(){
BaseApiFactory.uploadPhotoOne(BaseApiFactory.packPhoto(mView.getPhotoPath()), Constants.PHOTO + "/order/clockIn", "yyMM")
.subscribe(this.baseObserver(img -> {
String photoUrl = img;
mView.uploadPhotoSuccess(photoUrl);
}));
}
}
...@@ -29,6 +29,10 @@ public interface OrderDetailClockContract { ...@@ -29,6 +29,10 @@ public interface OrderDetailClockContract {
void setDatas(OrderDetail detail); void setDatas(OrderDetail detail);
void setOrderPhoneNum(List<String> info); void setOrderPhoneNum(List<String> info);
void showVerifyDialog(String code, String message, String data);
void showNoCashDialog(String message);
} }
abstract class Presenter extends BaseListPresenter<OrderDetailClockContract.View> { abstract class Presenter extends BaseListPresenter<OrderDetailClockContract.View> {
......
...@@ -19,11 +19,21 @@ import com.dayu.order.common.OrderConstant; ...@@ -19,11 +19,21 @@ import com.dayu.order.common.OrderConstant;
import com.dayu.order.ui.activity.CheckContentActivity; import com.dayu.order.ui.activity.CheckContentActivity;
import com.dayu.order.ui.activity.LogisticsInfoActivity; import com.dayu.order.ui.activity.LogisticsInfoActivity;
import com.dayu.order.ui.activity.SopWebViewActivity; import com.dayu.order.ui.activity.SopWebViewActivity;
import com.dayu.provider.event.RefreshApoiment;
import com.dayu.provider.event.RefreshTab;
import com.dayu.provider.event.SwtichOrderFragment;
import com.dayu.utils.ToastUtils; import com.dayu.utils.ToastUtils;
import com.dayu.utils.UIUtils; import com.dayu.utils.UIUtils;
import com.dayu.utils.UserManager; import com.dayu.utils.UserManager;
import org.greenrobot.eventbus.EventBus;
import java.util.List; import java.util.List;
import java.util.concurrent.TimeUnit;
import io.reactivex.Observable;
import io.reactivex.android.schedulers.AndroidSchedulers;
import io.reactivex.disposables.Disposable;
/** /**
* Created by luofan * Created by luofan
...@@ -38,6 +48,11 @@ public class OrderDetailClockPresenter extends OrderDetailClockContract.Presente ...@@ -38,6 +48,11 @@ public class OrderDetailClockPresenter extends OrderDetailClockContract.Presente
private OrderDetail mDetails; private OrderDetail mDetails;
private Disposable mDisPosable;
public int getmUserId() {
return mUserId;
}
@Override @Override
...@@ -174,4 +189,56 @@ public class OrderDetailClockPresenter extends OrderDetailClockContract.Presente ...@@ -174,4 +189,56 @@ public class OrderDetailClockPresenter extends OrderDetailClockContract.Presente
public boolean getIsShowBtn() { public boolean getIsShowBtn() {
return isShowBtn; return isShowBtn;
} }
public void receiveOrder(int orders, int engineer, String appointmentTime , int createdSource) {
mView.showDialog();
OrderApiFactory.verifyOrder(orders + "", mUserId).subscribe(baseObserver(data -> {
if (data.isSuccess()) {
receive(orders, engineer, appointmentTime, createdSource);
} else {
mView.showVerifyDialog(data.getSubCode(), data.getMsg(), data.getData());
}
}, responeThrowable -> {
}));
}
public void receive(int orders, int engineer, String appointmentTime , int createdSource) {
OrderApiFactory.receiveOrder(orders, engineer).subscribe(baseObserverByU(
aBoolean -> {
// MobclickAgent.onEvent(BaseApplication.getContext(), "get_serviceOrder");
mView.showToast(R.string.receive_order_success);
receiveOrderSuccess(orders, appointmentTime, createdSource);
}, responeThrowable -> {
if ("ORDER0002".equals(responeThrowable.subCode) || "ORDER0003".equals(responeThrowable.subCode)) {
refresh();
} else if ("ORDER0042".equals(responeThrowable.subCode)) {
mView.showNoCashDialog(responeThrowable.message);
} else if ("ORDER0046".equals(responeThrowable.subCode)) {
mView.showNoCashDialog(responeThrowable.message);
}
}));
}
public void receiveOrderSuccess(int orders, String appointmentTime, int createdSource) {
mDisPosable = Observable.timer(300, TimeUnit.MILLISECONDS).
observeOn(AndroidSchedulers.mainThread()).
subscribe(aLong -> {
if (createdSource == 7 || createdSource == 8){
//按天用工单马上接单,跳转到待服务列表,不提示【马上预约】弹窗
EventBus.getDefault().post(new SwtichOrderFragment(2));
}else {
EventBus.getDefault().post(new SwtichOrderFragment(1));
}
EventBus.getDefault().post(new RefreshTab(0));
// EventBus.getDefault().post(new RefreshReceivingNum(num < 0 ? 0 : num));
EventBus.getDefault().post(new RefreshApoiment(-1));
// if (!TextUtils.isEmpty(appointmentTime) && createdSource != 7 && createdSource != 8) { //订单详情页接单则不弹框提示.
// mView.showOrderDialog(orders, appointmentTime);
// }
mDisPosable.dispose();
mView.dumpBack();
});
}
} }
...@@ -2,11 +2,18 @@ package com.dayu.order.presenter.orderdoing; ...@@ -2,11 +2,18 @@ package com.dayu.order.presenter.orderdoing;
import static com.dayu.utils.UIUtils.getString; import static com.dayu.utils.UIUtils.getString;
import android.app.Activity;
import android.app.Fragment;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Bundle; import android.os.Bundle;
import androidx.databinding.ObservableField; import androidx.databinding.ObservableField;
import com.dayu.base.api.Api; import com.dayu.base.api.Api;
import com.dayu.common.BaseApplication;
import com.dayu.common.Constants; import com.dayu.common.Constants;
import com.dayu.event.UserInfo; import com.dayu.event.UserInfo;
import com.dayu.order.R; import com.dayu.order.R;
...@@ -16,6 +23,7 @@ import com.dayu.order.api.protocol.Order; ...@@ -16,6 +23,7 @@ import com.dayu.order.api.protocol.Order;
import com.dayu.order.api.protocol.Spu; import com.dayu.order.api.protocol.Spu;
import com.dayu.order.api.protocol.data.AddDialRecordData; import com.dayu.order.api.protocol.data.AddDialRecordData;
import com.dayu.order.common.OrderConstant; import com.dayu.order.common.OrderConstant;
import com.dayu.order.ui.activity.CheckInTakePhotoActivity;
import com.dayu.order.ui.activity.MultiProcessOrderActivity; import com.dayu.order.ui.activity.MultiProcessOrderActivity;
import com.dayu.order.ui.activity.OrderDetailsActivity; import com.dayu.order.ui.activity.OrderDetailsActivity;
import com.dayu.order.ui.activity.OrderDetailsClockActivity; import com.dayu.order.ui.activity.OrderDetailsClockActivity;
...@@ -23,8 +31,10 @@ import com.dayu.order.ui.activity.SopWebViewActivity; ...@@ -23,8 +31,10 @@ import com.dayu.order.ui.activity.SopWebViewActivity;
import com.dayu.order.ui.fragment.OrderDoneFragment; import com.dayu.order.ui.fragment.OrderDoneFragment;
import com.dayu.order.ui.fragment.OrderSecondTabFragment; import com.dayu.order.ui.fragment.OrderSecondTabFragment;
import com.dayu.order.ui.fragment.OrderThreeTabFragment; import com.dayu.order.ui.fragment.OrderThreeTabFragment;
import com.dayu.provider.event.RefreshServe;
import com.dayu.provider.event.RefreshTab; import com.dayu.provider.event.RefreshTab;
import com.dayu.utils.AppManager; import com.dayu.utils.AppManager;
import com.dayu.utils.ToastUtils;
import com.dayu.utils.UserManager; import com.dayu.utils.UserManager;
import com.dayu.utils.UtilsDate; import com.dayu.utils.UtilsDate;
import com.dayu.widgets.CustomDialog; import com.dayu.widgets.CustomDialog;
...@@ -36,6 +46,7 @@ import java.util.ArrayList; ...@@ -36,6 +46,7 @@ import java.util.ArrayList;
import java.util.HashMap; import java.util.HashMap;
import io.reactivex.Observable; import io.reactivex.Observable;
import io.reactivex.android.schedulers.AndroidSchedulers;
import okhttp3.MediaType; import okhttp3.MediaType;
import okhttp3.RequestBody; import okhttp3.RequestBody;
...@@ -53,13 +64,35 @@ public class OrderDoingPresenter extends orderDoingContract.Presenter { ...@@ -53,13 +64,35 @@ public class OrderDoingPresenter extends orderDoingContract.Presenter {
UserInfo userInfo; UserInfo userInfo;
public int sopOrderVersion; public int sopOrderVersion;
private int position = 0; private int position = 0;
private int checkInPosition;
private int checkinOrderId;
private BroadcastReceiver receiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(CheckInTakePhotoActivity.TAKE_PHOTO_FINISH_BROADCAST)) {
clockIn(checkinOrderId)
.observeOn(AndroidSchedulers.mainThread())
.subscribe(baseObserver(aBoolean -> {
ToastUtils.showShortToast("打卡成功");
setPosition(position);
EventBus.getDefault().post(new RefreshServe(1));
}, responeThrowable -> {
}));
}
}
};
@Override @Override
public void onAttached() { public void onAttached() {
userInfo = UserManager.getInstance().getUser(); userInfo = UserManager.getInstance().getUser();
mUserId = Integer.parseInt(userInfo.getAccountId()); mUserId = Integer.parseInt(userInfo.getAccountId());
mSiteId = userInfo.getSiteId(); mSiteId = userInfo.getSiteId();
mState = mView.getState(); mState = mView.getState();
BaseApplication.getContext().registerReceiver(receiver, new IntentFilter(CheckInTakePhotoActivity.TAKE_PHOTO_FINISH_BROADCAST));
} }
@Override @Override
...@@ -250,6 +283,13 @@ public class OrderDoingPresenter extends orderDoingContract.Presenter { ...@@ -250,6 +283,13 @@ public class OrderDoingPresenter extends orderDoingContract.Presenter {
} }
public void takePhoto(int orderId, int position){
checkinOrderId = orderId;
checkInPosition = position;
Bundle bundle = new Bundle();
mView.startActivityForReult(CheckInTakePhotoActivity.class, bundle, CheckInTakePhotoActivity.TAKE_PHOTO_CODE);
}
public Observable<Boolean> clockIn(int id) { public Observable<Boolean> clockIn(int id) {
HashMap<String, Object> params = new HashMap<>(); HashMap<String, Object> params = new HashMap<>();
params.put("orderId", id); params.put("orderId", id);
......
...@@ -205,6 +205,7 @@ public class ReceivingPresenter extends ReceivingContract.Presenter { ...@@ -205,6 +205,7 @@ public class ReceivingPresenter extends ReceivingContract.Presenter {
public void dumpDetailClock(int orderId) { public void dumpDetailClock(int orderId) {
Bundle bundle = new Bundle(); Bundle bundle = new Bundle();
bundle.putInt(Constants.ORDER_ID, orderId); bundle.putInt(Constants.ORDER_ID, orderId);
bundle.putBoolean(Constants.IS_SHOW_BTN,true);
mView.startActivity(OrderDetailsClockActivity.class, bundle); mView.startActivity(OrderDetailsClockActivity.class, bundle);
} }
} }
package com.dayu.order.ui.activity;
import android.Manifest;
import android.annotation.SuppressLint;
import android.content.Intent;
import android.text.TextUtils;
import com.dayu.base.ui.activity.BaseActivity;
import com.dayu.order.R;
import com.dayu.order.databinding.ActivityCheckInTakePhotoLayoutBinding;
import com.dayu.order.presenter.checkintakephoto.CheckInTakePhotoContract;
import com.dayu.order.presenter.checkintakephoto.CheckInTakePhotoPresenter;
import com.dayu.utils.GlideImageLoader;
import com.dayu.utils.MPermissionUtils;
import com.dayu.utils.PictrueUtils;
import com.luck.picture.lib.basic.PictureSelector;
import com.luck.picture.lib.config.PictureConfig;
import com.luck.picture.lib.entity.LocalMedia;
import java.util.List;
public class CheckInTakePhotoActivity extends BaseActivity<CheckInTakePhotoPresenter, ActivityCheckInTakePhotoLayoutBinding> implements CheckInTakePhotoContract.View {
public String photoPath;
public static final int TAKE_PHOTO_CODE = 700;
public static final String TAKE_PHOTO_FINISH_BROADCAST = "TAKE_PHOTO_FINISH_BROADCAST";
@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> mSelectList = PictureSelector.obtainSelectorList(data);
if (mSelectList != null) {
photoPath = mSelectList.get(0).getRealPath();
GlideImageLoader.loadDrawable(this, photoPath, mBind.photo);
}
break;
}
}
}
public void selectPhoto(){
String[] mPerArr = new String[]{Manifest.permission.READ_EXTERNAL_STORAGE,Manifest.permission.WRITE_EXTERNAL_STORAGE};
MPermissionUtils.requestPermissionsResult(mActivity, 1, mPerArr, new MPermissionUtils.OnPermissionListener() {
@SuppressLint("CheckResult")
@Override
public void onPermissionGranted() {
PictrueUtils.showOriginPicDialog(CheckInTakePhotoActivity.this);
}
@Override
public void onPermissionDenied() {
}
});
}
public void uploadPhotoSuccess(String photoUrl){
//照片上传成功,返回上一页面调打卡接口
if (!TextUtils.isEmpty(photoUrl)){
Intent intent = new Intent();
intent.putExtra("photoUrl", photoUrl);
setResult(RESULT_OK, intent);
finish();
}
}
@Override
public int getLayoutId() {
return R.layout.activity_check_in_take_photo_layout;
}
@Override
public void initView() {
mBind.titleClose.setOnClickListener(v -> onBackPressed());
}
@Override
public void setPresenter() {
mBind.setPresenter(mPresenter);
}
@Override
public String getPhotoPath() {
return photoPath;
}
}
...@@ -6,7 +6,10 @@ import static com.dayu.utils.UtilsDate.MON_DAY_FORMAT; ...@@ -6,7 +6,10 @@ import static com.dayu.utils.UtilsDate.MON_DAY_FORMAT;
import android.Manifest; import android.Manifest;
import android.app.Activity; import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent; import android.content.Intent;
import android.content.IntentFilter;
import android.graphics.Color; import android.graphics.Color;
import android.graphics.Typeface; import android.graphics.Typeface;
import android.location.Address; import android.location.Address;
...@@ -22,6 +25,7 @@ import com.alibaba.android.arouter.launcher.ARouter; ...@@ -22,6 +25,7 @@ import com.alibaba.android.arouter.launcher.ARouter;
import com.bigkoo.pickerview.builder.OptionsPickerBuilder; import com.bigkoo.pickerview.builder.OptionsPickerBuilder;
import com.bigkoo.pickerview.view.OptionsPickerView; import com.bigkoo.pickerview.view.OptionsPickerView;
import com.dayu.base.ui.adapter.CoreAdapter; import com.dayu.base.ui.adapter.CoreAdapter;
import com.dayu.common.BaseApplication;
import com.dayu.common.Constants; import com.dayu.common.Constants;
import com.dayu.event.UserInfo; import com.dayu.event.UserInfo;
import com.dayu.location.base.LocationUtils; import com.dayu.location.base.LocationUtils;
...@@ -32,6 +36,7 @@ import com.dayu.order.api.protocol.Spu; ...@@ -32,6 +36,7 @@ import com.dayu.order.api.protocol.Spu;
import com.dayu.order.common.OrderConstant; import com.dayu.order.common.OrderConstant;
import com.dayu.order.databinding.FragmentOrderdoingItemBinding; import com.dayu.order.databinding.FragmentOrderdoingItemBinding;
import com.dayu.order.presenter.orderdoing.OrderDoingPresenter; import com.dayu.order.presenter.orderdoing.OrderDoingPresenter;
import com.dayu.order.ui.activity.CheckInTakePhotoActivity;
import com.dayu.order.ui.activity.ProcessOrderActivity; import com.dayu.order.ui.activity.ProcessOrderActivity;
import com.dayu.order.ui.activity.ServerInfoActivity; import com.dayu.order.ui.activity.ServerInfoActivity;
import com.dayu.order.ui.activity.ServerListActivity; import com.dayu.order.ui.activity.ServerListActivity;
...@@ -177,7 +182,7 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi ...@@ -177,7 +182,7 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi
LinearLayout.LayoutParams params = (LinearLayout.LayoutParams)holder.tvOrderTime.getLayoutParams(); LinearLayout.LayoutParams params = (LinearLayout.LayoutParams)holder.tvOrderTime.getLayoutParams();
params.topMargin += 20; params.topMargin += 20;
holder.tvOrderTime.setLayoutParams(params); holder.tvOrderTime.setLayoutParams(params);
holder.tvCount.setVisibility(View.VISIBLE); holder.tvCount.setVisibility(holder.tvPrice.getVisibility());
holder.tvDaysCount.setVisibility(View.VISIBLE); holder.tvDaysCount.setVisibility(View.VISIBLE);
holder.tvDaysCount.setText(item.getReferenceTime() + "天"); holder.tvDaysCount.setText(item.getReferenceTime() + "天");
} }
...@@ -215,12 +220,13 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi ...@@ -215,12 +220,13 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi
} }
holder.itemUpdataTime.setText(mContext.getString(R.string.modify_appointment_time)); holder.itemUpdataTime.setText(mContext.getString(R.string.modify_appointment_time));
int source = item.getSource(); int source = item.getSource();
if (7 == source){ if (7 == source || 8 == source){
if (3 == item.getStatus()){ if (3 == item.getStatus()){
holder.tvItemEnd.setText(mContext.getString(R.string.begain_server)); holder.tvItemEnd.setText(mContext.getString(R.string.begain_server));
}else if (4 == item.getStatus()){ }else if (4 == item.getStatus()){
if (7 != item.getSubStatus()){ if (7 != item.getSubStatus()){
holder.tvItemEnd.setText("第"+item.getFinishedDays() +"天打卡"); // holder.tvItemEnd.setText("第"+item.getFinishedDays() +"天打卡");
holder.tvItemEnd.setText(Integer.parseInt(item.getFinishedDays())%2 == 0? "下班打卡" : "上班打卡" );
}else{ }else{
holder.tvItemEnd.setText(mContext.getString(R.string.submit_order)); holder.tvItemEnd.setText(mContext.getString(R.string.submit_order));
} }
...@@ -261,6 +267,15 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi ...@@ -261,6 +267,15 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi
// holder.orderLineTwo.setVisibility(View.VISIBLE); // holder.orderLineTwo.setVisibility(View.VISIBLE);
} }
//按天用工单
holder.tvOrderTime.setText(R.string.start_day);
LinearLayout.LayoutParams params = (LinearLayout.LayoutParams)holder.tvOrderTime.getLayoutParams();
params.topMargin += 20;
holder.tvOrderTime.setLayoutParams(params);
holder.tvCount.setVisibility(holder.tvPrice.getVisibility());
holder.tvDaysCount.setVisibility(View.VISIBLE);
holder.tvDaysCount.setText(item.getReferenceTime() + "天");
}else{ }else{
holder.itemTextPhone.setVisibility(View.VISIBLE); holder.itemTextPhone.setVisibility(View.VISIBLE);
holder.orderLineOne.setVisibility(View.VISIBLE); holder.orderLineOne.setVisibility(View.VISIBLE);
...@@ -313,7 +328,7 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi ...@@ -313,7 +328,7 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi
LinearLayout.LayoutParams params = (LinearLayout.LayoutParams)holder.tvOrderTime.getLayoutParams(); LinearLayout.LayoutParams params = (LinearLayout.LayoutParams)holder.tvOrderTime.getLayoutParams();
params.topMargin += 20; params.topMargin += 20;
holder.tvOrderTime.setLayoutParams(params); holder.tvOrderTime.setLayoutParams(params);
holder.tvCount.setVisibility(View.VISIBLE); holder.tvCount.setVisibility(holder.tvPrice.getVisibility());
holder.tvDaysCount.setVisibility(View.VISIBLE); holder.tvDaysCount.setVisibility(View.VISIBLE);
holder.tvDaysCount.setText(item.getReferenceTime() + "天"); holder.tvDaysCount.setText(item.getReferenceTime() + "天");
} }
...@@ -323,12 +338,13 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi ...@@ -323,12 +338,13 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi
holder.tvItemEnd.setVisibility(View.VISIBLE); holder.tvItemEnd.setVisibility(View.VISIBLE);
int source1 = item.getSource(); int source1 = item.getSource();
if (7 == source1){ if (7 == source1 || 8 == source1){
if (3 == item.getStatus()){ if (3 == item.getStatus()){
holder.tvItemEnd.setText(mContext.getString(R.string.begain_server)); holder.tvItemEnd.setText(mContext.getString(R.string.begain_server));
}else if (4 == item.getStatus()){ }else if (4 == item.getStatus()){
if (7 != item.getSubStatus()){ if (7 != item.getSubStatus()){
holder.tvItemEnd.setText("第"+item.getFinishedDays() +"天打卡"); // holder.tvItemEnd.setText("第"+item.getFinishedDays() +"天打卡");
holder.tvItemEnd.setText(Integer.parseInt(item.getFinishedDays())%2 == 0? "下班打卡" : "上班打卡" );
}else{ }else{
holder.tvItemEnd.setText(mContext.getString(R.string.submit_order)); holder.tvItemEnd.setText(mContext.getString(R.string.submit_order));
} }
...@@ -339,6 +355,15 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi ...@@ -339,6 +355,15 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi
holder.rlItemMid.setVisibility(View.GONE); holder.rlItemMid.setVisibility(View.GONE);
holder.orderLineTwo.setVisibility(View.GONE); holder.orderLineTwo.setVisibility(View.GONE);
//按天用工单
holder.tvOrderTime.setText(R.string.start_day);
LinearLayout.LayoutParams params = (LinearLayout.LayoutParams)holder.tvOrderTime.getLayoutParams();
params.topMargin += 20;
holder.tvOrderTime.setLayoutParams(params);
holder.tvCount.setVisibility(holder.tvPrice.getVisibility());
holder.tvDaysCount.setVisibility(View.VISIBLE);
holder.tvDaysCount.setText(item.getReferenceTime() + "天");
if (item.getSubStatus() == 6) { if (item.getSubStatus() == 6) {
holder.tvErrorState.setText(mContext.getString(R.string.check_upon_delivery)); holder.tvErrorState.setText(mContext.getString(R.string.check_upon_delivery));
holder.tvErrorState.setTextColor(mContext.getResources().getColor(R.color.cl_tab_line)); holder.tvErrorState.setTextColor(mContext.getResources().getColor(R.color.cl_tab_line));
...@@ -465,7 +490,7 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi ...@@ -465,7 +490,7 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi
LinearLayout.LayoutParams params = (LinearLayout.LayoutParams)holder.tvOrderTime.getLayoutParams(); LinearLayout.LayoutParams params = (LinearLayout.LayoutParams)holder.tvOrderTime.getLayoutParams();
params.topMargin += 20; params.topMargin += 20;
holder.tvOrderTime.setLayoutParams(params); holder.tvOrderTime.setLayoutParams(params);
holder.tvCount.setVisibility(View.VISIBLE); holder.tvCount.setVisibility(holder.tvPrice.getVisibility());
holder.tvDaysCount.setVisibility(View.VISIBLE); holder.tvDaysCount.setVisibility(View.VISIBLE);
holder.tvDaysCount.setText(item.getReferenceTime() + "天"); holder.tvDaysCount.setText(item.getReferenceTime() + "天");
} }
...@@ -630,20 +655,21 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi ...@@ -630,20 +655,21 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi
mBind = h; mBind = h;
if (7 == it.getSource()){ if (7 == it.getSource() || 8 == it.getSource()){
if (3 == it.getStatus()){ if (3 == it.getStatus()){
startServer(h, position); startServer(h, position);
}else if (4 == it.getStatus()){ }else if (4 == it.getStatus()){
if (7 != it.getSubStatus()){ if (7 != it.getSubStatus()){
mPresenter.clockIn(it.getId()) // mPresenter.clockIn(it.getId())
.observeOn(AndroidSchedulers.mainThread()) // .observeOn(AndroidSchedulers.mainThread())
.subscribe(mPresenter.baseObserver(aBoolean -> { // .subscribe(mPresenter.baseObserver(aBoolean -> {
ToastUtils.showShortToast("打卡成功"); // ToastUtils.showShortToast("打卡成功");
mPresenter.setPosition(position); // mPresenter.setPosition(position);
EventBus.getDefault().post(new RefreshServe(1)); // EventBus.getDefault().post(new RefreshServe(1));
}, responeThrowable -> { // }, responeThrowable -> {
//
})); // }));
mPresenter.takePhoto(it.getId(), position);
}else{ }else{
mPresenter.commit(it) mPresenter.commit(it)
.observeOn(AndroidSchedulers.mainThread()) .observeOn(AndroidSchedulers.mainThread())
...@@ -760,11 +786,11 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi ...@@ -760,11 +786,11 @@ public class OrderAdapter extends CoreAdapter<Order, FragmentOrderdoingItemBindi
} }
private void startFirstServe(FragmentOrderdoingItemBinding h, int position) { private void startFirstServe(FragmentOrderdoingItemBinding h, int position) {
if (mItem.getSubStatus() == 1 || mItem.getSubStatus() == 2 || (mItem.getSource() == 7)) { if (mItem.getSubStatus() == 1 || mItem.getSubStatus() == 2 || (mItem.getSource() == 7 || mItem.getSource() == 8)) {
mPresenter.startServer(mItem.getId()) mPresenter.startServer(mItem.getId())
.observeOn(AndroidSchedulers.mainThread()) .observeOn(AndroidSchedulers.mainThread())
.subscribe(mPresenter.baseObserver(integer -> { .subscribe(mPresenter.baseObserver(integer -> {
if (mItem.getSource() == 7){ if (mItem.getSource() == 7 || mItem.getSource() == 8){
ToastUtils.showShortToast("开始服务操作成功"); ToastUtils.showShortToast("开始服务操作成功");
ProgressUtil.stopLoad(); ProgressUtil.stopLoad();
mPresenter.setPosition(position); mPresenter.setPosition(position);
......
...@@ -43,7 +43,7 @@ public class OrderFirstTabFragment extends BaseFragment<OrderDoingPresenter, Fra ...@@ -43,7 +43,7 @@ public class OrderFirstTabFragment extends BaseFragment<OrderDoingPresenter, Fra
mBind.recyclerView.setOnItemClickListener(new OnItemClickListener<Order, FragmentOrderdoingItemBinding>() { mBind.recyclerView.setOnItemClickListener(new OnItemClickListener<Order, FragmentOrderdoingItemBinding>() {
@Override @Override
public void OnItemClick(Order item, FragmentOrderdoingItemBinding bind) { public void OnItemClick(Order item, FragmentOrderdoingItemBinding bind) {
if (7 == item.getSource()){ if (7 == item.getSource() || 8 == item.getSource()){
mPresenter.dumpDetailClock(item.getId()); mPresenter.dumpDetailClock(item.getId());
}else{ }else{
mPresenter.dumpDetail(item.getId()); mPresenter.dumpDetail(item.getId());
......
...@@ -36,7 +36,7 @@ public class OrderFourTabFragment extends BaseFragment<OrderDoingPresenter, Frag ...@@ -36,7 +36,7 @@ public class OrderFourTabFragment extends BaseFragment<OrderDoingPresenter, Frag
mBind.recyclerView.setOnItemClickListener(new OnItemClickListener<Order,FragmentOrderCancleItemBinding>() { mBind.recyclerView.setOnItemClickListener(new OnItemClickListener<Order,FragmentOrderCancleItemBinding>() {
@Override @Override
public void OnItemClick(Order item, FragmentOrderCancleItemBinding bind) { public void OnItemClick(Order item, FragmentOrderCancleItemBinding bind) {
if (7 == item.getSource()){ if (7 == item.getSource() || 8 == item.getSource()){
mPresenter.dumpDetailClock(item.getId()); mPresenter.dumpDetailClock(item.getId());
}else{ }else{
mPresenter.dumpDetail(item.getId()); mPresenter.dumpDetail(item.getId());
......
...@@ -79,8 +79,8 @@ public class OrderReceivingFragment extends BaseFragment<ReceivingPresenter, Fra ...@@ -79,8 +79,8 @@ public class OrderReceivingFragment extends BaseFragment<ReceivingPresenter, Fra
if (4 == item.getSource() && item.getReceiveOrderCommission() > 0) { if (4 == item.getSource() && item.getReceiveOrderCommission() > 0) {
showCashDialog(item.getReceiveOrderCommission(), mUserId, item.getId(), item.getAppointmentTime()); showCashDialog(item.getReceiveOrderCommission(), mUserId, item.getId(), item.getAppointmentTime());
} else { } else {
if (7 == item.getSource()){ if (7 == item.getSource() || 8 == item.getSource()){
mPresenter.dumpDetailClock(item.getId()); mPresenter.dumpDetailClock (item.getId());
}else{ }else{
mPresenter.dumpDetail(item.getId()); mPresenter.dumpDetail(item.getId());
} }
......
...@@ -59,7 +59,7 @@ public class OrderSecondTabFragment extends BaseFragment<OrderDoingPresenter, Fr ...@@ -59,7 +59,7 @@ public class OrderSecondTabFragment extends BaseFragment<OrderDoingPresenter, Fr
mBind.recyclerView.setOnItemClickListener(new OnItemClickListener<Order, FragmentOrderdoingItemBinding>() { mBind.recyclerView.setOnItemClickListener(new OnItemClickListener<Order, FragmentOrderdoingItemBinding>() {
@Override @Override
public void OnItemClick(Order item, FragmentOrderdoingItemBinding bind) { public void OnItemClick(Order item, FragmentOrderdoingItemBinding bind) {
if (7 == item.getSource()){ if (7 == item.getSource() || 8 == item.getSource()){
mPresenter.dumpDetailClockSecond(item.getId()); mPresenter.dumpDetailClockSecond(item.getId());
}else{ }else{
mPresenter.dumpDetail(item.getId()); mPresenter.dumpDetail(item.getId());
......
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" <manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.dayu.order"> package="com.dayu.order">
...@@ -15,14 +16,17 @@ ...@@ -15,14 +16,17 @@
android:name=".ui.activity.SubcribeTimeActivity" android:name=".ui.activity.SubcribeTimeActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity <activity
android:name="com.dayu.order.ui.activity.ReceivingActivity" android:name=".ui.activity.ReceivingActivity"
android:screenOrientation="portrait" android:screenOrientation="portrait"
android:theme="@style/Transparent" /> android:theme="@style/Transparent" />
<activity <activity
android:name="com.dayu.order.ui.activity.OrderRecordActivity" android:name=".ui.activity.OrderRecordActivity"
android:screenOrientation="portrait" android:screenOrientation="portrait"
android:theme="@style/Transparent" /> android:theme="@style/Transparent" />
<activity <activity
android:name=".ui.activity.CheckInTakePhotoActivity"
android:screenOrientation="portrait" />
<activity
android:name=".ui.activity.ProcessOrderActivity" android:name=".ui.activity.ProcessOrderActivity"
android:configChanges="orientation|screenSize|keyboardHidden" android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
...@@ -40,18 +44,16 @@ ...@@ -40,18 +44,16 @@
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity <activity
android:name=".ui.activity.OrderDetailsActivity" android:name=".ui.activity.OrderDetailsActivity"
android:launchMode="singleTask"
android:windowSoftInputMode="adjustResize"
android:configChanges="orientation|screenSize|keyboardHidden" android:configChanges="orientation|screenSize|keyboardHidden"
android:launchMode="singleTask"
android:screenOrientation="portrait" android:screenOrientation="portrait"
/> android:windowSoftInputMode="adjustResize" />
<activity <activity
android:name=".ui.activity.OrderDetailsClockActivity" android:name=".ui.activity.OrderDetailsClockActivity"
android:launchMode="singleTask"
android:windowSoftInputMode="adjustResize"
android:configChanges="orientation|screenSize|keyboardHidden" android:configChanges="orientation|screenSize|keyboardHidden"
android:launchMode="singleTask"
android:screenOrientation="portrait" android:screenOrientation="portrait"
/> android:windowSoftInputMode="adjustResize" />
<activity <activity
android:name=".ui.activity.ReturnPartNewActivity" android:name=".ui.activity.ReturnPartNewActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
...@@ -79,8 +81,8 @@ ...@@ -79,8 +81,8 @@
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity <activity
android:name=".ui.activity.MultiProcessOrderActivity" android:name=".ui.activity.MultiProcessOrderActivity"
android:hardwareAccelerated="true"
android:configChanges="orientation|screenSize|keyboardHidden" android:configChanges="orientation|screenSize|keyboardHidden"
android:hardwareAccelerated="true"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity <activity
android:name=".ui.activity.SignatureActivity" android:name=".ui.activity.SignatureActivity"
...@@ -93,9 +95,9 @@ ...@@ -93,9 +95,9 @@
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
<activity <activity
android:name=".ui.activity.SopLocalActivity" android:name=".ui.activity.SopLocalActivity"
android:windowSoftInputMode="stateHidden|adjustPan"
android:configChanges="orientation|screenSize|keyboardHidden" android:configChanges="orientation|screenSize|keyboardHidden"
android:screenOrientation="portrait" /> android:screenOrientation="portrait"
android:windowSoftInputMode="stateHidden|adjustPan" />
<activity <activity
android:name=".ui.activity.ApplyAndRefuseActivity" android:name=".ui.activity.ApplyAndRefuseActivity"
android:screenOrientation="portrait" /> android:screenOrientation="portrait" />
...@@ -105,17 +107,14 @@ ...@@ -105,17 +107,14 @@
<activity <activity
android:name=".ui.activity.OrderPartReceiveActivity" android:name=".ui.activity.OrderPartReceiveActivity"
android:screenOrientation="portrait" android:screenOrientation="portrait"
android:windowSoftInputMode="stateHidden|adjustPan" android:windowSoftInputMode="stateHidden|adjustPan" />
/>
<activity <activity
android:name=".ui.activity.OrderPartSendActivity" android:name=".ui.activity.OrderPartSendActivity"
android:screenOrientation="portrait" android:screenOrientation="portrait"
android:windowSoftInputMode="stateHidden|adjustPan" android:windowSoftInputMode="stateHidden|adjustPan" />
/>
<activity <activity
android:name=".ui.activity.KnowledgeDetailActivity" android:name=".ui.activity.KnowledgeDetailActivity"
android:screenOrientation="portrait" android:screenOrientation="portrait" />
/>
</application> </application>
</manifest>
</manifest>
\ 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.checkintakephoto.CheckInTakePhotoPresenter" />
</data>
<LinearLayout
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<RelativeLayout
android:id="@+id/title_close"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="@dimen/size_main_title"
android:background="#e8e8e8">
<TextView
android:id="@+id/tv_title"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="@dimen/dp_15"
android:textColor="#333"
android:textStyle="bold"
android:text="工作现场拍照打卡记录" />
<ImageView
android:id="@+id/receiving_back"
android:src="@drawable/btn_close_black"
style="@style/title_right_image"
/>
</RelativeLayout>
<ImageView
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1"
android:id="@+id/photo"
android:src="@drawable/photo_default"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:gravity="bottom"
android:layout_marginTop="@dimen/dp_20"
android:layout_marginBottom="@dimen/dp_20"
>
<TextView
android:id="@+id/select_photo"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="40dp"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp"
android:layout_marginTop="25dp"
android:background="@drawable/tab_blue_react"
android:gravity="center"
android:onClick="@{()->presenter.selectPhoto()}"
android:text="选择图片"
android:textStyle="bold"
android:textColor="@color/white"
android:textSize="16sp" />
<TextView
android:id="@+id/submit"
android:layout_width="0dp"
android:layout_weight="1"
android:layout_height="40dp"
android:layout_marginLeft="15dp"
android:layout_marginRight="15dp"
android:layout_marginTop="25dp"
android:background="@drawable/tab_blue_react"
android:gravity="center"
android:onClick="@{()->presenter.submit()}"
android:text="提交"
android:textStyle="bold"
android:textColor="@color/white"
android:textSize="16sp" />
</LinearLayout>
</LinearLayout>
</layout>
\ No newline at end of file
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