Skip to content
Toggle navigation
P
Projects
G
Groups
S
Snippets
Help
android
/
dayu
This project
Loading...
Sign in
Toggle navigation
Go to a project
Project
Repository
Issues
0
Merge Requests
0
Pipelines
Wiki
Snippets
Members
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Commit
bd75dedd
authored
Jan 08, 2020
by
mReturn
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
操作指南
parent
a2504a15
Hide whitespace changes
Inline
Side-by-side
Showing
25 changed files
with
596 additions
and
57 deletions
baseSDK/build.gradle
baseSDK/src/main/java/com/dayu/common/Constants.java
baseSDK/src/main/java/com/dayu/utils/CommonUtils.java
baseSDK/src/main/java/com/dayu/utils/GlideImageLoader.java
baseSDK/src/main/java/com/dayu/widgets/TextDialog.java
baseSDK/src/main/res/drawable/btn_white_react.xml
baseSDK/src/main/res/layout/dialog_text.xml
baseSDK/src/main/res/layout/item_dialog_text.xml
baseSDK/src/main/res/values/strings.xml
orderCenter/src/main/java/com/dayu/order/api/OrderApiFactory.java
orderCenter/src/main/java/com/dayu/order/api/OrderService.java
orderCenter/src/main/java/com/dayu/order/api/protocol/OperateInfo.java
orderCenter/src/main/java/com/dayu/order/common/OperatePhoneEvent.java
orderCenter/src/main/java/com/dayu/order/presenter/operate/OperateConstract.java
orderCenter/src/main/java/com/dayu/order/ui/activity/OrderDetailsActivity.java
orderCenter/src/main/java/com/dayu/order/ui/fragment/MultiOrderDetailFragment.java
orderCenter/src/main/java/com/dayu/order/ui/fragment/OperateDetailFragment.java
orderCenter/src/main/java/com/dayu/order/ui/fragment/OrderOperateFragment.java
orderCenter/src/main/release/AndroidManifest.xml
orderCenter/src/main/res/drawable-xxhdpi/icon_next_operate.png
orderCenter/src/main/res/drawable-xxhdpi/icon_pre_operate.png
orderCenter/src/main/res/layout/fragment_operate_detail.xml
orderCenter/src/main/res/layout/fragment_order_operate.xml
orderCenter/src/main/res/layout/item_operate_comment.xml
orderCenter/src/main/res/layout/item_operate_sop.xml
baseSDK/build.gradle
View file @
bd75dedd
...
...
@@ -70,4 +70,7 @@ dependencies {
api
project
(
':locationComponent'
)
api
project
(
':pickerview'
)
api
'cn.jzvd:jiaozivideoplayer:7.1.0'
api
'com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.35'
}
baseSDK/src/main/java/com/dayu/common/Constants.java
View file @
bd75dedd
...
...
@@ -136,7 +136,9 @@ public class Constants {
public
final
static
int
MANAGER_NOSITE_ENGINEER
=
4
;
public
final
static
String
BUNDLE
=
"bundle"
;
public
final
static
String
ID
=
"id"
;
public
final
static
String
IDS
=
"ids"
;
public
final
static
String
OPERATE_DETAIL
=
"operate_detail"
;
//订单详情
public
final
static
String
ORDER_DETAIL
=
"order_detail"
;
//数据返回失败标识
...
...
baseSDK/src/main/java/com/dayu/utils/CommonUtils.java
0 → 100644
View file @
bd75dedd
package
com
.
dayu
.
utils
;
import
android.app.Activity
;
import
android.content.Context
;
import
android.content.Intent
;
import
android.net.Uri
;
import
android.view.View
;
import
android.view.inputmethod.InputMethodManager
;
/**
* Created by mReturn
* on 2020\1\8 0008.
*/
public
class
CommonUtils
{
/**
* 隐藏软件盘
*
* @param activity
*/
public
static
void
hideSoftInput
(
Activity
activity
)
{
((
InputMethodManager
)
activity
.
getSystemService
(
Context
.
INPUT_METHOD_SERVICE
)).
hideSoftInputFromWindow
(
activity
.
getCurrentFocus
().
getWindowToken
(),
InputMethodManager
.
HIDE_NOT_ALWAYS
);
}
/**
* 隐藏软件盘
*
* @param activity
*/
public
static
void
hideSoftInput
(
Activity
activity
,
View
view
)
{
InputMethodManager
imm
=
(
InputMethodManager
)
activity
.
getSystemService
(
Context
.
INPUT_METHOD_SERVICE
);
imm
.
hideSoftInputFromWindow
(
view
.
getWindowToken
(),
0
);
//强制隐藏键盘
}
/**
* 显示软件盘
*
* @param activity
*/
public
static
void
ShowSoftInput
(
Activity
activity
,
View
view
)
{
InputMethodManager
imm
=
(
InputMethodManager
)
activity
.
getSystemService
(
Context
.
INPUT_METHOD_SERVICE
);
imm
.
showSoftInput
(
view
,
InputMethodManager
.
SHOW_FORCED
);
}
/**
* 拨打电话(跳转到拨号界面,用户手动点击拨打)
*/
public
static
void
dialPhone
(
Context
context
,
String
phoneNum
)
{
Intent
intent
=
new
Intent
(
Intent
.
ACTION_DIAL
);
Uri
data
=
Uri
.
parse
(
"tel:"
+
phoneNum
);
intent
.
setData
(
data
);
context
.
startActivity
(
intent
);
}
}
baseSDK/src/main/java/com/dayu/utils/GlideImageLoader.java
View file @
bd75dedd
...
...
@@ -19,6 +19,7 @@ import java.io.ByteArrayOutputStream;
import
java.io.File
;
import
java.io.FileOutputStream
;
import
java.io.IOException
;
import
java.net.URL
;
import
java.text.SimpleDateFormat
;
import
java.util.Date
;
...
...
@@ -35,7 +36,6 @@ public class GlideImageLoader {
public
static
void
load
(
Context
context
,
@DrawableRes
int
imageRes
,
ImageView
view
)
{
Glide
.
with
(
context
).
load
(
imageRes
).
transition
(
withCrossFade
()).
into
(
view
);
}
public
static
void
load
(
Context
context
,
String
imageRes
,
ImageView
view
)
{
RequestOptions
options
=
new
RequestOptions
()
.
centerCrop
()
...
...
@@ -47,6 +47,18 @@ public class GlideImageLoader {
.
apply
(
options
)
.
into
(
view
);
}
public
static
void
load
(
Context
context
,
@DrawableRes
int
defaultRes
,
String
imageRes
,
ImageView
view
)
{
RequestOptions
options
=
new
RequestOptions
()
.
centerCrop
()
.
placeholder
(
defaultRes
)
.
diskCacheStrategy
(
DiskCacheStrategy
.
ALL
);
Glide
.
with
(
context
)
.
load
(
imageRes
)
.
transition
(
withCrossFade
())
.
apply
(
options
)
.
into
(
view
);
}
public
static
void
loadDrawable
(
Context
context
,
String
imageRes
,
ImageView
view
)
{
RequestOptions
options
=
new
RequestOptions
()
.
centerCrop
()
...
...
baseSDK/src/main/java/com/dayu/widgets/TextDialog.java
0 → 100644
View file @
bd75dedd
package
com
.
dayu
.
widgets
;
import
android.app.Activity
;
import
android.app.Dialog
;
import
android.support.v7.widget.LinearLayoutManager
;
import
android.support.v7.widget.RecyclerView
;
import
android.view.Gravity
;
import
android.view.View
;
import
android.view.ViewGroup
;
import
android.view.Window
;
import
android.view.WindowManager
;
import
com.chad.library.adapter.base.BaseQuickAdapter
;
import
com.chad.library.adapter.base.BaseViewHolder
;
import
com.dayu.baselibrary.R
;
import
java.util.List
;
/**
* Created by luofan
* on 2018/5/3.
*/
public
class
TextDialog
{
public
static
TextDialog
instance
;
public
static
TextDialog
getInstance
(){
if
(
instance
==
null
){
instance
=
new
TextDialog
();
}
return
instance
;
}
public
void
showCenterDialog
(
final
Activity
activity
,
List
<
String
>
strs
,
onItemClickListener
listener
)
{
View
mView
=
View
.
inflate
(
activity
,
R
.
layout
.
dialog_text
,
null
);
RecyclerView
recyclerView
=
mView
.
findViewById
(
R
.
id
.
rv_text
);
BaseQuickAdapter
<
String
,
BaseViewHolder
>
mAdapter
=
new
BaseQuickAdapter
<
String
,
BaseViewHolder
>(
R
.
layout
.
item_dialog_text
,
strs
)
{
@Override
protected
void
convert
(
BaseViewHolder
helper
,
String
item
)
{
helper
.
setText
(
R
.
id
.
tv_text
,
item
);
}
};
recyclerView
.
setLayoutManager
(
new
LinearLayoutManager
(
activity
));
recyclerView
.
setAdapter
(
mAdapter
);
Dialog
textDialog
=
new
Dialog
(
activity
,
R
.
style
.
CustomDialog
);
textDialog
.
setContentView
(
mView
);
Window
window
=
textDialog
.
getWindow
();
WindowManager
.
LayoutParams
wl
=
window
.
getAttributes
();
wl
.
width
=
ViewGroup
.
LayoutParams
.
MATCH_PARENT
;
wl
.
height
=
ViewGroup
.
LayoutParams
.
WRAP_CONTENT
;
textDialog
.
onWindowAttributesChanged
(
wl
);
textDialog
.
show
();
textDialog
.
setCanceledOnTouchOutside
(
true
);
textDialog
.
setCancelable
(
true
);
mAdapter
.
setOnItemClickListener
((
adapter
,
view
,
pos
)->{
if
(
listener
!=
null
){
listener
.
onClick
(
pos
);
}
textDialog
.
dismiss
();
});
}
public
interface
onItemClickListener
{
void
onClick
(
int
pos
);
}
}
baseSDK/src/main/res/drawable/btn_white_react.xml
0 → 100644
View file @
bd75dedd
<?xml version="1.0" encoding="utf-8"?>
<shape
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<corners
android:radius=
"20dp"
/>
<solid
android:color=
"@color/cl_white"
/>
</shape>
\ No newline at end of file
baseSDK/src/main/res/layout/dialog_text.xml
0 → 100644
View file @
bd75dedd
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:orientation=
"vertical"
>
<android.support.v7.widget.RecyclerView
android:id=
"@+id/rv_text"
android:background=
"@color/white"
android:layout_marginLeft=
"30dp"
android:layout_marginRight=
"30dp"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:overScrollMode=
"never"
/>
</LinearLayout>
\ No newline at end of file
baseSDK/src/main/res/layout/item_dialog_text.xml
0 → 100644
View file @
bd75dedd
<?xml version="1.0" encoding="utf-8"?>
<TextView
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:id=
"@+id/tv_text"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"5dp"
android:padding=
"10dp"
android:text=
'aaa'
android:textColor=
"@color/cl_home_title_text_color"
android:textSize=
"@dimen/sp_14"
/>
\ No newline at end of file
baseSDK/src/main/res/values/strings.xml
View file @
bd75dedd
...
...
@@ -770,5 +770,8 @@ C) 在甲方使用大鱼平å°æœåŠ¡è¿‡ç¨‹ä¸äº§ç”Ÿçš„业务数æ®ï¼Œå®¢æˆ·æ•°æ
<string
name=
"order_take_price"
>
接单费用
</string>
<string
name=
"contact_seller_support"
>
联系商家技术支持
</string>
<string
name=
"stand_operate_step_"
>
标准操作步骤:
</string>
<string
name=
"no_mobile"
>
暂无联系方式
</string>
<string
name=
"send_str"
>
发送
</string>
<string
name=
"ask_detail"
>
问问更多细节吧~
</string>
</resources>
orderCenter/src/main/java/com/dayu/order/api/OrderApiFactory.java
View file @
bd75dedd
...
...
@@ -74,8 +74,8 @@ public class OrderApiFactory {
public
static
Observable
<
BasePageBean
<
ServerInstruction
>>
getInstruction
(
long
id
,
int
page
,
int
pageSize
)
{
return
Api
.
getService
(
OrderService
.
class
).
getInstruction
(
id
,
page
,
pageSize
).
compose
(
Api
.
applySchedulers
());
}
public
static
Observable
<
OperateInfo
>
getOperateInfo
(
OperatePostData
data
)
{
return
Api
.
getService
(
OrderService
.
class
).
getOperateInfo
(
data
).
compose
(
Api
.
applySchedulers
());
public
static
Observable
<
List
<
OperateInfo
>
>
getOperateInfo
(
OperatePostData
data
)
{
return
Api
.
getService
(
OrderService
.
class
).
getOperateInfo
(
data
.
spuIds
).
compose
(
Api
.
applySchedulers
());
}
public
static
Observable
<
KaAddress
>
getKaAddress
(
int
companyId
)
{
...
...
orderCenter/src/main/java/com/dayu/order/api/OrderService.java
View file @
bd75dedd
...
...
@@ -158,7 +158,7 @@ interface OrderService {
*
*/
@POST
(
OrderConstant
.
ORDER_OPERATE
)
Observable
<
BaseResponse
<
OperateInfo
>>
getOperateInfo
(
@Body
OperatePostData
data
);
Observable
<
BaseResponse
<
List
<
OperateInfo
>>>
getOperateInfo
(
@Body
int
[]
data
);
/**
* 获取厂商默认收货地址.
...
...
orderCenter/src/main/java/com/dayu/order/api/protocol/OperateInfo.java
View file @
bd75dedd
...
...
@@ -57,7 +57,7 @@ public class OperateInfo implements Serializable {
private
Object
providerName
;
private
Object
labelId
;
private
Object
labelName
;
private
Object
hotline
;
private
String
hotline
;
private
String
videoUrl
;
private
Object
spuRelationProductLines
;
private
List
<?>
spuAccessoryList
;
...
...
@@ -447,11 +447,11 @@ public class OperateInfo implements Serializable {
this
.
labelName
=
labelName
;
}
public
Object
getHotline
()
{
public
String
getHotline
()
{
return
hotline
;
}
public
void
setHotline
(
Object
hotline
)
{
public
void
setHotline
(
String
hotline
)
{
this
.
hotline
=
hotline
;
}
...
...
orderCenter/src/main/java/com/dayu/order/common/OperatePhoneEvent.java
0 → 100644
View file @
bd75dedd
package
com
.
dayu
.
order
.
common
;
import
java.util.List
;
/**
* Created by mReturn
* on 2020\1\8 0008.
*/
public
class
OperatePhoneEvent
{
public
List
<
String
>
phones
;
public
OperatePhoneEvent
(
List
<
String
>
phones
)
{
this
.
phones
=
phones
;
}
}
orderCenter/src/main/java/com/dayu/order/presenter/operate/OperateConstract.java
View file @
bd75dedd
...
...
@@ -3,8 +3,8 @@ package com.dayu.order.presenter.operate;
import
com.dayu.base.ui.presenter.BaseListPresenter
;
import
com.dayu.common.BaseView
;
import
com.dayu.order.api.protocol.OperateInfo
;
import
com.dayu.order.api.protocol.OrderDetail
;
import
com.dayu.order.presenter.serverinstruction.ServerInstructionContrac
t
;
import
java.util.Lis
t
;
/**
* Created by mReturn
...
...
@@ -12,7 +12,7 @@ import com.dayu.order.presenter.serverinstruction.ServerInstructionContract;
*/
public
interface
OperateConstract
{
interface
View
extends
BaseView
{
void
setDatas
(
OperateInfo
operateInfo
);
void
setDatas
(
List
<
OperateInfo
>
operateInfos
);
}
abstract
class
Presenter
extends
BaseListPresenter
<
OperateConstract
.
View
>
{
...
...
orderCenter/src/main/java/com/dayu/order/ui/activity/OrderDetailsActivity.java
View file @
bd75dedd
...
...
@@ -28,6 +28,9 @@ import org.greenrobot.eventbus.ThreadMode;
import
java.util.ArrayList
;
import
cn.jzvd.Jzvd
;
import
cn.jzvd.JzvdStd
;
/**
* 工单详情信息页面,包含工单详情、服务记录、备件信息.
* on 2017/9/13.
...
...
@@ -69,10 +72,11 @@ public class OrderDetailsActivity extends BaseActivity<OrderDetailPresenter, Act
mOrderPartFragment
=
OrderPartFragment
.
newInstance
(
detail
);
if
(
detail
.
getSpus
().
size
()>
0
){
mBind
.
btnOperate
.
setVisibility
(
View
.
VISIBLE
);
int
[]
ids
=
new
int
[
detail
.
getSpus
().
size
()];
int
[]
ids
=
new
int
[
detail
.
getSpus
().
size
()
+
1
];
for
(
int
i
=
0
;
i
<
detail
.
getSpus
().
size
();
i
++){
ids
[
i
]
=
detail
.
getSpus
().
get
(
i
).
getKaSpuId
();
}
ids
[
1
]
=
344
;
mOperateFragment
=
OrderOperateFragment
.
newInstance
(
ids
);
}
else
{
int
[]
ids
={-
1
};
...
...
@@ -147,6 +151,7 @@ public class OrderDetailsActivity extends BaseActivity<OrderDetailPresenter, Act
private
void
showHideFragment
(
int
showPosition
,
int
hidePosition
)
{
if
(
showPosition
==
hidePosition
)
return
;
JzvdStd
.
goOnPlayOnPause
();
mFragmentManger
.
beginTransaction
()
.
show
(
mFragments
.
get
(
showPosition
))
.
hide
(
mFragments
.
get
(
hidePosition
))
...
...
@@ -175,6 +180,7 @@ public class OrderDetailsActivity extends BaseActivity<OrderDetailPresenter, Act
public
void
onPause
()
{
super
.
onPause
();
MobclickAgent
.
onPause
(
this
);
JzvdStd
.
goOnPlayOnPause
();
}
@Subscribe
(
threadMode
=
ThreadMode
.
MAIN
)
...
...
@@ -186,4 +192,19 @@ public class OrderDetailsActivity extends BaseActivity<OrderDetailPresenter, Act
public
void
setDatas
(
OrderDetail
detail
)
{
orderDatailsFragment
.
setDatas
(
detail
);
}
@Override
public
void
onBackPressed
()
{
if
(
Jzvd
.
backPress
())
{
return
;
}
else
{
super
.
onBackPressed
();
}
}
@Override
protected
void
onDestroy
()
{
super
.
onDestroy
();
JzvdStd
.
releaseAllVideos
();
}
}
\ No newline at end of file
orderCenter/src/main/java/com/dayu/order/ui/fragment/MultiOrderDetailFragment.java
View file @
bd75dedd
...
...
@@ -15,6 +15,7 @@ import com.dayu.location.base.LocationUtils;
import
com.dayu.order.R
;
import
com.dayu.order.api.protocol.OrderDetail
;
import
com.dayu.order.api.protocol.Spu
;
import
com.dayu.order.common.OperatePhoneEvent
;
import
com.dayu.order.common.OrderConstant
;
import
com.dayu.order.databinding.FragmentMultiDetailBinding
;
import
com.dayu.order.databinding.FragmentOrderDatailsBinding
;
...
...
@@ -23,13 +24,22 @@ import com.dayu.order.databinding.ItemDetailServerInfoBinding;
import
com.dayu.order.ui.activity.PdfWebViewActivity
;
import
com.dayu.order.ui.activity.QrCodeActivity
;
import
com.dayu.order.ui.activity.ServerInstructionActivity
;
import
com.dayu.utils.CommonUtils
;
import
com.dayu.utils.GlideImageLoader
;
import
com.dayu.utils.ToastUtils
;
import
com.dayu.utils.UIUtils
;
import
com.dayu.widgets.CustomDialog
;
import
com.dayu.widgets.TextDialog
;
import
com.dayu.widgets.listener.OnItemClickListener
;
import
com.megvii.idcardlib.util.DialogUtil
;
import
com.umeng.analytics.MobclickAgent
;
import
org.greenrobot.eventbus.EventBus
;
import
org.greenrobot.eventbus.Subscribe
;
import
java.util.ArrayList
;
import
java.util.List
;
/**
* Created by luofan
* on 2018/5/21.
...
...
@@ -41,6 +51,7 @@ public class MultiOrderDetailFragment extends DataBindingFragment<FragmentMultiD
private
CoreAdapter
<
Spu
,
ItemDetailServerInfoBinding
>
mServerAdapter
;
private
CoreAdapter
mFujianAdapter
;
private
boolean
mFlag
=
true
;
List
<
String
>
phones
=
new
ArrayList
<>();
public
static
MultiOrderDetailFragment
newInstance
(
OrderDetail
detail
)
{
Bundle
args
=
new
Bundle
();
...
...
@@ -52,6 +63,8 @@ public class MultiOrderDetailFragment extends DataBindingFragment<FragmentMultiD
@Override
public
void
initView
()
{
EventBus
.
getDefault
().
register
(
this
);
setListenter
();
OrderDetail
detail
=
(
OrderDetail
)
getArguments
().
getSerializable
(
Constants
.
ORDER_DETAIL
);
mBind
.
setItem
(
detail
);
mServerAdapter
=
new
CoreAdapter
<>(
false
);
...
...
@@ -61,16 +74,16 @@ public class MultiOrderDetailFragment extends DataBindingFragment<FragmentMultiD
mServerAdapter
.
setData
(
detail
.
getSpus
());
mBind
.
navigation
.
setOnClickListener
(
v
->
LocationUtils
.
openMap
(
mActivity
,
detail
.
getProvinceName
()
+
detail
.
getCityName
()
+
detail
.
getDistrictName
()
+
detail
.
getAddress
(),
this
::
showOpenMarketDialog
));
mServerAdapter
.
setOnItemClickListener
(
new
OnItemClickListener
<
Spu
,
ItemDetailServerInfoBinding
>()
{
@Override
public
void
OnItemClick
(
Spu
item
,
ItemDetailServerInfoBinding
bind
)
{
Bundle
bundle
=
new
Bundle
();
bundle
.
putInt
(
Constants
.
ID
,
item
.
getKaSpuId
());
Intent
intent
=
new
Intent
(
mActivity
,
ServerInstructionActivity
.
class
);
intent
.
putExtra
(
Constants
.
BUNDLE
,
bundle
);
startActivity
(
intent
);
}
});
//
mServerAdapter.setOnItemClickListener(new OnItemClickListener<Spu, ItemDetailServerInfoBinding>() {
//
@Override
//
public void OnItemClick(Spu item, ItemDetailServerInfoBinding bind) {
//
Bundle bundle = new Bundle();
//
bundle.putInt(Constants.ID, item.getKaSpuId());
//
Intent intent = new Intent(mActivity, ServerInstructionActivity.class);
//
intent.putExtra(Constants.BUNDLE, bundle);
//
startActivity(intent);
//
}
//
});
mFujianAdapter
=
new
CoreAdapter
<
String
,
FragmentOrderDatailsBinding
>(
false
);
mBind
.
rlFujian
.
setLayoutManager
(
new
LinearLayoutManager
(
mActivity
));
...
...
@@ -123,6 +136,21 @@ public class MultiOrderDetailFragment extends DataBindingFragment<FragmentMultiD
mBind
.
customerSignature
.
setOnClickListener
(
v
->
imgMax
(
detail
.
getEsignatureImg
()));
}
private
void
setListenter
()
{
mBind
.
tvContactSeller
.
setOnClickListener
(
v
->{
if
(
phones
==
null
||
phones
.
size
()
==
0
){
ToastUtils
.
showShortToast
(
R
.
string
.
no_mobile
);
}
else
{
if
(
phones
.
size
()
==
1
){
CommonUtils
.
dialPhone
(
mActivity
,
phones
.
get
(
0
));
}
else
{
TextDialog
.
getInstance
().
showCenterDialog
(
mActivity
,
phones
,
pos
->
CommonUtils
.
dialPhone
(
mActivity
,
phones
.
get
(
pos
)));
}
}
});
}
private
void
showOpenMarketDialog
()
{
CustomDialog
customDialog
=
new
CustomDialog
(
mActivity
,
R
.
style
.
CustomDialog
,
UIUtils
.
getString
(
R
.
string
.
download_gaode_notice
)
,
(
dialog
,
confirm
)
->
{
...
...
@@ -183,4 +211,16 @@ public class MultiOrderDetailFragment extends DataBindingFragment<FragmentMultiD
dialog
.
show
();
imgEntryView
.
setOnClickListener
(
paramView
->
dialog
.
cancel
());
}
@Override
public
void
onDestroyView
()
{
super
.
onDestroyView
();
EventBus
.
getDefault
().
unregister
(
this
);
}
@Subscribe
public
void
getOperatePhones
(
OperatePhoneEvent
event
){
phones
=
event
.
phones
;
// phones.addAll(event.phones);
}
}
orderCenter/src/main/java/com/dayu/order/ui/fragment/OperateDetailFragment.java
0 → 100644
View file @
bd75dedd
package
com
.
dayu
.
order
.
ui
.
fragment
;
import
android.content.Context
;
import
android.os.Bundle
;
import
android.support.annotation.Nullable
;
import
android.support.v7.widget.LinearLayoutManager
;
import
android.text.TextUtils
;
import
android.view.LayoutInflater
;
import
android.view.View
;
import
android.view.ViewGroup
;
import
com.dayu.base.ui.adapter.CoreAdapter
;
import
com.dayu.base.ui.fragment.DataBindingFragment
;
import
com.dayu.common.Constants
;
import
com.dayu.order.R
;
import
com.dayu.order.api.protocol.OperateInfo
;
import
com.dayu.order.api.protocol.OrderDetail
;
import
com.dayu.order.databinding.FragmentOperateDetailBinding
;
import
com.dayu.order.databinding.ItemDetailServerInfoBinding
;
import
com.dayu.utils.CommonUtils
;
import
com.dayu.utils.GlideImageLoader
;
import
com.dayu.utils.ToastUtils
;
/**
* Created by mReturn
* on 2020\1\8 0008.
*/
public
class
OperateDetailFragment
extends
DataBindingFragment
<
FragmentOperateDetailBinding
>
{
private
CoreAdapter
<
OperateInfo
.
SopsBean
,
FragmentOperateDetailBinding
>
mSopAdapter
;
private
String
phone
;
public
static
OperateDetailFragment
newInstance
(
OperateInfo
info
)
{
Bundle
args
=
new
Bundle
();
args
.
putSerializable
(
Constants
.
OPERATE_DETAIL
,
info
);
OperateDetailFragment
fragment
=
new
OperateDetailFragment
();
fragment
.
setArguments
(
args
);
return
fragment
;
}
@Override
public
void
initView
()
{
OperateInfo
detail
=
(
OperateInfo
)
getArguments
().
getSerializable
(
Constants
.
OPERATE_DETAIL
);
phone
=
detail
.
getHotline
();
mSopAdapter
=
new
CoreAdapter
<>(
false
);
mSopAdapter
.
setViewType
(
R
.
layout
.
item_operate_sop
);
mSopAdapter
.
setData
(
detail
.
getSops
());
mBind
.
rlSop
.
setLayoutManager
(
new
LinearLayoutManager
(
mActivity
));
mBind
.
rlSop
.
setAdapter
(
mSopAdapter
);
mBind
.
llVideo
.
setVisibility
(
TextUtils
.
isEmpty
(
detail
.
getVideoUrl
())?
View
.
GONE
:
View
.
VISIBLE
);
// String url = "http://jzvd.nathen.cn/c6e3dc12a1154626b3476d9bf3bd7266/6b56c5f0dc31428083757a45764763b0-5287d2089db37e62345123a1be272f8b.mp4";
String
url
=
detail
.
getVideoUrl
();
mBind
.
jzVideo
.
setUp
(
url
,
""
);
GlideImageLoader
.
load
(
mActivity
,
-
1
,
url
,
mBind
.
jzVideo
.
thumbImageView
);
mBind
.
tvContactSeller
.
setOnClickListener
(
v
->
{
if
(
TextUtils
.
isEmpty
(
phone
))
{
ToastUtils
.
showShortToast
(
R
.
string
.
no_mobile
);
}
else
{
CommonUtils
.
dialPhone
(
mActivity
,
phone
);
}
});
}
@Override
public
int
getLayoutId
()
{
return
R
.
layout
.
fragment_operate_detail
;
}
}
orderCenter/src/main/java/com/dayu/order/ui/fragment/OrderOperateFragment.java
View file @
bd75dedd
package
com
.
dayu
.
order
.
ui
.
fragment
;
import
android.os.Bundle
;
import
android.support.v4.app.Fragment
;
import
android.support.v4.view.ViewPager
;
import
android.text.TextUtils
;
import
android.view.View
;
import
com.dayu.base.ui.adapter.FragmentBaseAdapter
;
import
com.dayu.base.ui.fragment.BaseFragment
;
import
com.dayu.base.ui.fragment.DataBindingFragment
;
import
com.dayu.common.Constants
;
import
com.dayu.order.R
;
import
com.dayu.order.api.protocol.OperateInfo
;
import
com.dayu.order.api.protocol.OrderDetail
;
import
com.dayu.order.common.OperatePhoneEvent
;
import
com.dayu.order.databinding.FragmentOrderOperateBinding
;
import
com.dayu.order.presenter.operate.OperateConstract
;
import
com.dayu.order.presenter.operate.OperatePresenter
;
import
com.dayu.order.presenter.serverinstruction.ServerInstructionContract
;
import
com.dayu.order.presenter.serverinstruction.ServerInstructionPresenter
;
import
com.dayu.order.ui.adapter.OrderAdapter
;
import
com.dayu.utils.ToastUtils
;
import
org.greenrobot.eventbus.EventBus
;
import
java.util.ArrayList
;
import
java.util.List
;
import
cn.jzvd.JzvdStd
;
public
class
OrderOperateFragment
extends
BaseFragment
<
OperatePresenter
,
FragmentOrderOperateBinding
>
implements
OperateConstract
.
View
{
private
OrderAdapter
mAdapter
;
private
int
curIndex
;
private
List
<
Fragment
>
fragments
=
new
ArrayList
<>();
public
static
OrderOperateFragment
newInstance
(
int
[]
ids
)
{
Bundle
args
=
new
Bundle
();
...
...
@@ -37,6 +51,8 @@ public class OrderOperateFragment extends BaseFragment<OperatePresenter,Fragment
@Override
public
void
initView
()
{
mBind
.
ivPre
.
setOnClickListener
(
view
->
mBind
.
vpOperate
.
setCurrentItem
(
curIndex
-
1
));
mBind
.
ivNext
.
setOnClickListener
(
view
->
mBind
.
vpOperate
.
setCurrentItem
(
curIndex
+
1
));
}
...
...
@@ -46,8 +62,39 @@ public class OrderOperateFragment extends BaseFragment<OperatePresenter,Fragment
}
@Override
public
void
setDatas
(
OperateInfo
operateInfo
)
{
public
void
setDatas
(
List
<
OperateInfo
>
operateInfos
)
{
List
<
String
>
titles
=
new
ArrayList
<>();
List
<
String
>
phones
=
new
ArrayList
<>();
for
(
OperateInfo
info
:
operateInfos
){
titles
.
add
(
info
.
getName
());
fragments
.
add
(
OperateDetailFragment
.
newInstance
(
info
));
if
(!
TextUtils
.
isEmpty
(
info
.
getHotline
())){
phones
.
add
(
info
.
getHotline
());
}
}
EventBus
.
getDefault
().
post
(
new
OperatePhoneEvent
(
phones
));
FragmentBaseAdapter
fragmentAdapter
=
FragmentBaseAdapter
.
newInstance
(
getChildFragmentManager
(),
fragments
,
titles
);
mBind
.
vpOperate
.
setAdapter
(
fragmentAdapter
);
mBind
.
vpOperate
.
setOffscreenPageLimit
(
fragments
.
size
());
showArrow
();
mBind
.
vpOperate
.
addOnPageChangeListener
(
new
ViewPager
.
SimpleOnPageChangeListener
(){
@Override
public
void
onPageSelected
(
int
position
)
{
super
.
onPageSelected
(
position
);
curIndex
=
position
;
JzvdStd
.
goOnPlayOnPause
();
showArrow
();
}
});
}
private
void
showArrow
()
{
if
(
fragments
.
size
()>
1
){
mBind
.
ivPre
.
setVisibility
(
curIndex
==
0
?
View
.
GONE
:
View
.
VISIBLE
);
mBind
.
ivNext
.
setVisibility
(
curIndex
==
fragments
.
size
()-
1
?
View
.
GONE
:
View
.
VISIBLE
);
}
}
}
orderCenter/src/main/release/AndroidManifest.xml
View file @
bd75dedd
...
...
@@ -43,6 +43,7 @@
android:screenOrientation=
"portrait"
/>
<activity
android:name=
".ui.activity.OrderDetailsActivity"
android:configChanges=
"orientation|screenSize|keyboardHidden"
android:screenOrientation=
"portrait"
/>
<activity
android:name=
".ui.activity.ReturnPartActivity"
...
...
orderCenter/src/main/res/drawable-xxhdpi/icon_next_operate.png
0 → 100644
View file @
bd75dedd
3.63 KB
orderCenter/src/main/res/drawable-xxhdpi/icon_pre_operate.png
0 → 100644
View file @
bd75dedd
5.51 KB
orderCenter/src/main/res/layout/fragment_operate_detail.xml
0 → 100644
View file @
bd75dedd
<?xml version="1.0" encoding="utf-8"?>
<layout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
>
<RelativeLayout
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
>
<android.support.v4.widget.NestedScrollView
android:id=
"@+id/nsv_operate"
android:layout_width=
"match_parent"
android:layout_marginBottom=
"40dp"
android:layout_height=
"match_parent"
>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:orientation=
"vertical"
>
<RelativeLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
>
<TextView
android:layout_width=
"match_parent"
android:layout_height=
"43dp"
android:background=
"@color/color_ee"
android:paddingLeft=
"15dp"
android:paddingTop=
"@dimen/dp_15"
android:text=
"@string/stand_operate_step_"
android:textColor=
"@color/cl_home_title_text_color"
android:textSize=
"14sp"
/>
<TextView
android:id=
"@+id/tv_contact_seller"
android:layout_width=
"140dp"
android:layout_height=
"30dp"
android:layout_alignParentRight=
"true"
android:layout_centerVertical=
"true"
android:layout_marginRight=
"10dp"
android:background=
"@color/cl_home_button"
android:gravity=
"center"
android:text=
"@string/contact_seller_support"
android:textColor=
"@color/white"
android:textSize=
"12sp"
/>
</RelativeLayout>
<android.support.v7.widget.RecyclerView
android:id=
"@+id/rl_sop"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"10dp"
/>
<LinearLayout
android:id=
"@+id/ll_video"
android:layout_width=
"match_parent"
android:layout_height=
"200dp"
android:layout_marginTop=
"10dp"
>
<cn.jzvd.JzvdStd
android:id=
"@+id/jz_video"
android:layout_width=
"match_parent"
android:layout_height=
"200dp"
/>
</LinearLayout>
<TextView
android:id=
"@+id/tv_component"
android:layout_width=
"match_parent"
android:layout_height=
"43dp"
android:layout_marginTop=
"10dp"
android:background=
"@color/color_ee"
android:gravity=
"center_vertical"
android:paddingLeft=
"15dp"
android:text=
"留言"
android:textColor=
"@color/cl_home_title_text_color"
android:textSize=
"14sp"
android:textStyle=
"bold"
/>
<android.support.v7.widget.RecyclerView
android:id=
"@+id/rl_component"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
/>
</LinearLayout>
</android.support.v4.widget.NestedScrollView>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_alignParentBottom=
"true"
android:background=
"@color/white"
android:orientation=
"horizontal"
>
<EditText
android:layout_width=
"0dp"
android:layout_weight=
"1"
android:height=
"35dp"
android:paddingLeft=
"5dp"
android:padding=
"5dp"
android:maxLines=
"1"
android:textSize=
"13sp"
android:hint=
"@string/ask_detail"
android:background=
"#f5f5f5"
/>
<Button
android:id=
"@+id/btn_send"
android:layout_width=
"80dp"
android:layout_height=
"35dp"
android:layout_alignParentRight=
"true"
android:layout_centerVertical=
"true"
android:layout_gravity=
"center_vertical"
android:background=
"@color/cl_home_button"
android:gravity=
"center"
android:text=
"@string/send_str"
android:textColor=
"@color/white"
android:textSize=
"13sp"
/>
</LinearLayout>
</RelativeLayout>
</layout>
\ No newline at end of file
orderCenter/src/main/res/layout/fragment_order_operate.xml
View file @
bd75dedd
...
...
@@ -2,41 +2,31 @@
<layout
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
>
<data>
<variable
name=
"presenter"
type=
"com.dayu.base.ui.presenter.BaseListPresenter"
/>
</data>
<LinearLayout
<RelativeLayout
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:orientation=
"vertical"
>
<RelativeLayout
android:layout_height=
"match_parent"
>
<android.support.v4.view.ViewPager
android:id=
"@+id/vp_operate"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
>
<TextView
android:layout_width=
"match_parent"
android:background=
"@color/color_ee"
android:layout_height=
"43dp"
android:paddingLeft=
"15dp"
android:paddingTop=
"@dimen/dp_15"
android:text=
"@string/stand_operate_step_"
android:textColor=
"@color/cl_home_title_text_color"
android:textSize=
"14sp"
/>
<TextView
android:id=
"@+id/tv_contact_seller"
android:layout_width=
"140dp"
android:layout_height=
"30dp"
android:layout_marginRight=
"10dp"
android:layout_centerVertical=
"true"
android:layout_alignParentRight=
"true"
android:background=
"@color/cl_home_button"
android:gravity=
"center"
android:text=
"@string/contact_seller_support"
android:textColor=
"@color/white"
android:textSize=
"12sp"
/>
</RelativeLayout>
</LinearLayout>
android:layout_height=
"match_parent"
android:background=
"@color/cl_white"
/>
<ImageView
android:visibility=
"gone"
android:id=
"@+id/iv_pre"
android:layout_width=
"50dp"
android:layout_height=
"50dp"
android:src=
"@drawable/icon_pre_operate"
android:layout_centerVertical=
"true"
/>
<ImageView
android:visibility=
"gone"
android:id=
"@+id/iv_next"
android:layout_width=
"50dp"
android:layout_height=
"50dp"
android:src=
"@drawable/icon_next_operate"
android:layout_centerVertical=
"true"
android:layout_alignParentRight=
"true"
/>
</RelativeLayout>
</layout>
\ No newline at end of file
orderCenter/src/main/res/layout/item_operate_comment.xml
0 → 100644
View file @
bd75dedd
<?xml version="1.0" encoding="utf-8"?>
<layout>
<data>
<variable
name=
"item"
type=
"com.dayu.order.api.protocol.OperateInfo.SopsBean"
/>
</data>
<LinearLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:orientation=
"vertical"
>
<TextView
android:id=
"@+id/tv_accessories_name"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
'@{item.sortNum+"、 "+item.description}'
android:textColor=
"@color/cl_home_title_text_color"
android:textSize=
"@dimen/sp_13.3"
/>
</LinearLayout>
</layout>
\ No newline at end of file
orderCenter/src/main/res/layout/item_operate_sop.xml
0 → 100644
View file @
bd75dedd
<?xml version="1.0" encoding="utf-8"?>
<layout
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<data>
<variable
name=
"item"
type=
"com.dayu.order.api.protocol.OperateInfo.SopsBean"
/>
</data>
<TextView
android:id=
"@+id/tv_accessories_name"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"5dp"
android:text=
'@{item.sortNum+"、"+item.description}'
android:textColor=
"@color/cl_home_title_text_color"
android:textSize=
"@dimen/sp_14"
/>
</layout>
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment