Commit da9b1214 authored by jianglx's avatar jianglx

修改提前租车天数为接口获取;获取App在其他应用上层运行权限 移动至客服列表界面

parent 0398b4d7
......@@ -8,8 +8,8 @@ android {
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
flavorDimensions "default"
versionCode 154
versionName "1.5.4"
versionCode 150
versionName "1.5.0"
multiDexEnabled true
......@@ -79,6 +79,9 @@ android {
if (variant.buildType.name == 'release') {
def productVersion = "Rv" + releaseTime() + "V" + defaultConfig.versionName + "_Release_" + productFlavors[0].name + ".apk";
outputFileName = productVersion
} else if(variant.buildType.name == 'debug'){
def productVersion = "Rv" + releaseTime() + "V" + defaultConfig.versionName + "_Debug_" + productFlavors[0].name + ".apk";
outputFileName = productVersion
}
}
}
......
package com.xxfc.rv;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.Notification;
import android.content.ComponentName;
import android.content.Context;
......@@ -63,6 +62,7 @@ import com.rv.im.db.table.ChatMessage;
import com.rv.im.view.TitleTextWindow;
import com.rv.im.xmpp.ListenerManager;
import com.rv.im.xmpp.listener.ChatMessageListener;
import com.rv.plugin.calendar.bean.PreRentDaysBean;
import com.rv.rvmine.MineFragment;
import com.rv.share.WebViewActivity;
import com.rv.share.view.PromotionDialog;
......@@ -164,30 +164,8 @@ public class MainActivity extends BaseActivity<CommonPresenter> implements DownL
EventBus.getDefault().register(this);
DownListenerManager.getInstance().addDownListener(this);
ListenerManager.getInstance().addChatMessageListener(this);
checkOverlayPermission();
}
/********
* 检查滴房车是否能在其他应用上层显示
*/
private void checkOverlayPermission() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
if (!Settings.canDrawOverlays(this)) {
new AlertDialog.Builder(this).setTitle("提示")
.setMessage("滴房车正常运行需要在其他应用上层显示的权限")
.setNegativeButton("下次再说", (dialogInterface, i) -> {
dialogInterface.dismiss();
}).setPositiveButton("好的", (dialogInterface, i) -> {
Intent intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION);
intent.setData(Uri.parse("package:" + getPackageName()));
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}).setCancelable(false).show();
}
}
}
@Override
protected void initView(Bundle savedInstanceState, TitleView titleView, Intent intent) {
updateAppUtils = UpdateAppUtils.from(MainActivity.this);
......@@ -247,8 +225,10 @@ public class MainActivity extends BaseActivity<CommonPresenter> implements DownL
getActivityPopup();
checkVersion();
checkToken();
getPreRentDays();
}
@Override
public void onShowResult(int requestType, BaseBean result) {
switch (requestType) {
......@@ -305,6 +285,21 @@ public class MainActivity extends BaseActivity<CommonPresenter> implements DownL
initIm();
}
break;
case 6:
PreRentDaysBean daysBean = (PreRentDaysBean) result;
if (daysBean != null && daysBean.isRel() && daysBean.getData() != null &&
daysBean.getData().size() > 0) {
PreRentDaysBean.Data data = daysBean.getData().get(0);
if (data != null) {
try {
int value = Integer.parseInt(data.getParams());
AppCookie.save(mActivity, AppCookie.KEY_PRERENT_DAYS, value);
} catch (Exception e) {
showToast("传入的预租车天数格式有误");
}
}
}
break;
default:
break;
}
......@@ -357,6 +352,13 @@ public class MainActivity extends BaseActivity<CommonPresenter> implements DownL
}
}
/*****
* 获取提前租车天数
*/
private void getPreRentDays() {
mPresenter.getData(6, ApiConfig.HTTP_URL_PRERENT_DAYS, PreRentDaysBean.class, false);
}
private void postActivityPopup(int id) {
if (!TextUtils.isEmpty(OkGoUtil.getToken())) {
Map<String, Object> map = new HashMap<>();
......
......@@ -5,10 +5,15 @@ import android.content.SharedPreferences;
import java.lang.ref.WeakReference;
/*******
* 应用级别的cookie,不会随账号的切换而更改
*/
public class AppCookie {
private final static String COOKIE_FILE = "app_cookie";
public final static String KEY_PRERENT_DAYS = "key_prerent_days" ; // 提前租车天数的key
private static SharedPreferences preferences;
private static WeakReference<Context> weakReference = null;
......
......@@ -161,4 +161,6 @@ public class ApiConfig {
* 订单详情
*/
public static String HTTP_URL_PRICE_BASEORDER = RvFrameConfig.HOST + "/api/order/baseOrder/";
public static String HTTP_URL_PRERENT_DAYS = RvFrameConfig.HOST + "/api/app/cofig/app/unauth/types?types=999";
}
......@@ -1255,11 +1255,12 @@ public class HomeFragment extends BaseFragment<HomePresenter> implements Observa
//只是layout背景透明(仿知乎滑动效果)
llItemSearch.setBackground(getResources().getDrawable(R.drawable.shape_rv_textview_home_translucent));
travelCityText.setTextColor(getResources().getColor(R.color.colorWrite));
if(hasNewMessage){
travelServerImage.setImageResource(R.drawable.rv_rentingcar_icon_service_white_news);
}else {
travelServerImage.setImageResource(R.drawable.rv_rentingcar_icon_service_white);
}
// if(hasNewMessage){
// travelServerImage.setImageResource(R.drawable.rv_rentingcar_icon_service_white_news);
// }else {
// travelServerImage.setImageResource(R.drawable.rv_rentingcar_icon_service_white);
// }
travelServerImage.setImageResource(R.drawable.rv_rentingcar_icon_service_white);
ivTravelCityTextHint.setImageResource(R.drawable.rv_common_icon_up_arrow2);
ivSearchInputHint.setImageResource(R.drawable.rv_common_icon_search2);
searchInput.setHintTextColor(getResources().getColor(R.color.colorWrite));
......@@ -1271,11 +1272,12 @@ public class HomeFragment extends BaseFragment<HomePresenter> implements Observa
} else {
llItemTop.setVisibility(View.VISIBLE);
llItemSearch.setBackground(getResources().getDrawable(R.drawable.shape_rv_textview_home_search));
if(hasNewMessage){
travelServerImage.setImageResource(R.drawable.rentingcar_icon_service_orangeorange_news);
}else{
travelServerImage.setImageResource(R.drawable.rentingcar_icon_service_orangeorange);
}
// if(hasNewMessage){
// travelServerImage.setImageResource(R.drawable.rentingcar_icon_service_orangeorange_news);
// }else{
// travelServerImage.setImageResource(R.drawable.rentingcar_icon_service_orangeorange);
// }
travelServerImage.setImageResource(R.drawable.rentingcar_icon_service_orangeorange);
travelCityText.setTextColor(getResources().getColor(R.color.colorMain));
ivTravelCityTextHint.setImageResource(R.drawable.rv_common_icon_up_arrow);
ivSearchInputHint.setImageResource(R.drawable.rv_common_icon_search);
......@@ -1401,12 +1403,12 @@ public class HomeFragment extends BaseFragment<HomePresenter> implements Observa
* 新消息
*/
public void newsComing() {
hasNewMessage = true ;
if (llItemTop.getVisibility() != View.VISIBLE) {
travelServerImage.setImageResource(R.drawable.rv_rentingcar_icon_service_white_news);
} else {
travelServerImage.setImageResource(R.drawable.rentingcar_icon_service_orangeorange_news);
}
// hasNewMessage = true ;
// if (llItemTop.getVisibility() != View.VISIBLE) {
// travelServerImage.setImageResource(R.drawable.rv_rentingcar_icon_service_white_news);
// } else {
// travelServerImage.setImageResource(R.drawable.rentingcar_icon_service_orangeorange_news);
// }
}
@Override
......
......@@ -440,8 +440,8 @@ public class TourismFragment extends BaseFragment<TourismPresenter> implements S
}
public void newsComing() {
hasNewMessage = true;
ImgTravelServer.setImageResource(R.drawable.common_journey_service_gray_news);
// hasNewMessage = true;
// ImgTravelServer.setImageResource(R.drawable.common_journey_service_gray_news);
}
......
......@@ -15,6 +15,8 @@ import com.ruiwenliu.wrapper.base.BaseBean;
import com.ruiwenliu.wrapper.base.BaseStatusActivity;
import com.ruiwenliu.wrapper.weight.TitleView;
import com.rv.component.control.WheelView;
import com.rv.component.utils.AppCookie;
import com.rv.component.utils.Cookie;
import com.rv.component.utils.DateUtils;
import com.rv.component.utils.MyUtils;
import com.rv.plugin.calendar.bean.DateInfo;
......@@ -57,7 +59,7 @@ public class CalendarActivity extends BaseStatusActivity<CalendarPresenter> {
/**
* 最大的日历期限
*/
private final int MAX_SPAN = 30;
private int MAX_SPAN;
private int spanIndex = 1;
......@@ -74,7 +76,6 @@ public class CalendarActivity extends BaseStatusActivity<CalendarPresenter> {
public static Intent getIntent(Context context) {
return new Intent(context, CalendarActivity.class);
}
@Override
......@@ -82,7 +83,7 @@ public class CalendarActivity extends BaseStatusActivity<CalendarPresenter> {
super.onCreate(savedInstanceState);
ButterKnife.bind(this);
context = this;
MAX_SPAN = AppCookie.getIntValue(context,AppCookie.KEY_PRERENT_DAYS,30);
begDay = DateUtils.formatDate16(begDate);
begTime = DateUtils.formatDate17(begDate);
endDay = DateUtils.formatDate16(endDate);
......
package com.rv.plugin.calendar.bean;
import android.text.Html;
import com.ruiwenliu.wrapper.base.BaseBean;
import java.util.List;
public class PreRentDaysBean extends BaseBean {
private boolean rel;
private List<Data> data;
public boolean isRel() {
return rel;
}
public void setRel(boolean rel) {
this.rel = rel;
}
public List<Data> getData() {
return data;
}
public void setData(List<Data> data) {
this.data = data;
}
public class Data {
private int id;
private int type;
private String value;
private long crtTime;
private long updTime;
private int isDel;
private String title;
private String params ;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public int getType() {
return type;
}
public void setType(int type) {
this.type = type;
}
public String getValue() {
return value;
}
public void setValue(String value) {
this.value = Html.fromHtml(value).toString();
}
public long getCrtTime() {
return crtTime;
}
public void setCrtTime(long crtTime) {
this.crtTime = crtTime;
}
public long getUpdTime() {
return updTime;
}
public void setUpdTime(long updTime) {
this.updTime = updTime;
}
public int getIsDel() {
return isDel;
}
public void setIsDel(int isDel) {
this.isDel = isDel;
}
public String getTitle() {
return title;
}
public void setTitle(String title) {
this.title = title;
}
public String getParams() {
return params;
}
public void setParams(String params) {
this.params = params;
}
}
}
package com.xxrv.coupon.fragment;
import android.content.ComponentName;
import android.content.Intent;
import android.os.Bundle;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
......@@ -21,6 +24,7 @@ import com.yuyife.okgo.OkGoUtil;
import java.util.LinkedHashMap;
import java.util.Map;
import butterknife.BindView;
/**
......@@ -36,7 +40,7 @@ public class WaitCouponFragment extends BaseFragment<CouponAllPresenter> impleme
WaitCouponAdapter mAdapter;
public static WaitCouponFragment getInstance(int type) {
Bundle bundl = new Bundle();
bundl.putInt("type", type);
......@@ -63,14 +67,16 @@ public class WaitCouponFragment extends BaseFragment<CouponAllPresenter> impleme
@Override
public void onItemClick(BaseQuickAdapter adapter, View view, int position) {
CouponBean.DataBean bean = (CouponBean.DataBean) adapter.getItem(position);
if ("0".equals(bean.getChannel()) || "1".equals(bean.getChannel())){ //0-全平台;1-租车;2-旅游;3-营地
_mActivity.finish();
SwitchFragment.sChangeFragment.changge(0);
}else if ("2".equals(bean.getChannel())){
_mActivity.finish();
SwitchFragment.sChangeFragment.changge(1);
if ("0".equals(bean.getChannel()) || "1".equals(bean.getChannel())) { //0-全平台;1-租车;2-旅游;3-营地
Intent intent = new Intent();
intent.setComponent(new ComponentName(getContext(), "com.xxfc.rv.MainActivity"));
intent.putExtra("to", "home");
startActivity(intent);
} else if ("2".equals(bean.getChannel())) {
Intent intent = new Intent();
intent.setComponent(new ComponentName(getContext(), "com.xxfc.rv.MainActivity"));
intent.putExtra("to", "travel");
startActivity(intent);
}
}
});
......@@ -91,7 +97,7 @@ public class WaitCouponFragment extends BaseFragment<CouponAllPresenter> impleme
headMap.put("Authorization", OkGoUtil.getToken());
Map<String, Object> map = new LinkedHashMap<>();
map.put("type", "0");
mPresenter.getData(RvFrameConfig.HOST,0, CouponApi.HTTP_URL_COUPON_LIST, CouponBean.class, map,headMap,false);
mPresenter.getData(RvFrameConfig.HOST, 0, CouponApi.HTTP_URL_COUPON_LIST, CouponBean.class, map, headMap, false);
}
@Override
......@@ -101,11 +107,11 @@ public class WaitCouponFragment extends BaseFragment<CouponAllPresenter> impleme
}
private void processData(CouponBean bean) {
if (bean !=null && bean.getData()!=null && bean.getData().size() >0) {
if (bean != null && bean.getData() != null && bean.getData().size() > 0) {
mAdapter.getData().clear();
mAdapter.addData(bean.getData());
mAdapter.notifyDataSetChanged();
}else {
} else {
mAdapter.setEmptyView(getEmptyView(rvContent, -1, "暂无优惠券"));
mAdapter.notifyDataSetChanged();
}
......
package com.rv.im;
import android.app.AlertDialog;
import android.content.Intent;
import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.provider.Settings;
import android.support.annotation.Nullable;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
......@@ -88,6 +92,7 @@ public class CustomerListActivity extends BaseStatusActivity<CommonPresenter> im
refreshLayout.setHeaderView(new SimpleRefreshView(this));
refreshLayout.setOnSimpleRefreshListener(this);
recyclerView.setAdapter(adapter);
checkOverlayPermission();
}
@Override
......@@ -96,6 +101,26 @@ public class CustomerListActivity extends BaseStatusActivity<CommonPresenter> im
getCustomerList();
}
/********
* 检查滴房车是否能在其他应用上层显示
*/
private void checkOverlayPermission() {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
if (!Settings.canDrawOverlays(this)) {
new AlertDialog.Builder(this).setTitle("提示")
.setMessage("允许滴房车在其他应用上层显示,实时获知新消息")
.setNegativeButton("下次再说", (dialogInterface, i) -> {
dialogInterface.dismiss();
}).setPositiveButton("好的", (dialogInterface, i) -> {
Intent intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION);
intent.setData(Uri.parse("package:" + getPackageName()));
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}).setCancelable(false).show();
}
}
}
/******
* 获取客服列表
*/
......
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 to comment