Commit 70a713f5 by 罗翻

string类修改

parent 860f7c8e
Showing with 721 additions and 595 deletions
......@@ -41,7 +41,7 @@ android {
debug {
signingConfig android.signingConfigs.release
minifyEnabled true
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
......
......@@ -84,7 +84,7 @@ public class Constants {
/***********************其他配置**********************************/
public final static int PAGESIZE = 30;
public final static int PAGESIZE = 5;
//相册选择照片删除时传递的key
public final static String BUNDLE_KEY_ID = "BUNDLE_KEY_ID";
//通用的工程师id
......
......@@ -26,7 +26,7 @@ import java.util.concurrent.TimeUnit;
import io.reactivex.Observable;
public class InitializeActivity extends AppCompatActivity {
private static final int SDK_PERMISSION_REQUEST = 1;
public static final int SDK_PERMISSION_REQUEST = 1;
private Activity mActivity;
@Override
......@@ -35,7 +35,7 @@ public class InitializeActivity extends AppCompatActivity {
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
supportRequestWindowFeature(Window.FEATURE_NO_TITLE);
setContentView(R.layout.activity_main);
setContentView(R.layout.activity_initialize_main);
mActivity = this;
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {//判断当前系统的SDK版本是否大于23
......@@ -82,7 +82,7 @@ public class InitializeActivity extends AppCompatActivity {
public void onClick(Dialog dialog, boolean confirm) {
if (confirm) {
Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
intent.setData(Uri.parse("package:" + getPackageName())); // 根据包名打开对应的设置界面
intent.setData(Uri.parse("package:" + getPackageName()));
startActivity(intent);
dialog.dismiss();
} else {
......
......@@ -2,6 +2,8 @@ package com.dayu.bigfish.api;
import android.net.ParseException;
import com.dayu.bigfish.MyApplication;
import com.dayu.bigfish.R;
import com.google.gson.JsonParseException;
import org.apache.http.conn.ConnectTimeoutException;
......@@ -35,24 +37,24 @@ public class APIException {
ex = new ResponeThrowable(e, ERROR.HTTP_ERROR);
switch (httpException.code()) {
case FORBIDDEN:
ex.message = "token失效";
ex.message = MyApplication.getContext().getString(R.string.error_token);
ex.code = FORBIDDEN;
break;
case UNAUTHORIZED:
case NOT_FOUND:
case REQUEST_TIMEOUT:
ex.message = "连接服务器超时";
ex.message = MyApplication.getContext().getString(R.string.error_time_out);
ex.code = REQUEST_TIMEOUT;
break;
case GATEWAY_TIMEOUT:
case INTERNAL_SERVER_ERROR:
ex.message = "连接服务器失败";
ex.message = MyApplication.getContext().getString(R.string.error_connect);
ex.code = INTERNAL_SERVER_ERROR;
break;
case BAD_GATEWAY:
case SERVICE_UNAVAILABLE:
default:
ex.message = "网络错误";
ex.message = MyApplication.getContext().getString(R.string.error_internet);
break;
}
return ex;
......@@ -65,27 +67,27 @@ public class APIException {
|| e instanceof JSONException
|| e instanceof ParseException) {
ex = new ResponeThrowable(e, ERROR.PARSE_ERROR);
ex.message = "解析错误";
ex.message = MyApplication.getContext().getString(R.string.error_parse);
return ex;
} else if (e instanceof ConnectException) {
ex = new ResponeThrowable(e, ERROR.NETWORD_ERROR);
ex.message = "连接失败";
ex.message = MyApplication.getContext().getString(R.string.error_connect);
return ex;
} else if (e instanceof javax.net.ssl.SSLHandshakeException) {
ex = new ResponeThrowable(e, ERROR.SSL_ERROR);
ex.message = "证书验证失败";
ex.message = MyApplication.getContext().getString(R.string.error_ssl);
return ex;
} else if (e instanceof ConnectTimeoutException) {
ex = new ResponeThrowable(e, ERROR.TIMEOUT_ERROR);
ex.message = "连接超时";
ex.message = MyApplication.getContext().getString(R.string.error_time_out);
return ex;
} else if (e instanceof java.net.SocketTimeoutException) {
ex = new ResponeThrowable(e, ERROR.TIMEOUT_ERROR);
ex.message = "连接超时";
ex.message = MyApplication.getContext().getString(R.string.error_time_out);
return ex;
} else {
ex = new ResponeThrowable(e, ERROR.UNKNOWN);
ex.message = "未知错误";
ex.message = MyApplication.getContext().getString(R.string.error_unknow);
return ex;
}
}
......
......@@ -142,6 +142,7 @@ public class Api {
.header("token", token)
.build();
}
Log.d("request_header", request.headers().toString());
return chain.proceed(request);
}
......
......@@ -19,10 +19,22 @@ public class ServerException extends Exception {
}
private void processCode(String code) {
if (code == null) {
message = MyApplication.getContext().getString(R.string.get_info_failed);
return;
}
switch (code) {
//order相关
case "ORDER0001":
message = MyApplication.getContext().getString(R.string.order_not_exite);
break;
//user相关
case "USER0004":
message = MyApplication.getContext().getString(R.string.not_engineer);
break;
case "USER0005":
message = MyApplication.getContext().getString(R.string.account_frozen);
break;
default:
message = MyApplication.getContext().getString(R.string.get_info_failed);
break;
......
package com.dayu.bigfish.bean;
import java.io.Serializable;
/**
* Created by yu on 2017/9/30.
*/
public class VersionBase implements Serializable {
/**
* code : 0
* data : {"id":2,"appId":"dayushifua_dayu","versionCode":"1.10.1","versionCodeNum":1010001,"type":1,"downloadUrl":"http://dayuoss.oss-cn-beijing.aliyuncs.com/app/test/dayuuf_20170929.apk","upgradePrompt":"版本升级了!","platform":2,"status":1,"createTime":"2017-09-28 17:09:06","created":"admin","updateTime":null,"updated":null}
* msg : 成功
*/
private int code;
private DataBean data;
private String msg;
public int getCode() {
return code;
}
public void setCode(int code) {
this.code = code;
}
public DataBean getData() {
return data;
}
public void setData(DataBean data) {
this.data = data;
}
public String getMsg() {
return msg;
}
public void setMsg(String msg) {
this.msg = msg;
}
public static class DataBean {
/**
* id : 2
* appId : dayushifua_dayu
* versionCode : 1.10.1
* versionCodeNum : 1010001
* type : 1
* downloadUrl : http://dayuoss.oss-cn-beijing.aliyuncs.com/app/test/dayuuf_20170929.apk
* upgradePrompt : 版本升级了!
* platform : 2
* status : 1
* createTime : 2017-09-28 17:09:06
* created : admin
* updateTime : null
* updated : null
*/
private int id;
private String appId;
private String versionCode;
private int versionCodeNum;
private int type;
private String downloadUrl;
private String upgradePrompt;
private int platform;
private int status;
private String createTime;
private String created;
private Object updateTime;
private Object updated;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getAppId() {
return appId;
}
public void setAppId(String appId) {
this.appId = appId;
}
public String getVersionCode() {
return versionCode;
}
public void setVersionCode(String versionCode) {
this.versionCode = versionCode;
}
public int getVersionCodeNum() {
return versionCodeNum;
}
public void setVersionCodeNum(int versionCodeNum) {
this.versionCodeNum = versionCodeNum;
}
public int getType() {
return type;
}
public void setType(int type) {
this.type = type;
}
public String getDownloadUrl() {
return downloadUrl;
}
public void setDownloadUrl(String downloadUrl) {
this.downloadUrl = downloadUrl;
}
public String getUpgradePrompt() {
return upgradePrompt;
}
public void setUpgradePrompt(String upgradePrompt) {
this.upgradePrompt = upgradePrompt;
}
public int getPlatform() {
return platform;
}
public void setPlatform(int platform) {
this.platform = platform;
}
public int getStatus() {
return status;
}
public void setStatus(int status) {
this.status = status;
}
public String getCreateTime() {
return createTime;
}
public void setCreateTime(String createTime) {
this.createTime = createTime;
}
public String getCreated() {
return created;
}
public void setCreated(String created) {
this.created = created;
}
public Object getUpdateTime() {
return updateTime;
}
public void setUpdateTime(Object updateTime) {
this.updateTime = updateTime;
}
public Object getUpdated() {
return updated;
}
public void setUpdated(Object updated) {
this.updated = updated;
}
}
}
......@@ -10,11 +10,20 @@ public class OrderState {
private int state;
private String time;
public OrderState(int state, int position) {
this.position = position;
this.state = state;
}
public OrderState(int state, int position, String time) {
this.position = position;
this.state = state;
this.time = time;
}
public int getPosition() {
return position;
}
......@@ -30,4 +39,13 @@ public class OrderState {
public void setState(int state) {
this.state = state;
}
public String getTime() {
return time;
}
public void setTime(String time) {
this.time = time;
}
}
......@@ -12,8 +12,16 @@ import com.dayu.bigfish.bean.AccountBalance;
public interface AccountBalanceContract {
interface View extends BaseView {
/**
* 获取账户信息成功.
*
* @param balance
*/
void getBalanceSuccess(BasePageBean<AccountBalance> balance);
/**
* 获取账户列表信息失败.
*/
void getBalanceError();
}
......
......@@ -4,6 +4,7 @@ package com.dayu.bigfish.presenter.login;
import com.dayu.bigfish.base.BasePresenter;
import com.dayu.bigfish.base.BaseView;
import com.dayu.bigfish.bean.UserInfo;
import com.dayu.bigfish.ui.LoginActivity;
/**
* Created by luo on 2016/8/4.
......@@ -11,26 +12,68 @@ import com.dayu.bigfish.bean.UserInfo;
public interface LoginContract {
interface View extends BaseView {
//正式登录成功的回调
/**
* 登录.
* @param userPhone 手机号.
* @param code 验证码.
*/
void login(String userPhone, String code);
/**
* 登陆成功.
* @param info 用户信息.
*/
void loginSuccess(UserInfo info);
/**
* 登录失败
* @param throwable 错误信息.
*/
void loginFail(Throwable throwable);
//验证码发送成功的回调
void sendRegisterSuccess(boolean flag);
/**
* 发送验证码.
* @param userPhone 手机号
* @param type 1:短信,2:语音验证码.
*/
void sendCode(String userPhone, int type);
/**
* 验证码发送成功
* @param flag
*/
void sendCodeSuccess(boolean flag);
/**
* 验证码发送失败.
* @param throwable
*/
void sendCodeFail(Throwable throwable);
void sendRegisterFail(Throwable throwable);
/**
* 进行倒计时.
*/
void changeCodeButton();
/**
* 语音验证码变灰.
*/
void changeVoiceCodeButton();
/**
* 跳转到用户须知页面.
*/
void dumpAgreement();
}
abstract class Presenter extends BasePresenter<View> {
abstract class Presenter extends BasePresenter<LoginActivity> {
/**
* 发送验证码.
*
* @param userPhone
*/
public abstract void sendRegister(String userPhone, int type);
public abstract void sendCode(String userPhone, int type);
/**
* 登录.
......
package com.dayu.bigfish.presenter.login;
import android.text.TextUtils;
import android.util.Log;
import com.app.annotation.apt.InstanceFactory;
import com.apt.ApiFactory;
import com.dayu.bigfish.R;
import com.dayu.bigfish.bean.UserInfo;
import com.dayu.bigfish.utils.UtilsUserAccountMatcher;
import io.reactivex.functions.Consumer;
......@@ -15,25 +18,52 @@ import io.reactivex.functions.Consumer;
@InstanceFactory
public class LoginPresenter extends LoginContract.Presenter {
@Override
public void onAttached() {
}
@Override
public void sendRegister(String userPhone, int type) {
public void sendCode(String userPhone, int type) {
if (TextUtils.isEmpty(userPhone)) {
mView.showToast(mActivity.getString(R.string.phone_num_not_null));
return;
}
if (!UtilsUserAccountMatcher.isPhoneNum(userPhone)) {
mView.showToast(mActivity.getString(R.string.please_input_phone_right));
return;
}
if (type == 1) {
mView.changeCodeButton();
} else if (type == 2) {
mView.changeVoiceCodeButton();
}
mView.showDialog();
ApiFactory.sendCode(userPhone, type).subscribe(baseObserver(new Consumer<Boolean>() {
@Override
public void accept(Boolean aBoolean) throws Exception {
mView.sendRegisterSuccess(aBoolean);
mView.sendCodeSuccess(aBoolean);
}
}, new Consumer<Throwable>() {
@Override
public void accept(Throwable throwable) throws Exception {
mView.sendRegisterFail(throwable);
mView.sendCodeFail(throwable);
}
}));
}
@Override
public void login(String userPhone, String register) {
ApiFactory.login(userPhone, register).subscribe(baseObserver(new Consumer<UserInfo>() {
public void login(String userPhone, String code) {
if (TextUtils.isEmpty(userPhone) || TextUtils.isEmpty(code)) {
mView.showToast(mActivity.getString(R.string.phone_sms_not_null));
return;
}
if (!UtilsUserAccountMatcher.isPhoneNum(userPhone)) {
mView.showToast(mActivity.getString(R.string.please_input_phone_right));
return;
}
mView.showDialog();
ApiFactory.login(userPhone, code).subscribe(baseObserver(new Consumer<UserInfo>() {
@Override
public void accept(UserInfo userInfo) throws Exception {
mView.loginSuccess(userInfo);
......@@ -46,9 +76,4 @@ public class LoginPresenter extends LoginContract.Presenter {
}
}));
}
@Override
public void onAttached() {
}
}
......@@ -13,29 +13,83 @@ import com.dayu.bigfish.bean.VersionInfo;
public interface MainContract {
interface View extends BaseView {
/**
* 请求是否需要升级.
*
* @param versionCode 版本号.
*/
void needUpdate(String versionCode);
void noNeedUpdate();
/**
* 获取升级信息成功.
*
* @param info 升级信息.
*/
void getUpgradeVersionSuccess(VersionInfo info);
/**
* 提交版本信息成功.
*/
void commitVersionInfoSuccess();
/**
* 获取待接单数量成功.
*
* @param orders 订单.
*/
void getReceiveOrderSuccess(BasePageBean<Order> orders);
/**
* 是否显示小红点.
*
* @param flag
*/
void isShowRedIcon(boolean flag);
}
abstract class Presenter extends BasePresenter<View> {
/**
* 获取新版本信息.
*
* @param version 版本号.
*/
public abstract void getNewVersion(String version);
/**
* 获取版本升级信息.
*
* @param appId appId.
* @param versionCode 版本号.
*/
public abstract void upgradeVersion(String appId, String versionCode);
/**
* 提交版本信息.
*
* @param accoutId 用户账号.
* @param imei imei号.
* @param platform 平台 2.android
* @param versionCode 版本号.
*/
public abstract void commitVersionInfo(int accoutId, String imei, String platform, String versionCode);
/**
* 获取待接单列表
*
* @param state 1.待接单.
* @param userId
* @param siteId
* @param pagerId
* @param pagerSize
*/
public abstract void getReceiveOrder(int state, int userId, int siteId, int pagerId, int pagerSize);
/**
* 获取环信消息数量.
*
* @param hxAccout 环信账号.
*/
public abstract void getHxNum(String hxAccout);
}
}
......@@ -34,8 +34,6 @@ public class MainPresenter extends MainContract.Presenter {
public void accept(String s) throws Exception {
if (!version.equals(s)) {
mView.needUpdate(s);
} else {
mView.noNeedUpdate();
}
}
}));
......@@ -99,4 +97,5 @@ public class MainPresenter extends MainContract.Presenter {
}
}));
}
}
......@@ -89,9 +89,9 @@ public class ProcessOrderPresenter extends ProcessOrderContract.Presenter {
MultipartBody.Part[] part = new MultipartBody.Part[files.size()];
for (int i = 0; i < files.size(); i++) {
RequestBody requestFile =
RequestBody.create(MediaType.parse("multipart/form-data"), files.get(0));
RequestBody.create(MediaType.parse("multipart/form-data"), files.get(i));
MultipartBody.Part body =
MultipartBody.Part.createFormData("fileUpload", files.get(0).getName(), requestFile);
MultipartBody.Part.createFormData("fileUpload", files.get(i).getName(), requestFile);
part[i] = body;
}
ApiFactory.uploadPhoto(part).subscribe(baseObserver(new Consumer<List<String>>() {
......
......@@ -23,8 +23,21 @@ public interface ReceivingContract {
}
abstract class Presenter extends BasePresenter<View> {
/**
* 获取待接单列表.
* @param state 1:待接单.
* @param pagerId
* @param pagerSize
* @param siteId
* @param userId
*/
public abstract void getReceiveOrder(int state, int pagerId, int pagerSize, int siteId, int userId);
/**
* 工程师接单.
* @param orders
* @param engineer 工程师id.
*/
public abstract void receiveOrder(int orders, int engineer);
}
}
......@@ -12,11 +12,27 @@ import com.dayu.bigfish.bean.Order;
public interface WroksRecordContract {
interface View extends BaseView {
/**
* 获取完成订单列表成功.
* @param orders
*/
void getWorksRecord(BasePageBean<Order> orders);
/**
* 获取完成订单列表失败.
*/
void getWorkRecordFail();
}
abstract class Presenter extends BasePresenter<View> {
/**
* 获取完成订单
* @param state 5,已完成.
* @param engineerId
* @param siteId
* @param page
* @param pageSize
*/
public abstract void getWorksRecord(int state, int engineerId, int siteId, int page, int pageSize);
}
}
......@@ -110,7 +110,7 @@ public class AccountBalanceActivity extends BaseActivity<AccountBalancePresenter
LayoutInflater inflater = LayoutInflater.from(mActivity);
View view = inflater.inflate(R.layout.tips_empty, null);
TextView tip = (TextView) view.findViewById(R.id.tv_empty);
tip.setText("暂无记录");
tip.setText(getString(R.string.no_record));
mAdapter.setEmptyView(view);
}
}
......
......@@ -47,7 +47,7 @@ public class FeedBackActivity extends BaseActivity<FeedBackPresenter> implements
case R.id.submit_idea:
comment = textContent.getText().toString();
if (TextUtils.isEmpty(comment)) {
ToastUtils.showShortToast("请输入反馈意见...");
ToastUtils.showShortToast(getString(R.string.input_feedback));
return;
}
mPresenter.comFirmSuggist(comment, userName, userPhone);
......@@ -57,7 +57,7 @@ public class FeedBackActivity extends BaseActivity<FeedBackPresenter> implements
@Override
public void comfirmSuccess() {
ToastUtils.showShortToast("提交成功");
ToastUtils.showShortToast(getString(R.string.commite_success));
finish();
}
}
......@@ -2,7 +2,6 @@ package com.dayu.bigfish.ui;
import android.content.Intent;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
......@@ -17,7 +16,6 @@ import com.dayu.bigfish.ui.views.ClearEditText;
import com.dayu.bigfish.utils.ProgressUtil;
import com.dayu.bigfish.utils.TimeCountUtil;
import com.dayu.bigfish.utils.ToastUtils;
import com.dayu.bigfish.utils.UtilsUserAccountMatcher;
import com.dayu.bigfish.utils.managers.UserManager;
import com.hyphenate.EMCallBack;
import com.hyphenate.chat.EMClient;
......@@ -54,10 +52,14 @@ public class LoginActivity extends BaseActivity<LoginPresenter> implements Login
}
@Override
public void login(String userPhone, String code) {
mPresenter.login(userPhone, code);
}
@Override
public void loginSuccess(UserInfo info) {
hxUserId = info.getHxAccount();
hxUserPwd = info.getHxPwd();
UserManager.getInstance().saveUserInfo(this, info);
if (!(TextUtils.isEmpty(hxUserId)) && !(TextUtils.isEmpty(hxUserPwd))) {
EMClient.getInstance().login(hxUserId, hxUserPwd, new EMCallBack() {
......@@ -73,7 +75,6 @@ public class LoginActivity extends BaseActivity<LoginPresenter> implements Login
@Override
public void onError(int code, String message) {
Log.d("hx", message);
}
});
}
......@@ -85,23 +86,47 @@ public class LoginActivity extends BaseActivity<LoginPresenter> implements Login
@Override
public void loginFail(Throwable throwable) {
ToastUtils.showShortToast(throwable.toString());
ToastUtils.showShortToast("登录失败");
ToastUtils.showShortToast(getString(R.string.login_faile));
}
@Override
public void sendCode(String userPhone, int type) {
mPresenter.sendCode(userPhone, type);
}
@Override
public void sendRegisterSuccess(boolean flag) {
public void sendCodeSuccess(boolean flag) {
if (mType == 1) {
ToastUtils.showShortToast(getString(R.string.login_sms_success));
} else if (mType == 2) {
mVoiceCode.setText("语音验证码已经发送,请注意查收");
mVoiceCode.setText(getString(R.string.login_voice_sms_success));
}
}
@Override
public void sendCodeFail(Throwable throwable) {
ToastUtils.showShortToast(getString(R.string.send_code_faile));
}
@Override
public void changeCodeButton() {
TimeCountUtil timeCountUtil = new TimeCountUtil(mActivity, 60000, 1000, btnRegisterSendCode);
timeCountUtil.start();
ProgressUtil.startLoad(mActivity);
}
@Override
public void sendRegisterFail(Throwable throwable) {
ToastUtils.showShortToast("发送验证码失败");
public void changeVoiceCodeButton() {
mVoiceCode.setTextColor(getResources().getColor(R.color.cl_text));
mVoiceCode.setClickable(false);
}
@Override
public void dumpAgreement() {
Intent intent = new Intent(mActivity, AgreementActivity.class);
startActivity(intent);
}
......@@ -112,11 +137,11 @@ public class LoginActivity extends BaseActivity<LoginPresenter> implements Login
switch (view.getId()) {
case R.id.btn_register_send_code:
mType = 1;
sendSmsCode(userPhone, mType);
sendCode(userPhone, mType);
break;
case R.id.tv_voice_code:
mType = 2;
sendSmsCode(userPhone, mType);
sendCode(userPhone, mType);
break;
case R.id.register_button:
login(userPhone, register);
......@@ -127,45 +152,6 @@ public class LoginActivity extends BaseActivity<LoginPresenter> implements Login
}
}
private void dumpAgreement() {
Intent intent = new Intent(mActivity, AgreementActivity.class);
startActivity(intent);
}
private void login(String userPhone, String register) {
if (TextUtils.isEmpty(userPhone) || TextUtils.isEmpty(register)) {
ToastUtils.showShortToast(getString(R.string.phone_sms_not_null));
return;
}
if (!UtilsUserAccountMatcher.isPhoneNum(userPhone)) {
ToastUtils.showShortToast(getString(R.string.please_input_phone_right));
return;
}
ProgressUtil.startLoad(mActivity);
mPresenter.login(userPhone, register);
}
private void sendSmsCode(String userPhone, int type) {
if (TextUtils.isEmpty(userPhone)) {
ToastUtils.showShortToast(getString(R.string.phone_num_not_null));
return;
}
if (!UtilsUserAccountMatcher.isPhoneNum(userPhone)) {
ToastUtils.showShortToast(getString(R.string.please_input_phone_right));
return;
}
if (type == 1) {
TimeCountUtil timeCountUtil = new TimeCountUtil(mActivity, 60000, 1000, btnRegisterSendCode);
timeCountUtil.start();
ProgressUtil.startLoad(mActivity);
} else if (type == 2) {
mVoiceCode.setTextColor(getResources().getColor(R.color.cl_text));
mVoiceCode.setClickable(false);
}
mPresenter.sendRegister(userPhone, type);
}
@Override
public void onDestroy() {
super.onDestroy();
......
package com.dayu.bigfish.ui;
import android.Manifest;
import android.annotation.TargetApi;
import android.app.Dialog;
import android.app.NotificationManager;
import android.content.Context;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.Build;
import android.os.Environment;
import android.provider.Settings;
import android.support.annotation.NonNull;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
......@@ -14,6 +20,7 @@ import android.support.v4.content.FileProvider;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import android.widget.Toast;
import com.dayu.bigfish.BuildConfig;
import com.dayu.bigfish.Constants;
......@@ -51,6 +58,8 @@ import java.io.File;
import butterknife.BindView;
import butterknife.OnClick;
import static com.dayu.bigfish.InitializeActivity.SDK_PERMISSION_REQUEST;
/**
* Created by luofan on 2017/11/20.
*/
......@@ -88,6 +97,9 @@ public class MainActivity extends BaseActivity<MainPresenter> implements MainCon
@Override
public void initView() {
requestpermission();
mAccountId = GetUserInfo.getACCOUNT_ID(mActivity);
mSiteId = GetUserInfo.getSITE_ID(mActivity);
firstFragment = HomeFirstTabFragment.newInstance();
secondFragment = HomeOrderFragment.newInstance();
thirdFragment = HomeMessageTabFragment.newInstance();
......@@ -95,45 +107,19 @@ public class MainActivity extends BaseActivity<MainPresenter> implements MainCon
mFragments = new Fragment[]{firstFragment, secondFragment, thirdFragment, fourFragment};
mTabs = new TextView[]{mTabFirst, mTabSecond, mTabThird, mTabFour};
addFragment();
mAccountId = GetUserInfo.getACCOUNT_ID(mActivity);
mSiteId = GetUserInfo.getSITE_ID(mActivity);
String imei = AppUtils.getIMEI(mActivity);
mPresenter.commitVersionInfo(mAccountId, imei, "2", AppUtils.getPackageNum(mActivity));
mPresenter.getNewVersion(AppUtils.getPackageNum(mActivity));
mPresenter.getReceiveOrder(Constants.WATING_ORDER, mAccountId, mSiteId, 1, 20);
mPresenter.getHxNum(GetUserInfo.getHxUserId(mActivity));
resetSelected(1);
showHideFragment(mFragments[1], mFragments[mPosition]);
mPosition = 1;
doAction(getIntent());
request();
EventBus.getDefault().register(this);
}
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
doAction(intent);
}
private void doAction(Intent intent) {
InformBean info = (InformBean) intent.getSerializableExtra(Constants.MESSAGE_INFO);
if (info != null) {
if (info.getCategory() == 1 && (info.getFunctionType() == 2)) {
dumpReceActivity();
} else {
int secondIndex = 0;
if (info.getCategory() == 1) {
secondIndex = 0;
} else if (info.getCategory() == 2) {
secondIndex = 1;
}
resetSelected(2);
showHideFragment(mFragments[2], mFragments[mPosition]);
mMessageRedIcon.setVisibility(View.GONE);
thirdFragment.setIndex(secondIndex);
thirdFragment.swtichFragment(secondIndex);
mPosition = 2;
}
}
private void request() {
mPresenter.commitVersionInfo(mAccountId, AppUtils.getIMEI(mActivity), "2", AppUtils.getPackageNum(mActivity));
mPresenter.getNewVersion(AppUtils.getPackageNum(mActivity));
mPresenter.getReceiveOrder(Constants.WATING_ORDER, mAccountId, mSiteId, 1, 20);
mPresenter.getHxNum(GetUserInfo.getHxUserId(mActivity));
}
@OnClick({R.id.tab_first, R.id.tab_second, R.id.tab_third, R.id.tab_four, R.id.tab_get_order})
......@@ -162,57 +148,17 @@ public class MainActivity extends BaseActivity<MainPresenter> implements MainCon
break;
case R.id.tab_get_order:
dumpReceActivity();
break;
default:
break;
}
}
private void dumpReceActivity() {
Intent intent = new Intent(mActivity, ReceivingActivity.class);
startActivity(intent);
overridePendingTransition(R.anim.slide_bottom_in, 0);
}
public void resetSelected(int position) {
for (int i = 0; i < mTabs.length; i++) {
mTabs[i].setSelected(false);
}
mTabs[position].setSelected(true);
}
private void addFragment() {
mFragmentManger = getSupportFragmentManager();
FragmentTransaction transaction = mFragmentManger.beginTransaction()
.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
for (int i = 0; i < mFragments.length; i++) {
Fragment fragment = mFragments[i];
String toName = fragment.getClass().getName();
transaction.add(R.id.fl_container, fragment, toName);
if (i != 0) {
transaction.hide(fragment);
}
}
transaction.commit();
}
private void showHideFragment(Fragment mShow, Fragment mHide) {
if (mShow == mHide) return;
mFragmentManger.beginTransaction()
.show(mShow)
.hide(mHide)
.commit();
}
@Override
public void needUpdate(String versionCode) {
mPresenter.upgradeVersion("dayushifua_dayu", versionCode);
}
@Override
public void noNeedUpdate() {
}
@Override
public void getUpgradeVersionSuccess(VersionInfo info) {
......@@ -239,6 +185,7 @@ public class MainActivity extends BaseActivity<MainPresenter> implements MainCon
}
/**
* 弹窗选择是否更新(软更新)
*
......@@ -252,7 +199,7 @@ public class MainActivity extends BaseActivity<MainPresenter> implements MainCon
File sdDir = Environment.getExternalStorageDirectory();
File file = new File(sdDir, "dayu" + ".apk");
if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
ToastUtils.showShortToast("正在下载中,请稍后...");
ToastUtils.showShortToast(getString(R.string.on_download));
initNotification();
notificationManager.notify(0, builder.build());
DownloadService.startUpdateService(mActivity, downloadPath, file.getAbsolutePath(), new onDownloadListener() {
......@@ -275,7 +222,7 @@ public class MainActivity extends BaseActivity<MainPresenter> implements MainCon
@Override
public void onDownloadFail() {
ToastUtils.showShortToast("下载失败");
ToastUtils.showShortToast(getString(R.string.download_faile));
}
});
}
......@@ -286,9 +233,9 @@ public class MainActivity extends BaseActivity<MainPresenter> implements MainCon
}
dialog1.dismiss();
});
dialog.setTitle("有新版本")
.setNegativeButton("下次再说")
.setPositiveButton("立刻升级");
dialog.setTitle(getString(R.string.have_new_version))
.setNegativeButton(getString(R.string.next_again))
.setPositiveButton(getString(R.string.need_upglude));
dialog.show();
}
......@@ -296,12 +243,49 @@ public class MainActivity extends BaseActivity<MainPresenter> implements MainCon
notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
builder = new NotificationCompat.Builder(this)
.setSmallIcon(R.mipmap.wechatimg)
.setContentTitle("开始下载")
.setContentTitle(getString(R.string.start_download))
.setAutoCancel(true)
.setContentText("版本更新");
.setContentText(getString(R.string.new_version));
}
private void dumpReceActivity() {
Intent intent = new Intent(mActivity, ReceivingActivity.class);
startActivity(intent);
overridePendingTransition(R.anim.slide_bottom_in, 0);
}
public void resetSelected(int position) {
for (int i = 0; i < mTabs.length; i++) {
mTabs[i].setSelected(false);
}
mTabs[position].setSelected(true);
}
private void addFragment() {
mFragmentManger = getSupportFragmentManager();
FragmentTransaction transaction = mFragmentManger.beginTransaction()
.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_OPEN);
for (int i = 0; i < mFragments.length; i++) {
Fragment fragment = mFragments[i];
String toName = fragment.getClass().getName();
transaction.add(R.id.fl_container, fragment, toName);
if (i != 0) {
transaction.hide(fragment);
}
}
transaction.commit();
}
private void showHideFragment(Fragment mShow, Fragment mHide) {
if (mShow == mHide) return;
mFragmentManger.beginTransaction()
.show(mShow)
.hide(mHide)
.commit();
}
@Subscribe(threadMode = ThreadMode.MAIN)
public void recevieNum(RefreshReceivingNum event) {
mGetOrderTv.setText(event.getTabNum() + "");
......@@ -324,6 +308,12 @@ public class MainActivity extends BaseActivity<MainPresenter> implements MainCon
}
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
doAction(intent);
}
@Override
protected void onResume() {
super.onResume();
MobclickAgent.onResume(this);
......@@ -344,4 +334,76 @@ public class MainActivity extends BaseActivity<MainPresenter> implements MainCon
EventBus.getDefault().unregister(this);
}
private void doAction(Intent intent) {
InformBean info = (InformBean) intent.getSerializableExtra(Constants.MESSAGE_INFO);
if (info != null) {
if (info.getCategory() == 1 && (info.getFunctionType() == 2)) {
dumpReceActivity();//待接单列表
} else {
int secondIndex = 0;
if (info.getCategory() == 1) {
secondIndex = 0; //系统通知
} else if (info.getCategory() == 2) {
secondIndex = 1;//大于通知
}
resetSelected(2);
showHideFragment(mFragments[2], mFragments[mPosition]);
mMessageRedIcon.setVisibility(View.GONE);
thirdFragment.setIndex(secondIndex);
thirdFragment.swtichFragment(secondIndex);
mPosition = 2;
}
}
}
private void requestpermission() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {//判断当前系统的SDK版本是否大于23
if (!(checkSelfPermission(Manifest.permission.READ_PHONE_STATE) == PackageManager.PERMISSION_GRANTED)
|| !(checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_GRANTED)
|| !(checkSelfPermission(Manifest.permission.ACCESS_COARSE_LOCATION) == PackageManager.PERMISSION_GRANTED)) {
requestPermissions(new String[]{Manifest.permission.READ_PHONE_STATE, Manifest.permission.WRITE_EXTERNAL_STORAGE
, Manifest.permission.ACCESS_COARSE_LOCATION}, SDK_PERMISSION_REQUEST);
}
}
}
/*权限回调*/
@TargetApi(23)
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {
super.onRequestPermissionsResult(requestCode, permissions, grantResults);
boolean flag = true;
if (requestCode == SDK_PERMISSION_REQUEST) {
for (int grant : grantResults) {
if (grant != PackageManager.PERMISSION_GRANTED) {
flag = false;
}
}
if (!flag) {
CustomDialog dialog = new CustomDialog(mActivity, R.style.custom_dialog2, getString(R.string.please_open__permission)
, new CustomDialog.OnCloseListener() {
@Override
public void onClick(Dialog dialog, boolean confirm) {
if (confirm) {
Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);
intent.setData(Uri.parse("package:" + getPackageName()));
startActivity(intent);
dialog.dismiss();
} else {
Toast.makeText(mActivity, getString(R.string.no_permission), Toast.LENGTH_SHORT).show();
finish();
dialog.dismiss();
}
}
});
dialog.setTitle(getString(R.string.notice))
.setNegativeButton(getString(R.string.cancle))
.setPositiveButton(getString(R.string.go_setting));
dialog.show();
return;
}
}
}
}
......@@ -69,8 +69,8 @@ public class OrderDetailsActivity extends FragmentActivity {
viewPager.setAdapter(fragmentAdapter);
tablayout.setupWithViewPager(viewPager);
tablayout.removeAllTabs();
tablayout.addTab(tablayout.newTab().setText("工单详情"));
tablayout.addTab(tablayout.newTab().setText("服务记录"));
tablayout.addTab(tablayout.newTab().setText(getString(R.string.order_detail)));
tablayout.addTab(tablayout.newTab().setText(getString(R.string.server_record)));
tablayout.setTabMode(TabLayout.MODE_FIXED);
TabLayoutUtils.setIndicator(tablayout, 60, 60, R.color.cl_receiving_order_item_data, this);
}
......
......@@ -67,7 +67,7 @@ public class OrderRecordActivity extends BaseActivity<WorksRecordPresenter> impl
@Override
public void initView() {
titleText.setText("历史工单");
titleText.setText(getString(R.string.history_order));
mAdapter = new OrderDoingAdapter(R.layout.fragment_orderdoing_item, mActivity);
mRecyclerView.setLayoutManager(new LinearLayoutManager(this));
mRecyclerView.setAdapter(mAdapter);
......
......@@ -398,7 +398,7 @@ public class ProcessOrderActivity extends BaseActivity<ProcessOrderPresenter> im
@Override
public void commitOrderSuccess() {
ToastUtils.showShortToast("数据提交成功");
ToastUtils.showShortToast(getString(R.string.order_commite_success));
int status = 0;
if (mAnyContacts == 0) {
status = ORDER_NOCONTACT_FINISH;
......
package com.dayu.bigfish.ui;
import android.content.Intent;
import android.support.v4.widget.SwipeRefreshLayout;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
......@@ -63,22 +64,32 @@ public class ReceivingActivity extends BaseActivity<ReceivingPresenter> implemen
public void initView() {
userId = GetUserInfo.getACCOUNT_ID(this);
siteId = GetUserInfo.getSITE_ID(this);
mTitle.setText("待接单列表");
mTitle.setText(getString(R.string.receive_list));
mAdapter = new OrderDoingAdapter(R.layout.fragment_orderdoing_item, mActivity);
mRecyclerView.setLayoutManager(new LinearLayoutManager(this));
mRecyclerView.setAdapter(mAdapter);
mAdapter.disableLoadMoreIfNotFullPage(mRecyclerView);
mRefreshLayout.setOnRefreshListener(this);
ProgressUtil.startLoad(mActivity);
mAdapter.setOnLoadMoreListener(this, mRecyclerView);
mAdapter.setEnableLoadMore(false);
ProgressUtil.startLoad(mActivity);
mPresenter.getReceiveOrder(Constants.WATING_ORDER, userId, siteId, mPage, mPageSize);
initListener();
}
private void initListener() {
mAdapter.setOnItemChildClickListener((adapter, view, position) -> {
Order order = (Order) adapter.getItem(position);
if (view.getId() == R.id.item_text_phone) {
mPresenter.receiveOrder(order.getId(), userId);
}
});
mAdapter.setOnItemClickListener((adapter, view, position) -> {
Order order = (Order) adapter.getItem(position);
Intent intent = new Intent(mActivity, OrderDetailsActivity.class);
intent.putExtra("orderId", order.getId());
startActivity(intent);
});
}
@OnClick(R.id.receiving_back)
......@@ -128,7 +139,7 @@ public class ReceivingActivity extends BaseActivity<ReceivingPresenter> implemen
@Override
public void receiveOrderSuccess() {
int num = mTotalRows - 1;
ToastUtils.showShortToast("接单成功");
ToastUtils.showShortToast(getString(R.string.receive_order_success));
//接单成功,刷新首页tab状态数量
EventBus.getDefault().post(new RefreshTab(0));
EventBus.getDefault().post(new RefreshReceivingNum(num < 0 ? 0 : num));
......
......@@ -14,6 +14,7 @@ import com.dayu.bigfish.presenter.setting.SettingContract;
import com.dayu.bigfish.presenter.setting.SettingPresenter;
import com.dayu.bigfish.ui.views.CustomDialog;
import com.dayu.bigfish.ui.views.SwitchImage;
import com.dayu.bigfish.utils.AppUtils;
import com.dayu.bigfish.utils.DataCleanManager;
import com.dayu.bigfish.utils.ProgressUtil;
import com.dayu.bigfish.utils.ToastUtils;
......@@ -72,16 +73,16 @@ public class SettingActivity extends BaseActivity<SettingPresenter> implements S
break;
//清空缓存
case R.id.set_clear_huancun:
CustomDialog dialog = new CustomDialog(mActivity, R.style.custom_dialog2, "确定要删除所有缓存数据吗?"
CustomDialog dialog = new CustomDialog(mActivity, R.style.custom_dialog2, getString(R.string.sure_clear_data)
, new CustomDialog.OnCloseListener() {
@Override
public void onClick(Dialog dialog, boolean confirm) {
if (confirm) {
ProgressUtil.startLoad(mActivity, "正在清理...");
ProgressUtil.startLoad(mActivity, getString(R.string.on_clear));
Observable.timer(2, TimeUnit.SECONDS).subscribe(
along -> {
ProgressUtil.stopLoad();
ToastUtils.showShortToast("清理完成");
ToastUtils.showShortToast(getString(R.string.clear_success));
});
DataCleanManager.deleteFolderFile(Environment.getExternalStorageDirectory() + "/Android/data/com.dayu.bigfish/cache", false);
try {
......@@ -138,6 +139,11 @@ public class SettingActivity extends BaseActivity<SettingPresenter> implements S
@Override
public void getNewVersionSuccess(String code) {
ToastUtils.showShortToast("新版本号为:" + code);
if (code.equals(AppUtils.getPackageNum(mActivity))) {
ToastUtils.showShortToast(getString(R.string.is_newversion));
} else {
ToastUtils.showShortToast(getString(R.string.newversion_code) + code);
}
}
}
......@@ -169,7 +169,7 @@ public class SopWebViewActivity extends AppCompatActivity {
Intent i = new Intent(Intent.ACTION_GET_CONTENT);
i.addCategory(Intent.CATEGORY_OPENABLE);
i.setType("image/*");
startActivityForResult(Intent.createChooser(i, "文件选择"), RESULT_CODE);
startActivityForResult(Intent.createChooser(i, getString(R.string.choose_file)), RESULT_CODE);
}
/*android 5.0*/
......@@ -181,7 +181,7 @@ public class SopWebViewActivity extends AppCompatActivity {
Intent chooserIntent = new Intent(Intent.ACTION_CHOOSER);
chooserIntent.putExtra(Intent.EXTRA_INTENT, contentSelectionIntent);
chooserIntent.putExtra(Intent.EXTRA_TITLE, "图片选择");
chooserIntent.putExtra(Intent.EXTRA_TITLE, getString(R.string.choose_pic));
startActivityForResult(chooserIntent, RESULT_CODE_FOR_Lollipop);
}
......
......@@ -21,9 +21,11 @@ import com.dayu.bigfish.utils.DateUtils;
import com.dayu.bigfish.utils.ProgressUtil;
import com.dayu.bigfish.utils.ToastUtils;
import com.dayu.bigfish.utils.UtilsDate;
import com.dayu.bigfish.utils.UtilsUserAccountMatcher;
import org.greenrobot.eventbus.EventBus;
import java.text.ParseException;
import java.util.Calendar;
import java.util.Date;
......@@ -34,6 +36,8 @@ import static com.dayu.bigfish.R.id.title_text;
import static com.dayu.bigfish.ui.fragment.HomeOrderFragment.ORDER_DOING;
import static com.dayu.bigfish.ui.fragment.HomeOrderFragment.ORDER_YUYUE;
import static com.dayu.bigfish.ui.fragment.HomeOrderFragment.SUBCRIBE_TIME;
import static com.dayu.bigfish.utils.UtilsDate.LONG_DATE;
import static com.dayu.bigfish.utils.UtilsDate.LONG_DATE_FORMAT;
import static com.dayu.bigfish.utils.UtilsDate.LONG_TIME_FORMAT_TWO;
/**
......@@ -45,17 +49,18 @@ public class SubcribeTimeActivity extends BaseActivity<SubcribeTimePresenter> im
@BindView(title_text)
TextView titleText;
@BindView(R.id.et_input)
EditText etInput;
EditText mInfoEt;
@BindView(R.id.text_date_value)
TextView textDateValue;
TextView mDayTv;
@BindView(R.id.text_time_value)
TextView textTimeValue;
TextView mTimeTv;
private int orderId;
private String edValue;
private String mInfo;
private DateUtils dateUtils = new DateUtils();
private int finshPosition;
private boolean mIsToday;
private int mState;
private String mTime;
@Override
......@@ -81,15 +86,15 @@ public class SubcribeTimeActivity extends BaseActivity<SubcribeTimePresenter> im
@Override
public void subcribeTimeSuccess() {
ToastUtils.showShortToast("提交数据成功");
ToastUtils.showShortToast(getString(R.string.order_commite_success));
finish();
if (mState == SUBCRIBE_TIME) {
ToastUtils.showShortToast("预约时间成功,请移至待服务列表查看");
ToastUtils.showShortToast(getString(R.string.subcribe_time_success));
EventBus.getDefault().post(new RefreshTab(1));
EventBus.getDefault().post(new RefreshApoiment(1));
EventBus.getDefault().post(new RefreshServe(1));
} else if (mState == ORDER_YUYUE || mState == ORDER_DOING) {
EventBus.getDefault().post(new OrderState(ORDER_YUYUE, finshPosition));
EventBus.getDefault().post(new OrderState(ORDER_YUYUE, finshPosition, mTime));
}
}
......@@ -107,8 +112,8 @@ public class SubcribeTimeActivity extends BaseActivity<SubcribeTimePresenter> im
selectDay();
break;
case R.id.time_two:
if (TextUtils.isEmpty(textDateValue.getText().toString())) {
ToastUtils.showShortToast("请先输入日期");
if (TextUtils.isEmpty(mDayTv.getText().toString())) {
ToastUtils.showShortToast(getString(R.string.input_day_first));
return;
}
selectTime();
......@@ -123,17 +128,17 @@ public class SubcribeTimeActivity extends BaseActivity<SubcribeTimePresenter> im
String nowtime = UtilsDate.getCurrDate(LONG_TIME_FORMAT_TWO);
String time = UtilsDate.dateToString(date2, LONG_TIME_FORMAT_TWO);
if (mIsToday && UtilsDate.stringtoDate(nowtime, LONG_TIME_FORMAT_TWO).getTime() - UtilsDate.stringtoDate(time, LONG_TIME_FORMAT_TWO).getTime() >= 0) {
ToastUtils.showShortToast("请选择合法的时间");
ToastUtils.showShortToast(getString(R.string.input_right_time));
return;
} else {
ToastUtils.showShortToast(time);
textTimeValue.setText(time);
mTimeTv.setText(time);
}
}
})
.setType(TimePickerView.Type.HOURS_MINS)//默认全部显示
.setCancelText("取消")//取消按钮文字
.setSubmitText("确定")//确认按钮文字
.setCancelText(getString(R.string.cancle))//取消按钮文字
.setSubmitText(getString(R.string.comfirm))//确认按钮文字
.setContentSize(20)//滚轮文字大小
.setTitleSize(20)//标题文字大小
// .setTitleText("请选择时间")//标题文字
......@@ -156,9 +161,9 @@ public class SubcribeTimeActivity extends BaseActivity<SubcribeTimePresenter> im
public void onTimeSelect(Date date2, View v) {//选中事件回调
String time = UtilsDate.getTime(date2);
if (UtilsDate.dayDiff(UtilsDate.getNowDate(), date2) >= 0) {
textDateValue.setText(time);
mDayTv.setText(time);
} else {
ToastUtils.showShortToast("请选择合法的时间");
ToastUtils.showShortToast(getString(R.string.input_right_time));
return;
}
int year = UtilsDate.getYear(date2);
......@@ -172,8 +177,8 @@ public class SubcribeTimeActivity extends BaseActivity<SubcribeTimePresenter> im
}
})
.setType(TimePickerView.Type.YEAR_MONTH_DAY)//默认全部显示
.setCancelText("取消")//取消按钮文字
.setSubmitText("确定")//确认按钮文字
.setCancelText(getString(R.string.cancle))//取消按钮文字
.setSubmitText(getString(R.string.comfirm))//确认按钮文字
.setContentSize(20)//滚轮文字大小
.setTitleSize(20)//标题文字大小
// .setTitleText("请选择日期")//标题文字
......@@ -191,16 +196,26 @@ public class SubcribeTimeActivity extends BaseActivity<SubcribeTimePresenter> im
}
private void comfirmData() {
edValue = etInput.getText().toString();
if (textTimeValue.getText().equals("请输入预约时间") || textDateValue.getText().equals("请输入预约信息")) {
ToastUtils.showShortToast("请输入日期和时间");
mInfo = mInfoEt.getText().toString();
String time = mTimeTv.getText().toString().trim();
String day = mDayTv.getText().toString().trim();
if (UtilsUserAccountMatcher.containsEmoji(mInfo)) {
ToastUtils.showShortToast(getString(R.string.no_emoij));
return;
}
if (TextUtils.isEmpty(time) || TextUtils.isEmpty(day)) {
ToastUtils.showShortToast(getString(R.string.input_day_time));
return;
} else {
ProgressUtil.startLoad(mActivity);
ToastUtils.showShortToast("正在提交数据......");
String time = dateUtils.stringTimeTo(textDateValue.getText().toString());
String timeValue = time + textTimeValue.getText().toString() + ":00";
mPresenter.subcribeTime(orderId, timeValue, edValue);
ToastUtils.showShortToast(getString(R.string.on_commite_data));
try {
String d = UtilsDate.changeFormat(day, LONG_DATE, LONG_DATE_FORMAT);
mTime = d + " " + time + ":00";
mPresenter.subcribeTime(orderId, mTime, mInfo);
} catch (ParseException e) {
e.printStackTrace();
}
}
}
}
......@@ -58,13 +58,13 @@ public class SystemMesDetailActivity extends AppCompatActivity {
}
private void initView() {
mTitle.setText("大鱼系统通知详情");
mTitle.setText(getString(R.string.message_dayu_detail));
String time = null;
try {
String dateMD = UtilsDate.changeFormat(message.getCreateTime(), FORMAT_ONE, SHORT_DATE_FORMAT);
String dateTime = UtilsDate.changeFormat(message.getCreateTime(), FORMAT_ONE, LONG_TIME_FORMAT_TWO);
if (UtilsDate.IsToday(message.getCreateTime())) {
time = "今天" + "\u3000" + dateTime;
time = getString(R.string.today)+ "\u3000" + dateTime;
} else {
time = dateMD + "\u3000" + dateTime;
}
......
......@@ -71,22 +71,6 @@ public class OrderDoingAdapter extends BaseQuickAdapter<Order, BaseViewHolder> {
holder.getView(R.id.tv_error_state).setVisibility(View.GONE);
holder.getView(R.id.tv_item_process).setVisibility(View.VISIBLE);
final int id = item.getId();
if (TextUtils.isEmpty(item.getAppointmentTime())) {
holder.setText(R.id.item_tody, mContext.getString(R.string.no_appointment));
holder.getView(R.id.item_time).setVisibility(View.GONE);
} else {
String dateMD = UtilsDate.changeFormat(item.getAppointmentTime(), FORMAT_ONE, SHORT_DATE_FORMAT);
String dateTime = UtilsDate.changeFormat(item.getAppointmentTime(), FORMAT_ONE, LONG_TIME_FORMAT_TWO);
if (UtilsDate.IsToday(item.getAppointmentTime())) {
holder.setText(R.id.item_tody, mContext.getString(R.string.today));
} else if (UtilsDate.IsNextday(item.getAppointmentTime())) {
holder.setText(R.id.item_tody, mContext.getString(R.string.tomorrow));
} else {
holder.setText(R.id.item_tody, dateMD);
}
holder.setText(R.id.item_time, dateTime);
holder.getView(R.id.item_time).setVisibility(View.VISIBLE);
}
if (item.getAnyContacts() == 0) {
holder.setText(R.id.item_text_user_name, mContext.getString(R.string.no_customer));
holder.getView(R.id.item_text_user_phone).setVisibility(View.GONE);
......@@ -102,6 +86,9 @@ public class OrderDoingAdapter extends BaseQuickAdapter<Order, BaseViewHolder> {
} else {
holder.setText(R.id.tv_order_detail, item.getSpuName());
}
//工单状态:1未接单2未预约3已预约4进行中5已完成6已取消7订单关闭
//工单子状态:3已预约1未出发|3已预约2已出发|4进行中3无SOP处理|4进行中4SOP未完成|4进行中5SOP已完成
String time = "";
switch (item.getStatus()) {
case 1: //待接单
holder.getView(R.id.tv_item_process).setVisibility(View.GONE);
......@@ -111,6 +98,7 @@ public class OrderDoingAdapter extends BaseQuickAdapter<Order, BaseViewHolder> {
holder.setText(R.id.item_text_phone, mContext.getString(R.string.receive_order));
holder.addOnClickListener(R.id.item_text_phone);
holder.setText(R.id.tv_order_time, mContext.getString(R.string.have_appointment));
time = item.getAppointmentTime();
break;
case 2://待预约
if (!haveCustomer) {
......@@ -124,6 +112,7 @@ public class OrderDoingAdapter extends BaseQuickAdapter<Order, BaseViewHolder> {
holder.getView(R.id.order_line_two).setVisibility(View.GONE);
holder.setText(R.id.item_updata_time, mContext.getString(R.string.appointment_time));
holder.setText(R.id.tv_order_time, mContext.getString(R.string.have_appointment));
time = item.getAppointmentTime();
break;
case 3://待服务
if (!haveCustomer) {
......@@ -139,6 +128,7 @@ public class OrderDoingAdapter extends BaseQuickAdapter<Order, BaseViewHolder> {
} else if (item.getSubStatus() == 2) {
holder.setText(R.id.tv_item_process, mContext.getString(R.string.begain_server));
}
time = item.getConfirmDoorTime();
break;
case 4://待处理
holder.setText(R.id.item_updata_time, mContext.getString(R.string.need_again_door));
......@@ -166,6 +156,7 @@ public class OrderDoingAdapter extends BaseQuickAdapter<Order, BaseViewHolder> {
holder.getView(R.id.item_bottom_line).setVisibility(View.VISIBLE);
}
}
time = item.getConfirmDoorTime();
break;
case 5://已完成
holder.setText(R.id.tv_error_state, mContext.getString(R.string.order_finish));
......@@ -182,17 +173,37 @@ public class OrderDoingAdapter extends BaseQuickAdapter<Order, BaseViewHolder> {
holder.getView(R.id.ll_bottom).setVisibility(View.VISIBLE);
holder.getView(R.id.item_bottom_line).setVisibility(View.VISIBLE);
}
time = item.getConfirmDoorTime();
break;
default:
break;
}
if (TextUtils.isEmpty(time)) {
holder.setText(R.id.item_tody, mContext.getString(R.string.no_appointment));
holder.getView(R.id.item_time).setVisibility(View.GONE);
} else {
String dateMD = UtilsDate.changeFormat(time, FORMAT_ONE, SHORT_DATE_FORMAT);
String dateTime = UtilsDate.changeFormat(time, FORMAT_ONE, LONG_TIME_FORMAT_TWO);
if (UtilsDate.IsToday(time)) {
holder.setText(R.id.item_tody, mContext.getString(R.string.today));
} else if (UtilsDate.IsNextday(time)) {
holder.setText(R.id.item_tody, mContext.getString(R.string.tomorrow));
} else {
holder.setText(R.id.item_tody, dateMD);
}
holder.setText(R.id.item_time, dateTime);
holder.getView(R.id.item_time).setVisibility(View.VISIBLE);
}
if (item.getExcptionCode() == 1) {
holder.setText(R.id.tv_error_state, mContext.getString(R.string.delivery_time_out));
holder.setText(R.id.tv_error_state, mContext.getString(R.string.receive_time_out));
holder.getView(R.id.tv_error_state).setVisibility(View.VISIBLE);
} else if (item.getExcptionCode() == 2) {
holder.setText(R.id.tv_error_state, mContext.getString(R.string.appointment_time_out));
holder.getView(R.id.tv_error_state).setVisibility(View.VISIBLE);
} else if (item.getExcptionCode() == 3) {
holder.setText(R.id.tv_error_state, mContext.getString(R.string.server_time_out));
holder.getView(R.id.tv_error_state).setVisibility(View.VISIBLE);
} else if (item.getExcptionCode() == 4) {
holder.setText(R.id.tv_error_state, mContext.getString(R.string.delivery_time_out));
holder.getView(R.id.tv_error_state).setVisibility(View.VISIBLE);
}
......@@ -271,7 +282,6 @@ public class OrderDoingAdapter extends BaseQuickAdapter<Order, BaseViewHolder> {
}
}
private void dumpSubcribeTimeActivity(int id, int adapterPosition, int state) {
Intent intent = new Intent(mContext, SubcribeTimeActivity.class);
intent.putExtra(Constants.ORDER_ID, id);
......
......@@ -9,7 +9,6 @@ import com.chad.library.adapter.base.BaseQuickAdapter;
import com.chad.library.adapter.base.BaseViewHolder;
import com.dayu.bigfish.R;
import com.dayu.bigfish.bean.Order;
import com.dayu.bigfish.utils.DateUtils;
import com.dayu.bigfish.utils.UtilsDate;
import static com.dayu.bigfish.utils.UtilsDate.FORMAT_ONE;
......@@ -22,9 +21,6 @@ import static com.dayu.bigfish.utils.UtilsDate.SHORT_DATE_FORMAT;
*/
public class OrderFourTabAdapter extends BaseQuickAdapter<Order, BaseViewHolder> {
private String dateMD = null;
private String dateTime = null;
private DateUtils dateUtils = new DateUtils();
public OrderFourTabAdapter(int layoutResId) {
super(layoutResId);
......@@ -44,15 +40,23 @@ public class OrderFourTabAdapter extends BaseQuickAdapter<Order, BaseViewHolder>
private void initData(BaseViewHolder helper, Order item) {
try {
if (TextUtils.isEmpty(item.getCreateTime())) {
String time;
if (item.getStatus() == 1 || item.getStatus() == 2) {
time = item.getAppointmentTime();
helper.setText(R.id.tv_order_time, mContext.getString(R.string.have_appointment));
} else {
time = item.getConfirmDoorTime();
helper.setText(R.id.tv_order_time, mContext.getString(R.string.tv_home_tab_one_subscribe_time));
}
if (TextUtils.isEmpty(time)) {
helper.setText(R.id.item_tody, mContext.getString(R.string.no_appointment));
helper.getView(R.id.item_time).setVisibility(View.GONE);
} else {
String dateMD = UtilsDate.changeFormat(item.getAppointmentTime(), FORMAT_ONE, SHORT_DATE_FORMAT);
String dateTime = UtilsDate.changeFormat(item.getAppointmentTime(), FORMAT_ONE, LONG_TIME_FORMAT_TWO);
if (UtilsDate.IsToday(item.getAppointmentTime())) {
String dateMD = UtilsDate.changeFormat(time, FORMAT_ONE, SHORT_DATE_FORMAT);
String dateTime = UtilsDate.changeFormat(time, FORMAT_ONE, LONG_TIME_FORMAT_TWO);
if (UtilsDate.IsToday(time)) {
helper.setText(R.id.item_tody, mContext.getString(R.string.today));
} else if (UtilsDate.IsNextday(item.getAppointmentTime())) {
} else if (UtilsDate.IsNextday(time)) {
helper.setText(R.id.item_tody, mContext.getString(R.string.tomorrow));
} else {
helper.setText(R.id.item_tody, dateMD);
......@@ -67,7 +71,7 @@ public class OrderFourTabAdapter extends BaseQuickAdapter<Order, BaseViewHolder>
helper.setText(R.id.item_text_weixiu, item.getProviderName());
helper.setText(R.id.item_text_dizhi, item.getProvinceName() + item.getCityName() +
item.getDistrictName() + item.getAddress());
helper.setText(R.id.error_state,mContext.getString(R.string.order_cancle));
helper.setText(R.id.error_state, mContext.getString(R.string.order_cancle));
} catch (Exception e) {
e.printStackTrace();
}
......
......@@ -34,15 +34,23 @@ public class OrderThreeTabAdapter extends BaseQuickAdapter<ErrorOrder, BaseViewH
private void initData(BaseViewHolder helper, ErrorOrder item) {
try {
if (TextUtils.isEmpty(item.getCreateTime())) {
String time;
if (item.getStatus() == 1 || item.getStatus() == 2) {
time = item.getAppointmentTime();
helper.setText(R.id.tv_order_time, mContext.getString(R.string.have_appointment));
} else {
time = item.getConfirmDoorTime();
helper.setText(R.id.tv_order_time, mContext.getString(R.string.tv_home_tab_one_subscribe_time));
}
if (TextUtils.isEmpty(time)) {
helper.setText(R.id.item_tody, mContext.getString(R.string.no_appointment));
helper.getView(R.id.item_time).setVisibility(View.GONE);
} else {
String dateMD = UtilsDate.changeFormat(item.getAppointmentTime(), FORMAT_ONE, SHORT_DATE_FORMAT);
String dateTime = UtilsDate.changeFormat(item.getAppointmentTime(), FORMAT_ONE, LONG_TIME_FORMAT_TWO);
if (UtilsDate.IsToday(item.getAppointmentTime())) {
String dateMD = UtilsDate.changeFormat(time, FORMAT_ONE, SHORT_DATE_FORMAT);
String dateTime = UtilsDate.changeFormat(time, FORMAT_ONE, LONG_TIME_FORMAT_TWO);
if (UtilsDate.IsToday(time)) {
helper.setText(R.id.item_tody, mContext.getString(R.string.today));
} else if (UtilsDate.IsNextday(item.getAppointmentTime())) {
} else if (UtilsDate.IsNextday(time)) {
helper.setText(R.id.item_tody, mContext.getString(R.string.tomorrow));
} else {
helper.setText(R.id.item_tody, dateMD);
......
......@@ -123,7 +123,7 @@ public class OrderDatailsFragment extends BaseFragment<OrderDetailPresenter> imp
// status 工单状态 1未接单2未预约3已预约4进行中5已完成6已取消7订单关闭
orderStatu = dataBean.getStatus();
if (orderStatu == 1) {
textTwoTwo.setText(mActivity.getString(R.string.message_dayu));
textTwoTwo.setText(mActivity.getString(R.string.not_receive_order));
} else if (orderStatu == 2) {
textTwoTwo.setText(mActivity.getString(R.string.not_appointment_already));
} else if (orderStatu == 3) {
......@@ -148,9 +148,9 @@ public class OrderDatailsFragment extends BaseFragment<OrderDetailPresenter> imp
//customerType 客户类型 1个人客户 2企业客户
customerType = dataBean.getCustomerType();
if (customerType == 1) {
twoTextTwoText.setText("个人客户");
twoTextTwoText.setText(mActivity.getString(R.string.personal_customer));
} else if (customerType == 2) {
twoTextTwoText.setText("企业客户");
twoTextTwoText.setText(mActivity.getString(R.string.enterprise_customer));
}
//customerName 客户名称
twoTextThreeText.setText(dataBean.getCustomerName());
......@@ -166,18 +166,18 @@ public class OrderDatailsFragment extends BaseFragment<OrderDetailPresenter> imp
if (!TextUtils.isEmpty(dataBean.getBrandName())) {
threeTextTwoText.setText(dataBean.getBrandName());
} else {
threeTextTwoText.setText("暂无品牌");
threeTextTwoText.setText(mActivity.getString(R.string.no_branch));
}
if (!TextUtils.isEmpty(dataBean.getProductModel())) {
threeTextThreeText.setText(dataBean.getProductModel());
} else {
threeTextThreeText.setText("暂无型号");
threeTextThreeText.setText(mActivity.getString(R.string.no_model));
}
repairType = dataBean.getRepairType();
if (repairType == 1) {
threeTextFiveText.setText("保内");
threeTextFiveText.setText(mActivity.getString(R.string.honai));
} else if (repairType == 2) {
threeTextFiveText.setText("保外");
threeTextFiveText.setText(mActivity.getString(R.string.warranty));
}
if (!TextUtils.isEmpty(dataBean.getSn())) {
mSNTv.setText(dataBean.getSn());
......@@ -188,37 +188,37 @@ public class OrderDatailsFragment extends BaseFragment<OrderDetailPresenter> imp
if (isPay.equals("2") || isPay.equals("2.0")) {
totalPrice = dataBean.getTotalPrice() + "";
if (!TextUtils.isEmpty(totalPrice)) {
fourTextOneText.setText(totalPrice + "元");
fourTextOneText.setText(totalPrice + mActivity.getString(R.string.money));
}
doorPrice = dataBean.getDoorPrice() + "";
if ("null".equals(doorPrice)) {
fourTextTwoText.setText("0 元");
if (TextUtils.isEmpty(doorPrice)) {
fourTextTwoText.setText(mActivity.getString(R.string.zero_money));
} else {
fourTextTwoText.setText(doorPrice + "元");
fourTextTwoText.setText(doorPrice + mActivity.getString(R.string.money));
}
servicePrice = dataBean.getServicePrice() + "";
if ("null".equals(servicePrice)) {
fourTextFourText.setText("0 元");
if (TextUtils.isEmpty(servicePrice)) {
fourTextFourText.setText(mActivity.getString(R.string.zero_money));
} else {
fourTextFourText.setText(servicePrice + "元");
fourTextFourText.setText(servicePrice + mActivity.getString(R.string.money));
}
materialCost = dataBean.getMaterialCost() + "";
if ("null".equals(materialCost)) {
fourTextSixText.setText("0 元");
if (TextUtils.isEmpty(materialCost)) {
fourTextSixText.setText(mActivity.getString(R.string.zero_money));
} else {
fourTextSixText.setText(materialCost + "元");
fourTextSixText.setText(materialCost + mActivity.getString(R.string.money));
}
otherPrice = dataBean.getOtherPrice() + "";
if ("null".equals(otherPrice)) {
fourTextEightText.setText("0 元");
if (TextUtils.isEmpty(otherPrice)) {
fourTextEightText.setText(mActivity.getString(R.string.zero_money));
} else {
fourTextEightText.setText(otherPrice + "元");
fourTextEightText.setText(otherPrice + mActivity.getString(R.string.money));
}
comment = (String) dataBean.getDoorPriceComment();
if (TextUtils.isEmpty(comment)) {
fourTextNineText.setText("暂无备注");
fourTextNineText.setText(mActivity.getString(R.string.remarks));
} else {
fourTextNineText.setText(comment);
}
......@@ -248,11 +248,11 @@ public class OrderDatailsFragment extends BaseFragment<OrderDetailPresenter> imp
case R.id.tv_info_detail_more:
if (mFlag) {
mFlag = false;
mInfoMoreTv.setText("收起");
mInfoMoreTv.setText(mActivity.getString(R.string.stop));
mInfoDetail.setMaxLines(30);
} else {
mFlag = true;
mInfoMoreTv.setText("查看更多");
mInfoMoreTv.setText(mActivity.getString(R.string.look_more));
mInfoDetail.setMaxLines(2);
}
break;
......
......@@ -15,7 +15,6 @@ import com.dayu.bigfish.bean.Order;
import com.dayu.bigfish.bean.event.OrderState;
import com.dayu.bigfish.bean.event.RefreshServe;
import com.dayu.bigfish.bean.event.RefreshTab;
import com.dayu.bigfish.bean.event.RxBus;
import com.dayu.bigfish.presenter.serverorder.ServerOrderPresenter;
import com.dayu.bigfish.presenter.serverorder.ServerorderContract;
import com.dayu.bigfish.ui.OrderDetailsActivity;
......@@ -31,7 +30,6 @@ import java.util.ArrayList;
import java.util.List;
import butterknife.BindView;
import io.reactivex.android.schedulers.AndroidSchedulers;
import static com.dayu.bigfish.ui.fragment.HomeOrderFragment.ORDER_FINISH;
import static com.dayu.bigfish.ui.fragment.HomeOrderFragment.ORDER_NOCONTACT_FINISH;
......@@ -81,11 +79,6 @@ public class OrderSecondTabFragment extends BaseFragment<ServerOrderPresenter> i
}
public void initListener() {
mDisposable.add(RxBus.getDefault().toObservable(OrderState.class).observeOn(AndroidSchedulers.mainThread())
.observeOn(AndroidSchedulers.mainThread())
.subscribe(orderState -> {
}));
mAdapter.setOnItemClickListener((adapter, view, position) -> {
Order order = (Order) adapter.getItem(position);
Intent intent = new Intent(mActivity, OrderDetailsActivity.class);
......@@ -109,6 +102,7 @@ public class OrderSecondTabFragment extends BaseFragment<ServerOrderPresenter> i
if (event.getState() == ORDER_YUYUE) {
order.setSubStatus(1);
order.setStatus(3);
order.setConfirmDoorTime(event.getTime());
} else if (event.getState() == ORDER_FINISH) {
order.setSubStatus(6);
order.setStatus(4);
......
......@@ -16,7 +16,6 @@ public class LocationUtils {
public static AMapLocationClientOption mLocationOption = null;
public static AMapLocation sLocation = null;
private static boolean flag = true;
private static int count;
/**
* @param context
......@@ -34,6 +33,7 @@ public class LocationUtils {
// mLocationOption.setInterval(2000);
mLocationOption.setOnceLocation(true);
mLocationOption.setOnceLocationLatest(true);
mLocationOption.setHttpTimeOut(5000);
// 设置定位参数、、
mlocationClient.setLocationOption(mLocationOption);
// 此方法为每隔固定时间会发起一次定位请求,为了减少电量消耗或网络流量消耗,
......@@ -71,7 +71,6 @@ public class LocationUtils {
* @Description: 获取位置,重新发起获取位置请求
*/
public static void getCurrentLocation(final MyLocationListener listener) {
count = 3;
if (mlocationClient == null) {
return;
}
......@@ -87,14 +86,11 @@ public class LocationUtils {
mlocationClient.stopLocation();
sLocation = location;
listener.result(location);
count = 10000;
} else if ((location == null)) {
if (count <= 0) {
mlocationClient.stopLocation();
listener.result(location);
}
}
}
});
// 启动定位
mlocationClient.startLocation();
......
......@@ -35,6 +35,9 @@ public class UtilsDate {
// 格式:年-月-日
public static final String LONG_DATE_FORMAT = "yyyy-MM-dd";
// 格式:年月日
public static final String LONG_DATE = "yyyy年MM月dd日";
// 格式:月-日
public static final String SHORT_DATE_FORMAT = "MM-dd";
......
......@@ -71,6 +71,7 @@ public class HxManager {
//收到消息
for (EMMessage message : messages) {
String messagebody = message.getBody().toString();
String content = messagebody.substring(5, messagebody.length() - 1);
Gson gson = new Gson();
Map<String, Object> map = message.ext();
String customJson = (String) map.get("customJson");
......@@ -79,12 +80,6 @@ public class HxManager {
String jsonStr = gson.toJson(map);
InformBean info = gson.fromJson(jsonStr, InformBean.class);
info.setCustomJson(customJsonBean);
String title = "";
if (info.getCategory() == 1) {
title = mContext.getString(R.string.message_system);
} else if (info.getCategory() == 2) {
title = mContext.getString(R.string.message_dayu);
}
Intent intent = new Intent(mContext, MainActivity.class);
intent.putExtra(Constants.MESSAGE_INFO, info);
PendingIntent pi = PendingIntent.getActivity(mContext,
......@@ -98,9 +93,9 @@ public class HxManager {
// 设置通知的图标
.setSmallIcon(R.mipmap.logo)
// 设置通知的标题
.setContentTitle(title)
.setContentTitle(info.getTitle())
// 设置通知的内容
.setContentText(messagebody)
.setContentText(content)
// 设置使用系统默认的声音、LED
.setDefaults(
Notification.DEFAULT_LIGHTS
......
......@@ -56,7 +56,7 @@
android:layout_marginTop="@dimen/dp_50"
android:background="@drawable/btn_login_selector"
android:gravity="center"
android:text="提交"
android:text="@string/submit"
android:textColor="@color/cl_white"
android:textSize="@dimen/sp_15"
/>
......
......@@ -15,16 +15,4 @@
android:background="@mipmap/bg_splash"
/>
<TextView
android:id="@+id/start_pager_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:layout_centerHorizontal="true"
android:layout_marginBottom="30dp"
android:text="@string/tv_start_page_text"
android:textColor="#8a8a8a"
android:textSize="@dimen/sp_1"
android:visibility="visible"
/>
</RelativeLayout>
......@@ -115,7 +115,7 @@
android:layout_below="@+id/linear"
android:layout_centerInParent="true"
android:layout_marginTop="3dp"
android:text="收不到短信?试试语音验证"
android:text="@string/voice_code_notice"
android:textColor="@color/cl_receiving_order_item_data"
android:textSize="12sp"
/>
......
......@@ -44,7 +44,7 @@
android:drawablePadding="2dp"
android:drawableTop="@drawable/tab_first_selector"
android:gravity="center"
android:text="日程"
android:text="@string/schedule"
android:textColor="#585858"
android:textSize="10sp"
/>
......@@ -58,7 +58,7 @@
android:drawablePadding="2dp"
android:drawableTop="@drawable/tab_second_selector"
android:gravity="center"
android:text="工单"
android:text="@string/order"
android:textColor="#585858"
android:textSize="10sp"
/>
......@@ -86,7 +86,7 @@
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="接单"
android:text="@string/home_receive_order"
android:textColor="@color/white"
android:textSize="10sp"
/>
......@@ -105,7 +105,7 @@
android:layout_height="wrap_content"
android:drawablePadding="2dp"
android:drawableTop="@drawable/tab_third_selector"
android:text="消息"
android:text="@string/message"
android:textColor="#585858"
android:layout_centerInParent="true"
android:textSize="10sp"
......@@ -133,7 +133,7 @@
android:drawablePadding="2dp"
android:drawableTop="@drawable/tab_four_selector"
android:gravity="center"
android:text="我的"
android:text="@string/personal"
android:textColor="#585858"
android:textSize="10sp"
/>
......
......@@ -30,7 +30,6 @@
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="@dimen/dp_30"
android:text="大鱼的环音信"
android:textColor="@color/cl_home_title_text_color"
android:textSize="16sp"
/>
......@@ -69,7 +68,7 @@
android:layout_marginTop="23.3dp"
android:background="@drawable/btn_login_selector"
android:gravity="center"
android:text="查看工单"
android:text="@string/look_order"
android:textColor="@color/cl_white"
android:textSize="14.7sp"
/>
......
......@@ -13,7 +13,7 @@
<TextView
style="@style/text_title"
android:text="处理工单"
android:text="@string/process_order"
/>
<ImageView
......@@ -28,10 +28,10 @@
android:layout_below="@id/title_finish"
android:background="@color/cl_receiving_order_item_data"
android:gravity="center"
android:text="标准操作已完成,点击此处进行查看或修改"
android:text="@string/sop_finish"
android:textColor="@color/white"
android:visibility="gone"
android:textSize="13.3sp"/>
android:textSize="13.3sp"
android:visibility="gone"/>
<ImageView
style="@style/card_line"
......@@ -86,7 +86,7 @@
android:layout_marginStart="22dp"
android:layout_toEndOf="@+id/text_one_text"
android:layout_toRightOf="@+id/text_one_text"
android:text="暂无"
android:text="@string/now_no"
android:textColor="@color/cl_selector_hui"
android:textSize="@dimen/sp_15"/>
</RelativeLayout>
......@@ -123,7 +123,7 @@
android:layout_centerVertical="true"
android:layout_marginLeft="@dimen/dp_21.3"
android:layout_toRightOf="@id/text_two_text"
android:text="暂无"
android:text="@string/now_no"
android:textColor="@color/cl_selector_hui"
android:textSize="@dimen/sp_15"
/>
......@@ -162,7 +162,7 @@
android:layout_centerVertical="true"
android:layout_marginLeft="@dimen/dp_21.3"
android:layout_toRightOf="@id/text_six_text"
android:text="暂无"
android:text="@string/now_no"
android:textColor="@color/cl_selector_hui"
android:textSize="@dimen/sp_15"
/>
......@@ -188,7 +188,7 @@
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/dp_13.3"
android:layout_marginTop="@dimen/dp_27"
android:text="服务记录"
android:text="@string/tv_work_order_five"
android:textColor="@color/cl_home_title_text_color"
android:textSize="@dimen/sp_15"
/>
......@@ -319,7 +319,7 @@
android:layout_alignParentRight="true"
android:layout_centerHorizontal="true"
android:background="@null"
android:hint="请输入上门费用"
android:hint="@string/input_up_door_money"
android:inputType="number"
android:textColor="@color/cl_home_title_text_color"
android:textColorHint="@color/cl_selector_hui"
......@@ -367,7 +367,7 @@
android:layout_alignParentRight="true"
android:layout_centerHorizontal="true"
android:background="@null"
android:hint="请输入服务费用"
android:hint="@string/input_up_money"
android:inputType="number"
android:textColor="@color/cl_home_title_text_color"
android:textColorHint="@color/cl_selector_hui"
......@@ -416,7 +416,7 @@
android:layout_alignParentRight="true"
android:layout_centerHorizontal="true"
android:background="@null"
android:hint="请输入材料费用"
android:hint="@string/input_cailiao_money"
android:inputType="number"
android:textColor="@color/cl_home_title_text_color"
android:textColorHint="@color/cl_selector_hui"
......@@ -464,7 +464,7 @@
android:layout_alignParentRight="true"
android:layout_centerHorizontal="true"
android:background="@null"
android:hint="请输入其他费用"
android:hint="@string/input_other_money"
android:inputType="number"
android:textColor="@color/cl_home_title_text_color"
android:textColorHint="@color/cl_selector_hui"
......@@ -568,7 +568,7 @@
android:layout_marginRight="@dimen/dp_16"
android:layout_marginTop="@dimen/dp_33"
android:background="@mipmap/save_submit"
android:text="提交验收"
android:text="@string/submit_order"
android:textColor="@color/cl_white"
android:textSize="@dimen/sp_13.3"
/>
......
......@@ -15,7 +15,7 @@
<TextView
style="@style/text_title"
android:text="个人中心"
android:text="@string/personal_center"
/>
<ImageView
......@@ -38,6 +38,7 @@
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_alignParentTop="true"
android:scaleType="fitXY"
android:src="@mipmap/person_title_view"/>
<com.dayu.bigfish.ui.views.CircleImageView
......@@ -72,6 +73,7 @@
android:layout_height="wrap_content"
android:layout_below="@id/person_one"
android:layout_marginLeft="109dp"
android:layout_centerHorizontal="true"
android:layout_marginTop="9.3dp"
>
......@@ -114,7 +116,7 @@
android:layout_below="@id/persone_two"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dp"
android:text="0分"
android:text="@string/zero_score"
android:textColor="@color/cl_home_title_text_color"
android:textSize="12sp"
/>
......
......@@ -15,7 +15,7 @@
<TextView
style="@style/text_title"
android:text="设置中心"
android:text="@string/setting_center"
/>
</RelativeLayout>
......@@ -46,7 +46,7 @@
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="13.3dp"
android:text="通知提醒"
android:text="@string/message_notice"
android:textColor="@color/cl_home_title_text_color"
android:textSize="14.7sp"
/>
......@@ -80,7 +80,7 @@
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="13.3dp"
android:text="清理缓存"
android:text="@string/clear_cache"
android:textColor="@color/cl_home_title_text_color"
android:textSize="14.7sp"/>
......@@ -122,7 +122,7 @@
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="13.3dp"
android:text="检测更新"
android:text="@string/check_update"
android:textColor="@color/cl_home_title_text_color"
android:textSize="14.7sp"
/>
......@@ -153,7 +153,7 @@
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="13.3dp"
android:text="客服电话"
android:text="@string/customer_server_mobile"
android:textColor="@color/cl_home_title_text_color"
android:textSize="14.7sp"
/>
......@@ -187,7 +187,7 @@
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="13.3dp"
android:text="关于我们"
android:text="@string/abount_us"
android:textColor="@color/cl_home_title_text_color"
android:textSize="14.7sp"
/>
......@@ -218,7 +218,7 @@
android:layout_height="wrap_content"
android:layout_centerVertical="true"
android:layout_marginLeft="13.3dp"
android:text="问题反馈"
android:text="@string/problem_feedback"
android:textColor="@color/cl_home_title_text_color"
android:textSize="14.7sp"
/>
......
......@@ -108,9 +108,6 @@
<TextView
style="@style/line"
/>
<TextView
style="@style/line"
android:layout_below="@id/time_one"
......@@ -147,6 +144,7 @@
android:maxLength="200"
android:paddingLeft="@dimen/dp_13"
android:paddingTop="@dimen/dp_11"
android:inputType="text"
android:textColor="@color/cl_home_title_text_color"
android:textColorHint="@color/cl_selector_hui"/>
</RelativeLayout>
......
......@@ -50,7 +50,7 @@
android:layout_marginLeft="10dp"
android:layout_toRightOf="@+id/iv"
android:background="@null"
android:hint="搜索客户手机号码"/>
android:hint="@string/find_customer_mobile"/>
<ImageView
android:id="@+id/iv"
......@@ -65,7 +65,7 @@
android:layout_centerVertical="true"
android:layout_marginRight="20dp"
android:gravity="center"
android:text="取消"
android:text="@string/cancle"
android:textColor="@color/cl_black"
android:textSize="@dimen/dp_18"
android:textStyle="bold"/>
......
......@@ -13,7 +13,7 @@
<TextView
style="@style/text_title"
android:text="预览"
android:text="@string/pre_look"
/>
<ImageView
......
......@@ -43,7 +43,6 @@
android:id="@+id/big_message_text_content"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="工单被改派"
android:textSize="@dimen/sp_13.3"
android:textColor="@color/cl_home_title_text_color"
android:layout_alignLeft="@id/big_line_textView"
......@@ -56,7 +55,6 @@
android:layout_height="wrap_content"
android:textSize="@dimen/sp_10"
android:textColor="@color/cl_tab_read"
android:text="未读"
android:layout_alignParentRight="true"
android:layout_centerVertical="true"
android:layout_marginRight="@dimen/dp_21.3"
......
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="300dp"
android:layout_height="166.7dp"
android:background="@drawable/item_shape"
android:orientation="vertical"
>
<TextView
android:id="@+id/dialog_title"
android:layout_width="match_parent"
android:layout_height="126.7dp"
android:gravity="center"
android:lineSpacingExtra="4sp"
android:text="您还没有设置账户"
android:textColor="#3a3a3a"
android:textSize="16sp"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"
>
<TextView
android:id="@+id/dialog_left_btn"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:background="@drawable/btn_grey_react"
android:gravity="center"
android:text="暂不设置"
android:textColor="#8a8a8a"
android:textSize="14.7sp"
/>
<TextView
android:id="@+id/dialog_right_btn"
android:layout_width="0dp"
android:layout_height="40dp"
android:layout_weight="1"
android:background="@drawable/btn_blue_dialog_react"
android:gravity="center"
android:text="前往设置"
android:textColor="#ffffff"
android:textSize="14.7sp"
/>
</LinearLayout>
</LinearLayout>
\ No newline at end of file
......@@ -12,7 +12,7 @@
android:layout_marginTop="12dp"
android:gravity="center_horizontal"
android:padding="12dp"
android:text="提示"
android:text="@string/notice"
android:textColor="#3a3a3a"
android:textSize="16sp"
/>
......
......@@ -25,7 +25,7 @@
android:layout_height="wrap_content"
android:gravity="center"
android:textSize="12sp"
android:text="加载中"
android:text="@string/loading"
android:textColor="#9a9b98"/>
</LinearLayout>
......
......@@ -10,12 +10,16 @@
<TextView
style="@style/text_title"
android:text="日程"
android:text="@string/schedule"
/>
</RelativeLayout>
<ImageView
style="@style/card_line"
/>
<ImageView
android:id="@+id/iv_empty"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
......@@ -29,7 +33,7 @@
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginTop="@dimen/dp_13"
android:text="此功能正在紧张的开发中..."
android:text="@string/on_develop"
android:textColor="@color/cl_home_title_text_color"
android:textSize="11.3sp"
/>
......@@ -38,9 +42,9 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:text="敬请期待!"
android:textColor="#3faafc"
android:layout_marginTop="8.7dp"
android:text="@string/coming_soon"
android:textColor="#3faafc"
android:textSize="13.3sp"
/>
......
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
<ListView
android:id="@+id/message_bigfish_listview"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@color/cl_home_listview_bg"
android:divider="@null"
android:scrollbars="none"
android:background="@color/cl_home_listview_bg"
/>
<RelativeLayout
android:id="@+id/big_message_view"
android:layout_width="wrap_content"
......@@ -17,22 +20,24 @@
android:layout_centerHorizontal="true"
android:layout_centerVertical="true"
>
<ImageView
android:id="@+id/big_image_empty"
android:layout_width="wrap_content"
android:src="@mipmap/yu"
android:layout_height="wrap_content"
android:src="@mipmap/yu"
/>
<TextView
android:id="@+id/big_textView_empty"
android:layout_marginTop="@dimen/dp_17"
android:layout_below="@id/big_image_empty"
android:layout_centerHorizontal="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="暂无通知"
android:textSize="@dimen/sp_13.3"
android:layout_below="@id/big_image_empty"
android:layout_centerHorizontal="true"
android:layout_marginTop="@dimen/dp_17"
android:text="@string/no_notice"
android:textColor="@color/cl_login_clearedittext_hint"
android:textSize="@dimen/sp_13.3"
/>
</RelativeLayout>
</RelativeLayout>
\ No newline at end of file
......@@ -30,7 +30,7 @@
android:layout_height="wrap_content"
android:layout_marginLeft="25.3dp"
android:layout_marginTop="@dimen/dp_16.7"
android:text="预约时间"
android:text="@string/tv_home_tab_one_subscribe_time"
android:textColor="@color/cl_order_item_line_bg"
android:textSize="13.3sp"
android:textStyle="bold"
......
......@@ -30,7 +30,7 @@
android:layout_height="wrap_content"
android:layout_marginLeft="25.3dp"
android:layout_marginTop="@dimen/dp_16.7"
android:text="预约时间"
android:text="@string/tv_home_tab_one_subscribe_time"
android:textColor="#3a3a3a"
android:textSize="13.3sp"
android:textStyle="bold"
......@@ -129,7 +129,6 @@
android:layout_height="wrap_content"
android:layout_marginRight="10dp"
android:layout_marginTop="@dimen/dp_16.7"
android:text="[预约超时]"
android:textColor="@color/cl_tab_read"
android:textSize="@dimen/size_login_hint_text"
android:visibility="visible"
......
......@@ -28,7 +28,7 @@
android:layout_height="wrap_content"
android:layout_marginLeft="25.3dp"
android:layout_marginTop="@dimen/dp_16.7"
android:text="预约时间"
android:text="@string/tv_home_tab_one_subscribe_time"
android:textColor="#3a3a3a"
android:textSize="13.3sp"
android:textStyle="bold"
......@@ -144,7 +144,6 @@
android:layout_marginTop="5dp"
android:ellipsize="end"
android:maxLines="1"
android:text="7*24响应笔记本电脑无配件fajfjafljfffaf"
android:textColor="@color/cl_home_title_text_color"
android:textSize="@dimen/size_login_hint_text"
android:textStyle="bold"
......
......@@ -22,7 +22,7 @@
android:id="@+id/item_tv_accout_source"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="工单补贴"
android:text="@string/order_subsidy"
android:textColor="#3a3a3a"
android:textSize="16sp"
/>
......
......@@ -73,7 +73,7 @@
android:layout_centerVertical="true"
android:layout_marginRight="@dimen/dp_21.3"
android:layout_toRightOf="@id/message_text_content"
android:text="未读"
android:text="@string/not_read"
android:textColor="@color/cl_tab_read"
android:textSize="@dimen/sp_10"
/>
......
......@@ -25,7 +25,7 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:text="加载中..."
android:text="@string/loading"
android:textColor="#9a9b98"
android:textSize="12sp"/>
</LinearLayout>
\ No newline at end of file
......@@ -79,6 +79,10 @@
<string name="tv_order_cailiao_feiyong">材料费</string>
<string name="tv_order_other_feiyong">其他费</string>
<string name="tv_order_other">请输入上门费用备注信息</string>
<string name="input_up_door_money">请输入上门费用</string>
<string name="input_up_money">请输入服务费用</string>
<string name="input_cailiao_money">请输入材料费用</string>
<string name="input_other_money">请输入其他费用</string>
<string name="tv_save_back">保存</string>
<string name="tv_idea">反馈意见</string>
<string name="tv_idea_text_hint">请输入您的宝贵意见</string>
......@@ -110,6 +114,7 @@
<!--登录-->
<string name="login_sms_success">验证码已发送,请注意查收</string>
<string name="login_voice_sms_success">语音验证码已发送,请注意查收</string>
<string name="phone_num_not_null">手机号不能为空!</string>
<string name="please_input_phone_right">请输入正确的手机号!</string>
<string name="phone_sms_not_null">手机号或验证码不能为空!</string>
......@@ -117,12 +122,22 @@
<string name="no_permission">没有此权限将无法使用本app,请在设置中打开权限!</string>
<string name="login_state_no">登录状态已失效,请重新登录!</string>
<string name="login_again">重新登录</string>
<string name="please_open__permission">没有此权限</string>
<string name="please_open__permission">没有此权限将无法使用此app,请允许权限打开。</string>
<string name="cancle">取消</string>
<string name="go_setting">前往设置</string>
<string name="login_agreement">登录即表示同意此</string>
<string name="title_agreement">用户协议</string>
<string name="agreement_detail">《用户协议》</string>
<string name="login_faile">登录失败</string>
<string name="send_code_faile">发送验证码失败</string>
<string name="voice_code_notice">收不到短信?试试语音验证</string>
<string name="schedule">日程</string>
<string name="order">工单</string>
<string name="home_receive_order">接单</string>
<string name="message">消息</string>
<string name="personal">我的</string>
<string name="on_develop">此功能正在紧张的开发中...</string>
<string name="coming_soon">敬请期待!</string>
<!--工单-->
......@@ -171,10 +186,29 @@
<string name="remarks">暂无备注</string>
<string name="stop">收起</string>
<string name="look_more">查看更多</string>
<string name="no_record">暂无记录</string>
<string name="order_detail">工单详情</string>
<string name="server_record">服务记录</string>
<string name="history_order">历史工单</string>
<string name="order_commite_success">数据提交成功</string>
<string name="receive_order_success">接单成功</string>
<string name="choose_file">文件选择</string>
<string name="choose_pic">图片选择</string>
<string name="look_order">查看工单</string>
<string name="sop_finish">标准操作已完成,点击此处进行查看或修改</string>
<string name="now_no">暂无</string>
<string name="submit_order">提交验收</string>
<string name="find_customer_mobile">搜索客户手机号</string>
<string name="pre_look">预览</string>
<string name="loading">加载中</string>
<string name="order_subsidy">工单补贴</string>
<!--消息-->
<string name="message_system">系统通知</string>
<string name="message_dayu">大鱼通知</string>
<string name="message_dayu_detail">大鱼系统通知详情</string>
<string name="no_notice">暂无通知</string>
<string name="not_read">未读</string>
<!--我的-->
<string name="man"></string>
<string name="female"></string>
......@@ -184,6 +218,56 @@
<string name="not_set_account">您还没有设置账户</string>
<string name="not_set_up">暂不设置</string>
<string name="go_set_up">前往设置</string>
<string name="money"></string>
<string name="zero_money">0 元</string>
<string name="input_feedback">请输入反馈意见...</string>
<string name="commite_success">提交成功</string>
<string name="on_download">正在下载中,请稍后...</string>
<string name="download_faile">下载失败</string>
<string name="have_new_version">有新版本</string>
<string name="next_again">下次再说</string>
<string name="need_upglude">立刻升级</string>
<string name="start_download">开始下载</string>
<string name="new_version">版本更新</string>
<string name="sure_clear_data">确定要删除所有缓存数据吗?</string>
<string name="on_clear">正在清理...</string>
<string name="clear_success">清理完成</string>
<string name="newversion_code">新版本号为:</string>
<string name="is_newversion">当前为最新版本,无需更新</string>
<string name="subcribe_time_success">预约时间成功,请移至带服务列表查看</string>
<string name="input_day_first">请先输入日期</string>
<string name="input_right_time">请选择合法的时间</string>
<string name="input_subcribe_time">请输入预约时间</string>
<string name="input_subcribe_info">请输入预约信息</string>
<string name="input_day_time">请输入日期和时间</string>
<string name="on_commite_data">正在提交数据...</string>
<string name="no_emoij">禁止输入表情</string>
<string name="receive_list">待接单列表</string>
<string name="submit">提交</string>
<string name="personal_center">个人中心</string>
<string name="zero_score">0分</string>
<string name="setting_center">设置中心</string>
<string name="message_notice">通知提醒</string>
<string name="clear_cache">清理缓存</string>
<string name="check_update">检测更新</string>
<string name="customer_server_mobile">客服电话</string>
<string name="abount_us">关于我们</string>
<string name="problem_feedback">问题反馈</string>
<!--error-->
<string name="error_token">token失效</string>
<string name="error_time_out">连接服务器超时</string>
<string name="error_connect">连接服务器失败</string>
<string name="error_internet">网络错误</string>
<string name="error_parse">解析错误</string>
<string name="error_ssl">证书验证错误</string>
<string name="error_connect_time">连接超时</string>
<string name="error_unknow">未知错误</string>
<string name="not_engineer">该账号尚不是工程师</string>
<string name="account_frozen">该账号冻结</string>
<string name="agreement">
特别提示:\n
......
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