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
36906ffd
authored
Oct 15, 2023
by
wukun
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1015
parent
194305f2
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
698 additions
and
17 deletions
baseSDK/src/main/java/com/dayu/widgets/LRecyclerView.java
baseSDK/src/main/java/com/dayu/widgets/RecyclerLayoutManager.java
baseSDK/src/main/res/values/attrs.xml
orderCenter/src/main/debug/AndroidManifest.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/Order.java
orderCenter/src/main/java/com/dayu/order/common/OrderConstant.java
orderCenter/src/main/java/com/dayu/order/presenter/orderdetail/OrderDetailClockContract.java
orderCenter/src/main/java/com/dayu/order/presenter/orderdetail/OrderDetailClockPresenter.java
orderCenter/src/main/java/com/dayu/order/presenter/orderdoing/OrderDoingPresenter.java
orderCenter/src/main/java/com/dayu/order/presenter/orderserver/OrderServerPresenter.java
orderCenter/src/main/java/com/dayu/order/ui/activity/OrderDetailsClockActivity.java
orderCenter/src/main/java/com/dayu/order/ui/adapter/OrderAdapter.java
orderCenter/src/main/java/com/dayu/order/ui/adapter/OrderServerClockAdapter.java
orderCenter/src/main/java/com/dayu/order/ui/fragment/OrderSecondTabFragment.java
orderCenter/src/main/release/AndroidManifest.xml
orderCenter/src/main/res/layout/activity_order_details_clock.xml
provider/src/main/java/com/dayu/provider/router/RouterPath.java
baseSDK/src/main/java/com/dayu/widgets/LRecyclerView.java
View file @
36906ffd
...
...
@@ -70,6 +70,7 @@ public class LRecyclerView<M, B> extends FrameLayout {
private
LinearLayout
ll_faileView
;
private
BaseListPresenter
mPresenter
;
private
boolean
isRefreshable
;
private
boolean
isWrapContent
;
private
boolean
mIsEnd
;
...
...
@@ -98,6 +99,7 @@ public class LRecyclerView<M, B> extends FrameLayout {
isNeedFoot
=
ta
.
getBoolean
(
R
.
styleable
.
LRecyclerView_needFoot
,
true
);
needCoreAdapter
=
ta
.
getBoolean
(
R
.
styleable
.
LRecyclerView_needCoreAdapter
,
false
);
isRefreshable
=
ta
.
getBoolean
(
R
.
styleable
.
LRecyclerView_isRefreshable
,
true
);
isWrapContent
=
ta
.
getBoolean
(
R
.
styleable
.
LRecyclerView_isWrapContent
,
false
);
ta
.
recycle
();
//初始化recycleview
...
...
@@ -108,7 +110,11 @@ public class LRecyclerView<M, B> extends FrameLayout {
ll_faileView
=
layout
.
findViewById
(
R
.
id
.
ll_faileview
);
swipeRefresh
.
setColorSchemeResources
(
R
.
color
.
cl_receiving_order_item_data
);
mLayoutManager
=
new
LinearLayoutManager
(
context
);
// if (isWrapContent){
// mLayoutManager = new RecyclerLayoutManager(context);
// }else{
mLayoutManager
=
new
LinearLayoutManager
(
context
);
// }
mLayoutManager
.
setAutoMeasureEnabled
(
true
);
recyclerview
.
setLayoutManager
(
mLayoutManager
);
recyclerview
.
setItemAnimator
(
new
DefaultItemAnimator
());
...
...
baseSDK/src/main/java/com/dayu/widgets/RecyclerLayoutManager.java
0 → 100644
View file @
36906ffd
package
com
.
dayu
.
widgets
;
import
android.content.Context
;
import
android.view.View
;
import
androidx.recyclerview.widget.LinearLayoutManager
;
import
androidx.recyclerview.widget.RecyclerView
;
public
class
RecyclerLayoutManager
extends
LinearLayoutManager
{
public
RecyclerLayoutManager
(
Context
context
){
super
(
context
);
}
@Override
public
void
onMeasure
(
RecyclerView
.
Recycler
recycler
,
RecyclerView
.
State
state
,
int
widthSpec
,
int
heightSpec
)
{
int
itemCount
=
state
.
getItemCount
();
int
measuredWidth
=
0
;
int
measuredHeight
=
0
;
int
heightSize
=
View
.
MeasureSpec
.
getSize
(
heightSpec
);
for
(
int
i
=
0
;
i
<
itemCount
;
i
++){
View
view
=
recycler
.
getViewForPosition
(
i
);
if
(
view
!=
null
){
RecyclerView
.
LayoutParams
layoutParams
=
(
RecyclerView
.
LayoutParams
)
view
.
getLayoutParams
();
int
margin
=
layoutParams
.
bottomMargin
+
layoutParams
.
topMargin
;
measuredWidth
=
View
.
MeasureSpec
.
getSize
(
widthSpec
);
view
.
measure
(
widthSpec
,
View
.
MeasureSpec
.
makeMeasureSpec
(
0
,
View
.
MeasureSpec
.
UNSPECIFIED
));
switch
(
layoutParams
.
height
){
case
RecyclerView
.
LayoutParams
.
WRAP_CONTENT
:
measuredHeight
+=
(
getDecoratedMeasuredHeight
(
view
)
+
margin
);
break
;
case
RecyclerView
.
LayoutParams
.
MATCH_PARENT
:
default
:
measuredHeight
+=
(
layoutParams
.
height
+
margin
);
break
;
}
}
}
if
(
measuredHeight
>
heightSize
)
super
.
onMeasure
(
recycler
,
state
,
widthSpec
,
heightSpec
);
else
setMeasuredDimension
(
measuredWidth
,
measuredHeight
);
}
}
baseSDK/src/main/res/values/attrs.xml
View file @
36906ffd
...
...
@@ -3,6 +3,7 @@
<declare-styleable
name=
"LRecyclerView"
>
<attr
name=
"isReverse"
format=
"boolean"
/>
<attr
name=
"isRefreshable"
format=
"boolean"
/>
<attr
name=
"isWrapContent"
format=
"boolean"
/>
<attr
name=
"needCoreAdapter"
format=
"boolean"
/>
<attr
name=
"needFoot"
format=
"boolean"
/>
<attr
name=
"itemType"
format=
"reference"
/>
...
...
orderCenter/src/main/debug/AndroidManifest.xml
View file @
36906ffd
...
...
@@ -51,6 +51,9 @@
android:name=
".ui.activity.OrderDetailsActivity"
android:screenOrientation=
"portrait"
/>
<activity
android:name=
".ui.activity.OrderDetailsClockActivity"
android:screenOrientation=
"portrait"
/>
<activity
android:name=
".ui.activity.ReturnPartNewActivity"
android:screenOrientation=
"portrait"
/>
<activity
...
...
orderCenter/src/main/java/com/dayu/order/api/OrderApiFactory.java
View file @
36906ffd
...
...
@@ -62,6 +62,9 @@ public class OrderApiFactory {
public
static
Observable
<
Boolean
>
receiveOrder
(
int
orderId
,
int
engineerId
)
{
return
Api
.
getService
(
OrderService
.
class
).
receiveOrder
(
orderId
,
engineerId
).
compose
(
Api
.
applySchedulers
());
}
public
static
Observable
<
Boolean
>
clockIn
(
RequestBody
body
)
{
return
Api
.
getService
(
OrderService
.
class
).
clockIn
(
body
).
compose
(
Api
.
applySchedulers
());
}
public
static
Observable
<
Boolean
>
subcriceTime
(
int
orderId
,
String
doorTime
,
String
doorComment
)
{
return
Api
.
getService
(
OrderService
.
class
).
subcriceTime
(
orderId
,
doorTime
,
doorComment
).
compose
(
Api
.
applySchedulers
());
...
...
orderCenter/src/main/java/com/dayu/order/api/OrderService.java
View file @
36906ffd
...
...
@@ -144,6 +144,13 @@ public interface OrderService {
@Query
(
"doorComment"
)
String
doorComment
);
/**
* 打卡.
*
* @return
*/
@POST
(
OrderConstant
.
API_CLOCK_IN
)
Observable
<
BaseResponse
<
Boolean
>>
clockIn
(
@Body
RequestBody
body
);
/**
* 提交工单.
*
* @param orderInfo
...
...
orderCenter/src/main/java/com/dayu/order/api/protocol/Order.java
View file @
36906ffd
...
...
@@ -71,6 +71,15 @@ public class Order implements Serializable{
private
String
showPrice
;
private
double
receiveOrderCommission
;
private
int
source
;
private
String
finishedDays
;
public
String
getFinishedDays
()
{
return
finishedDays
;
}
public
void
setFinishedDays
(
String
finishedDays
)
{
this
.
finishedDays
=
finishedDays
;
}
public
int
getSource
()
{
return
source
;
...
...
orderCenter/src/main/java/com/dayu/order/common/OrderConstant.java
View file @
36906ffd
...
...
@@ -39,6 +39,9 @@ public class OrderConstant {
* 重新预约时间.
*/
public
static
final
String
API_SUBCRIBE_TIME
=
"/api-order/"
+
"orders/bespeakDoor"
;
public
static
final
String
API_CLOCK_IN
=
"/api-order/"
+
"orders/clockIn"
;
/**
* 开始出发.
*/
...
...
orderCenter/src/main/java/com/dayu/order/presenter/orderdetail/OrderDetailClockContract.java
0 → 100644
View file @
36906ffd
package
com
.
dayu
.
order
.
presenter
.
orderdetail
;
import
com.dayu.base.ui.presenter.BaseListPresenter
;
import
com.dayu.common.BaseView
;
import
com.dayu.order.api.protocol.OrderDetail
;
import
java.util.List
;
/**
* Created by luo
* on 2016/8/4.
*/
public
interface
OrderDetailClockContract
{
interface
View
extends
BaseView
{
void
checkSignature
(
String
esignatureImg
);
void
init
(
OrderDetail
detail
);
/**
* 初始化标题按钮.
*/
void
initBtn
();
void
addFragment
();
void
setDatas
(
OrderDetail
detail
);
void
setOrderPhoneNum
(
List
<
String
>
info
);
}
abstract
class
Presenter
extends
BaseListPresenter
<
OrderDetailClockContract
.
View
>
{
/**
*
* @param orderId 工单id.
*/
public
abstract
void
getOrderDetailInfo
(
int
orderId
);
public
abstract
void
getInfo
();
public
abstract
int
getOrderId
();
public
abstract
void
dumpToSop
(
int
id
);
public
abstract
void
dumpCheckContent
(
int
postion
);
public
abstract
void
dumpMap
(
double
latitude
,
double
longitude
,
String
address
);
public
abstract
void
dumpLogistics
(
String
courierNum
,
String
shipperCode
);
public
abstract
void
dumpCheckSignature
(
int
position
);
}
}
orderCenter/src/main/java/com/dayu/order/presenter/orderdetail/OrderDetailClockPresenter.java
0 → 100644
View file @
36906ffd
package
com
.
dayu
.
order
.
presenter
.
orderdetail
;
import
static
com
.
dayu
.
common
.
Constants
.
ORDER_ID
;
import
static
com
.
dayu
.
common
.
Constants
.
ORDER_STATE
;
import
static
com
.
dayu
.
order
.
common
.
OrderConstant
.
ORDER_SOP_FINISH
;
import
android.os.Bundle
;
import
android.text.TextUtils
;
import
androidx.databinding.ObservableField
;
import
com.dayu.common.Constants
;
import
com.dayu.event.UserInfo
;
import
com.dayu.location.base.BaseMapActivity
;
import
com.dayu.order.R
;
import
com.dayu.order.api.OrderApiFactory
;
import
com.dayu.order.api.protocol.OrderDetail
;
import
com.dayu.order.common.OrderConstant
;
import
com.dayu.order.ui.activity.CheckContentActivity
;
import
com.dayu.order.ui.activity.LogisticsInfoActivity
;
import
com.dayu.order.ui.activity.SopWebViewActivity
;
import
com.dayu.utils.ToastUtils
;
import
com.dayu.utils.UIUtils
;
import
com.dayu.utils.UserManager
;
import
java.util.List
;
/**
* Created by luofan
* on 2017/11/8.
*/
public
class
OrderDetailClockPresenter
extends
OrderDetailClockContract
.
Presenter
{
private
int
mOrderId
;
private
int
mUserId
;
public
ObservableField
<
Object
>
mDatas
=
new
ObservableField
<>();
public
ObservableField
<
Boolean
>
isShowLine
=
new
ObservableField
<>();
private
OrderDetail
mDetails
;
@Override
public
void
onAttached
()
{
Bundle
bundle
=
mView
.
getBundle
();
mOrderId
=
bundle
.
getInt
(
Constants
.
ORDER_ID
,
0
);
mView
.
showDialog
();
UserInfo
info
=
UserManager
.
getInstance
().
getUser
();
mUserId
=
Integer
.
parseInt
(
info
.
getAccountId
());
getOrderDetailInfo
(
mOrderId
);
}
@Override
public
void
getOrderDetailInfo
(
int
orderId
)
{
OrderApiFactory
.
getOperatePhone
(
mOrderId
).
subscribe
(
baseObserver
(
info
->
{
mView
.
setOrderPhoneNum
(
info
);
OrderApiFactory
.
getOrderInfo
(
orderId
,
mUserId
).
subscribe
(
baseObserver
(
detail
->
{
mDetails
=
detail
;
if
(
mDetails
!=
null
)
{
List
list
=
detail
.
getRecord
();
mDatas
.
set
(
list
);
if
(
list
.
size
()
==
0
)
{
isShowLine
.
set
(
false
);
}
else
{
isShowLine
.
set
(
true
);
}
}
else
{
isShowLine
.
set
(
false
);
}
mView
.
init
(
detail
);
}
,
responeThrowable
->
mView
.
init
(
null
)));
}));
}
@Override
public
void
getInfo
()
{
mView
.
showDialog
();
OrderApiFactory
.
getOrderInfo
(
mOrderId
,
mUserId
).
subscribe
(
baseObserver
(
detail
->
{
mView
.
setDatas
(
detail
);
// mDetails = detail;
// if (mDetails != null) {
// List list = detail.getRecord();
// Collections.reverse(list);
// mDatas.set(list);
// if (list.size() == 0) {
// isShowLine.set(false);
// } else {
// isShowLine.set(true);
// }
// } else {
// isShowLine.set(false);
// }
}));
}
@Override
public
ObservableField
<
Object
>
getSourceDatas
()
{
return
mDatas
;
}
@Override
public
int
getOrderId
()
{
return
mOrderId
;
}
@Override
public
void
dumpToSop
(
int
id
)
{
Bundle
bundle
=
new
Bundle
();
if
(
mDetails
.
getCreatedSource
()
==
2
||
mDetails
.
getCreatedSource
()
==
3
||
mDetails
.
getCreatedSource
()
==
4
)
{
bundle
.
putInt
(
ORDER_ID
,
id
);
}
else
{
bundle
.
putInt
(
ORDER_ID
,
mDetails
.
getId
());
}
bundle
.
putInt
(
OrderConstant
.
CREATEDSOURCE
,
mDetails
.
getCreatedSource
());
bundle
.
putInt
(
ORDER_STATE
,
ORDER_SOP_FINISH
);
bundle
.
putInt
(
Constants
.
SOP_ORDER_VERSION
,
mDetails
.
getVersion
());
bundle
.
putBoolean
(
Constants
.
SOP_CAN_EDIT
,
false
);
mView
.
startActivity
(
SopWebViewActivity
.
class
,
bundle
);
}
@Override
public
void
dumpCheckContent
(
int
postion
)
{
Bundle
bundle
=
new
Bundle
();
bundle
.
putSerializable
(
Constants
.
ORDER_DETAIL
,
mDetails
);
bundle
.
putInt
(
Constants
.
ORDER_POSTION
,
postion
);
mView
.
startActivity
(
CheckContentActivity
.
class
,
bundle
);
}
@Override
public
void
dumpMap
(
double
latitude
,
double
longitude
,
String
address
)
{
Bundle
bundle
=
new
Bundle
();
bundle
.
putDouble
(
Constants
.
LONGITUDE
,
longitude
);
bundle
.
putDouble
(
Constants
.
LATITUDE
,
latitude
);
bundle
.
putString
(
"address"
,
address
);
if
(
longitude
==
0
&&
latitude
==
0
)
{
ToastUtils
.
showShortToast
(
UIUtils
.
getString
(
R
.
string
.
failed_get_address
));
return
;
}
mView
.
startActivity
(
BaseMapActivity
.
class
,
bundle
);
}
@Override
public
void
dumpLogistics
(
String
courierNum
,
String
shipperCode
)
{
Bundle
bundle
=
new
Bundle
();
bundle
.
putString
(
Constants
.
COURIER_NUM
,
courierNum
);
bundle
.
putString
(
Constants
.
SHIPPER_CODE
,
shipperCode
);
mView
.
startActivity
(
LogisticsInfoActivity
.
class
,
bundle
);
}
@Override
public
void
dumpCheckSignature
(
int
position
)
{
if
(
TextUtils
.
isEmpty
(
mDetails
.
getEsignatureImg
())){
ToastUtils
.
showShortToast
(
"暂无签名"
);
}
else
{
mView
.
checkSignature
(
mDetails
.
getEsignatureImg
());
}
}
public
OrderDetail
getDetail
()
{
return
mDetails
;
}
}
orderCenter/src/main/java/com/dayu/order/presenter/orderdoing/OrderDoingPresenter.java
View file @
36906ffd
package
com
.
dayu
.
order
.
presenter
.
orderdoing
;
import
static
com
.
dayu
.
utils
.
UIUtils
.
getString
;
import
android.os.Bundle
;
import
androidx.databinding.ObservableField
;
import
com.dayu.base.api.Api
;
import
com.dayu.common.Constants
;
import
com.dayu.event.UserInfo
;
...
...
@@ -14,6 +18,7 @@ import com.dayu.order.api.protocol.data.AddDialRecordData;
import
com.dayu.order.common.OrderConstant
;
import
com.dayu.order.ui.activity.MultiProcessOrderActivity
;
import
com.dayu.order.ui.activity.OrderDetailsActivity
;
import
com.dayu.order.ui.activity.OrderDetailsClockActivity
;
import
com.dayu.order.ui.activity.SopWebViewActivity
;
import
com.dayu.order.ui.fragment.OrderDoneFragment
;
import
com.dayu.order.ui.fragment.OrderThreeTabFragment
;
...
...
@@ -33,10 +38,6 @@ import io.reactivex.Observable;
import
okhttp3.MediaType
;
import
okhttp3.RequestBody
;
import
static
com
.
dayu
.
utils
.
UIUtils
.
getString
;
import
androidx.databinding.ObservableField
;
/**
* Created by luofan
* on 2017/11/8.
...
...
@@ -203,6 +204,13 @@ public class OrderDoingPresenter extends orderDoingContract.Presenter {
// MobclickAgent.onEvent(BaseApplication.getContext(), "check_order_detail");
}
public
void
dumpDetailClock
(
int
orderId
)
{
Bundle
bundle
=
new
Bundle
();
bundle
.
putInt
(
Constants
.
ORDER_ID
,
orderId
);
mView
.
startActivity
(
OrderDetailsClockActivity
.
class
,
bundle
);
}
private
void
checkCachedLicense
(
Order
order
)
{
}
...
...
@@ -216,4 +224,19 @@ public class OrderDoingPresenter extends orderDoingContract.Presenter {
AddDialRecordData
recordData
=
new
AddDialRecordData
(
mUserId
,
time
,
userInfo
.
getAccountName
(),
phoneNum
,
orderId
);
Api
.
getService
(
OrderService
.
class
).
addDialRecord
(
recordData
).
compose
(
Api
.
applySchedulers
()).
subscribe
();
}
public
Observable
<
Boolean
>
clockIn
(
int
id
)
{
HashMap
<
String
,
Object
>
params
=
new
HashMap
<>();
params
.
put
(
"orderId"
,
id
);
JSONObject
jsonObject
=
new
JSONObject
(
params
);
RequestBody
body
=
RequestBody
.
create
(
MediaType
.
parse
(
"application/json"
),
jsonObject
.
toString
());
return
OrderApiFactory
.
clockIn
(
body
);
}
public
void
refreshClear
()
{
getOrders
(
mState
,
mUserId
,
mSiteId
,
mPage
,
Constants
.
PAGESIZE
);
}
}
orderCenter/src/main/java/com/dayu/order/presenter/orderserver/OrderServerPresenter.java
View file @
36906ffd
package
com
.
dayu
.
order
.
presenter
.
orderserver
;
import
static
com
.
dayu
.
common
.
Constants
.
ORDER_ID
;
import
static
com
.
dayu
.
common
.
Constants
.
ORDER_STATE
;
import
static
com
.
dayu
.
order
.
common
.
OrderConstant
.
ORDER_SOP_FINISH
;
import
android.os.Bundle
;
import
android.text.TextUtils
;
import
androidx.databinding.ObservableField
;
import
com.dayu.common.Constants
;
import
com.dayu.location.base.BaseMapActivity
;
import
com.dayu.order.R
;
...
...
@@ -17,12 +23,6 @@ import com.dayu.utils.UIUtils;
import
java.util.Collections
;
import
java.util.List
;
import
static
com
.
dayu
.
common
.
Constants
.
ORDER_ID
;
import
static
com
.
dayu
.
common
.
Constants
.
ORDER_STATE
;
import
static
com
.
dayu
.
order
.
common
.
OrderConstant
.
ORDER_SOP_FINISH
;
import
androidx.databinding.ObservableField
;
/**
* Created by luofan
* on 2017/11/8.
...
...
orderCenter/src/main/java/com/dayu/order/ui/activity/OrderDetailsClockActivity.java
0 → 100644
View file @
36906ffd
package
com
.
dayu
.
order
.
ui
.
activity
;
import
androidx.databinding.ObservableField
;
import
com.alibaba.android.arouter.facade.annotation.Route
;
import
com.dayu.base.ui.activity.BaseActivity
;
import
com.dayu.base.ui.activity.ImgGalleryActivty
;
import
com.dayu.order.R
;
import
com.dayu.order.api.protocol.OrderDetail
;
import
com.dayu.order.databinding.ActivityOrderDetailsClockBinding
;
import
com.dayu.order.presenter.orderdetail.OrderDetailClockContract
;
import
com.dayu.order.presenter.orderdetail.OrderDetailClockPresenter
;
import
com.dayu.order.ui.adapter.OrderServerClockAdapter
;
import
com.dayu.provider.router.RouterPath
;
import
java.util.List
;
/**
* 工单详情(打卡)
* on 2023/10/15.
*/
@Route
(
path
=
RouterPath
.
PATH_ORDER_DETAIL_CLOCK
)
public
class
OrderDetailsClockActivity
extends
BaseActivity
<
OrderDetailClockPresenter
,
ActivityOrderDetailsClockBinding
>
implements
OrderDetailClockContract
.
View
{
public
ObservableField
<
Object
>
mDatas
=
new
ObservableField
<>();
public
ObservableField
<
Boolean
>
isShowLine
=
new
ObservableField
<>();
@Override
public
void
setPresenter
()
{
mBind
.
setPresenter
(
mPresenter
);
}
@Override
public
int
getLayoutId
()
{
return
R
.
layout
.
activity_order_details_clock
;
}
@Override
public
void
initView
()
{
mBind
.
titleBack
.
setOnClickListener
(
v
->
dumpBack
());
OrderServerClockAdapter
adapter
=
new
OrderServerClockAdapter
(
false
);
adapter
.
setOrderDetail
(
mPresenter
.
getDetail
());
mBind
.
recyclerView
.
setAdapter
(
adapter
);
}
@Override
public
void
checkSignature
(
String
esignatureImg
)
{
ImgGalleryActivty
.
launch
(
mActivity
,
esignatureImg
);
}
@Override
public
void
init
(
OrderDetail
detail
)
{
}
@Override
public
void
initBtn
()
{
}
@Override
public
void
addFragment
()
{
}
@Override
public
void
setDatas
(
OrderDetail
detail
)
{
}
@Override
public
void
setOrderPhoneNum
(
List
<
String
>
info
)
{
}
}
orderCenter/src/main/java/com/dayu/order/ui/adapter/OrderAdapter.java
View file @
36906ffd
This diff is collapsed.
Click to expand it.
orderCenter/src/main/java/com/dayu/order/ui/adapter/OrderServerClockAdapter.java
0 → 100644
View file @
36906ffd
package
com
.
dayu
.
order
.
ui
.
adapter
;
import
android.content.Intent
;
import
android.text.TextUtils
;
import
android.view.View
;
import
com.dayu.base.ui.activity.VideoPreviewActivty
;
import
com.dayu.base.ui.adapter.CoreAdapter
;
import
com.dayu.common.Constants
;
import
com.dayu.order.R
;
import
com.dayu.order.api.protocol.OrderDetail
;
import
com.dayu.order.databinding.ServeDatailsItemBinding
;
import
com.dayu.order.presenter.orderdetail.OrderDetailClockPresenter
;
import
com.dayu.utils.UIUtils
;
import
java.util.ArrayList
;
/**
* Created by luofan
* on 2018/4/23.
*/
public
class
OrderServerClockAdapter
extends
CoreAdapter
<
OrderDetail
.
RecordBean
,
ServeDatailsItemBinding
>
{
private
OrderDetail
mDetail
;
public
OrderServerClockAdapter
(
boolean
needFoot
)
{
super
(
needFoot
);
}
public
void
setOrderDetail
(
OrderDetail
detail
)
{
mDetail
=
detail
;
}
@Override
protected
void
onBind
(
ServeDatailsItemBinding
holder
,
OrderDetail
.
RecordBean
item
,
int
position
)
{
super
.
onBind
(
holder
,
item
,
position
);
OrderDetailClockPresenter
presenter
=
(
OrderDetailClockPresenter
)
mPresenter
;
if
(
position
==
0
)
{
holder
.
ivCircle
.
setImageResource
(
R
.
drawable
.
icon_circle_blue
);
// holder.serverCheck.setBackgroundResource(R.drawable.tab_blue_react);
// holder.serverCheck.setGravity(Gravity.CENTER);
// holder.serverCheck.setTextColor(UIUtils.getColor(R.color.white));
holder
.
serverTimeComment
.
setTextColor
(
UIUtils
.
getColor
(
R
.
color
.
default_text_color
));
holder
.
serverTime
.
setTextColor
(
UIUtils
.
getColor
(
R
.
color
.
default_text_color
));
holder
.
serverComment
.
setTextColor
(
UIUtils
.
getColor
(
R
.
color
.
default_text_color
));
holder
.
serverState
.
setTextColor
(
UIUtils
.
getColor
(
R
.
color
.
default_text_color
));
}
else
{
holder
.
ivCircle
.
setImageResource
(
R
.
drawable
.
icon_circle_gray
);
// holder.serverCheck.setBackground(null);
// holder.serverCheck.setGravity(Gravity.LEFT);
// holder.serverCheck.setTextColor(UIUtils.getColor(R.color.cl_receiving_order_item_data));
holder
.
serverTimeComment
.
setTextColor
(
UIUtils
.
getColor
(
R
.
color
.
cl_order_text_one
));
holder
.
serverTime
.
setTextColor
(
UIUtils
.
getColor
(
R
.
color
.
cl_order_text_one
));
holder
.
serverComment
.
setTextColor
(
UIUtils
.
getColor
(
R
.
color
.
cl_order_text_one
));
holder
.
serverState
.
setTextColor
(
UIUtils
.
getColor
(
R
.
color
.
cl_order_text_one
));
}
holder
.
serverTime
.
setText
(
item
.
getCreateTime
());
holder
.
serverState
.
setText
(
"【"
+
item
.
getOperation
()
+
"】"
);
holder
.
serverCheck
.
setVisibility
(
View
.
VISIBLE
);
holder
.
serverTimeComment
.
setVisibility
(
View
.
GONE
);
holder
.
serverComment
.
setText
(
item
.
getOperationComment
());
if
((
item
.
getCommentInfo
()
!=
null
&&
item
.
getCommentInfo
().
contains
(
UIUtils
.
getString
(
R
.
string
.
appointment_time
))))
{
holder
.
serverTimeComment
.
setText
(
item
.
getCommentInfo
());
holder
.
serverCheck
.
setVisibility
(
View
.
GONE
);
holder
.
serverTimeComment
.
setVisibility
(
View
.
VISIBLE
);
}
else
if
(
UIUtils
.
getString
(
R
.
string
.
order_remark
).
equals
(
item
.
getCommentName
()))
{
if
(
TextUtils
.
isEmpty
(
item
.
getCommentInfo
()))
{
holder
.
serverTimeComment
.
setText
(
UIUtils
.
getString
(
R
.
string
.
no_remark
));
}
else
{
holder
.
serverTimeComment
.
setText
(
UIUtils
.
getString
(
R
.
string
.
remark_order
)
+
item
.
getCommentInfo
());
}
holder
.
serverCheck
.
setText
(
""
);
holder
.
serverTimeComment
.
setVisibility
(
View
.
VISIBLE
);
}
else
if
(
UIUtils
.
getString
(
R
.
string
.
system_chcek
).
equals
(
item
.
getOperation
()))
{
holder
.
serverCheck
.
setText
(
UIUtils
.
getString
(
R
.
string
.
check_accept
));
holder
.
serverTimeComment
.
setVisibility
(
View
.
GONE
);
}
else
if
(
UIUtils
.
getString
(
R
.
string
.
reassignment_reason
).
equals
(
item
.
getCommentName
()))
{
if
(
TextUtils
.
isEmpty
(
item
.
getCommentInfo
()))
{
holder
.
serverTimeComment
.
setText
(
UIUtils
.
getString
(
R
.
string
.
no_reassignment
));
}
else
{
holder
.
serverTimeComment
.
setText
(
UIUtils
.
getString
(
R
.
string
.
reassignment_reason
)
+
":"
+
item
.
getCommentInfo
());
}
holder
.
serverCheck
.
setVisibility
(
View
.
GONE
);
holder
.
serverTimeComment
.
setVisibility
(
View
.
VISIBLE
);
}
else
if
(
UIUtils
.
getString
(
R
.
string
.
cancle_reason
).
equals
(
item
.
getCommentName
()))
{
if
(
TextUtils
.
isEmpty
(
item
.
getCommentInfo
()))
{
holder
.
serverTimeComment
.
setText
(
UIUtils
.
getString
(
R
.
string
.
no_cancle
));
}
else
{
holder
.
serverTimeComment
.
setText
(
UIUtils
.
getString
(
R
.
string
.
cancle_reason
)
+
":"
+
item
.
getCommentInfo
());
}
holder
.
serverCheck
.
setVisibility
(
View
.
GONE
);
holder
.
serverTimeComment
.
setVisibility
(
View
.
VISIBLE
);
}
else
if
(
UIUtils
.
getString
(
R
.
string
.
part_record
).
equals
(
item
.
getOperation
()))
{
holder
.
serverCheck
.
setVisibility
(
View
.
GONE
);
holder
.
serverTimeComment
.
setVisibility
(
View
.
GONE
);
}
else
{
holder
.
serverTimeComment
.
setVisibility
(
View
.
GONE
);
if
(
TextUtils
.
isEmpty
(
item
.
getCommentName
()))
{
holder
.
serverCheck
.
setVisibility
(
View
.
GONE
);
}
else
{
holder
.
serverCheck
.
setText
(
item
.
getCommentName
());
}
}
if
(
UIUtils
.
getString
(
R
.
string
.
user_chcek
).
equals
(
item
.
getOperation
()))
{
holder
.
serverCheck
.
setText
(
"验收视频"
);
holder
.
serverCheck
.
setVisibility
(
View
.
VISIBLE
);
holder
.
serverTimeComment
.
setVisibility
(
View
.
GONE
);
}
// if (UIUtils.getString(R.string.check_accept).equals(item.getCommentName()) || UIUtils.getString(R.string.system_chcek).equals(item.getOperation())) {
if
(
UIUtils
.
getString
(
R
.
string
.
system_chcek
).
equals
(
item
.
getOperation
()))
{
if
(
mDetail
.
getCreatedSource
()
==
2
||
mDetail
.
getCreatedSource
()
==
3
||
mDetail
.
getCreatedSource
()
==
4
)
{
holder
.
serverCheck
.
setVisibility
(
View
.
GONE
);
}
else
{
holder
.
serverCheck
.
setVisibility
(
View
.
VISIBLE
);
}
holder
.
serverCheck
.
setOnClickListener
(
v
->
presenter
.
dumpCheckContent
(
position
));
}
if
(
UIUtils
.
getString
(
R
.
string
.
user_chcek
).
equals
(
item
.
getOperation
()))
{
holder
.
serverCheck
.
setOnClickListener
(
v
->
{
ArrayList
<
String
>
list
=
new
ArrayList
<>();
list
.
add
(
mDetail
.
getShortVideoUrl
());
Intent
intent
=
new
Intent
(
mContext
,
VideoPreviewActivty
.
class
);
intent
.
putStringArrayListExtra
(
Constants
.
BUNDLE_KEY_ID
,
list
);
mContext
.
startActivity
(
intent
);
});
}
if
(
UIUtils
.
getString
(
R
.
string
.
order_remark
).
equals
(
item
.
getCommentName
()))
{
holder
.
serverCheck
.
setOnClickListener
(
v
->
presenter
.
dumpCheckContent
(
position
));
}
if
(
UIUtils
.
getString
(
R
.
string
.
check_location
).
equals
(
item
.
getCommentName
()))
{
holder
.
serverCheck
.
setOnClickListener
(
v
->
presenter
.
dumpMap
(
item
.
getLatitude
(),
item
.
getLongitude
(),
item
.
getAddress
()));
}
if
(
UIUtils
.
getString
(
R
.
string
.
check_reason
).
equals
(
item
.
getCommentName
()))
{
if
(
mDetail
.
getCreatedSource
()
==
2
||
mDetail
.
getCreatedSource
()
==
3
||
mDetail
.
getCreatedSource
()
==
4
)
{
if
(
item
.
getCommentInfo
()
!=
null
)
{
holder
.
serverCheck
.
setOnClickListener
(
v
->
presenter
.
dumpToSop
(
Integer
.
parseInt
(
item
.
getCommentInfo
())));
}
}
else
{
holder
.
serverCheck
.
setOnClickListener
(
v
->
presenter
.
dumpToSop
(
0
));
}
}
if
(
item
.
getServiceProgessTimeNum
()
==
9
)
{
holder
.
serverTimeComment
.
setVisibility
(
View
.
VISIBLE
);
holder
.
serverTimeComment
.
setText
(
item
.
getCommentInfo
());
}
}
}
orderCenter/src/main/java/com/dayu/order/ui/fragment/OrderSecondTabFragment.java
View file @
36906ffd
package
com
.
dayu
.
order
.
ui
.
fragment
;
import
static
com
.
dayu
.
order
.
common
.
OrderConstant
.
ORDER_FINISH
;
import
static
com
.
dayu
.
order
.
common
.
OrderConstant
.
ORDER_NOCONTACT_FINISH
;
import
static
com
.
dayu
.
order
.
common
.
OrderConstant
.
ORDER_SOP_FINISH
;
import
static
com
.
dayu
.
order
.
common
.
OrderConstant
.
ORDER_YUYUE
;
import
com.dayu.base.ui.fragment.BaseFragment
;
import
com.dayu.common.Constants
;
import
com.dayu.order.R
;
...
...
@@ -21,11 +26,6 @@ import org.greenrobot.eventbus.ThreadMode;
import
java.util.List
;
import
static
com
.
dayu
.
order
.
common
.
OrderConstant
.
ORDER_FINISH
;
import
static
com
.
dayu
.
order
.
common
.
OrderConstant
.
ORDER_NOCONTACT_FINISH
;
import
static
com
.
dayu
.
order
.
common
.
OrderConstant
.
ORDER_SOP_FINISH
;
import
static
com
.
dayu
.
order
.
common
.
OrderConstant
.
ORDER_YUYUE
;
/**
* 待服务的Fragment
...
...
@@ -59,7 +59,12 @@ public class OrderSecondTabFragment extends BaseFragment<OrderDoingPresenter, Fr
mBind
.
recyclerView
.
setOnItemClickListener
(
new
OnItemClickListener
<
Order
,
FragmentOrderdoingItemBinding
>()
{
@Override
public
void
OnItemClick
(
Order
item
,
FragmentOrderdoingItemBinding
bind
)
{
mPresenter
.
dumpDetail
(
item
.
getId
());
if
(
7
==
item
.
getSource
()){
mPresenter
.
dumpDetailClock
(
item
.
getId
());
}
else
{
mPresenter
.
dumpDetail
(
item
.
getId
());
}
}
});
}
...
...
orderCenter/src/main/release/AndroidManifest.xml
View file @
36906ffd
...
...
@@ -46,6 +46,13 @@
android:screenOrientation=
"portrait"
/>
<activity
android:name=
".ui.activity.OrderDetailsClockActivity"
android:launchMode=
"singleTask"
android:windowSoftInputMode=
"adjustResize"
android:configChanges=
"orientation|screenSize|keyboardHidden"
android:screenOrientation=
"portrait"
/>
<activity
android:name=
".ui.activity.ReturnPartNewActivity"
android:screenOrientation=
"portrait"
/>
<activity
...
...
orderCenter/src/main/res/layout/activity_order_details_clock.xml
0 → 100644
View file @
36906ffd
<?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"
>
<data>
<variable
name=
"presenter"
type=
"com.dayu.order.presenter.orderdetail.OrderDetailClockPresenter"
/>
<import
type=
"android.view.View"
/>
</data>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:orientation=
"vertical"
>
<RelativeLayout
android:id=
"@+id/rl_title"
style=
"@style/title"
>
<TextView
android:id=
"@+id/tv_title"
style=
"@style/text_title"
android:text=
"@string/order_detail"
/>
<ImageView
android:id=
"@+id/title_back"
style=
"@style/title_image_back"
/>
<LinearLayout
android:id=
"@+id/ll_help_tool"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentRight=
"true"
android:layout_centerVertical=
"true"
android:layout_marginRight=
"15dp"
android:gravity=
"center_vertical"
android:visibility=
"gone"
android:orientation=
"horizontal"
>
<ImageView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:src=
"@drawable/ic_xiaolvren"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"@string/help_tool"
android:layout_marginLeft=
"3dp"
android:textColor=
"@color/text_common_blue"
android:textSize=
"14sp"
/>
</LinearLayout>
<ImageView
style=
"@style/card_line"
android:layout_alignParentBottom=
"true"
/>
</RelativeLayout>
<androidx.core.widget.NestedScrollView
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:orientation=
"vertical"
>
<RelativeLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
>
<com.dayu.widgets.DottdeLineView
android:id=
"@+id/dl_line"
android:layout_width=
"1dp"
android:layout_height=
"wrap_content"
android:layout_marginLeft=
"24dp"
android:layerType=
"software"
android:visibility=
"@{presenter.isShowLine?View.VISIBLE:View.GONE}"
/>
<com.dayu.widgets.LRecyclerView
android:id=
"@+id/recyclerView"
setPresenter=
"@{presenter}"
android:layout_width=
"match_parent"
android:layout_height=
"200dp"
android:background=
"@color/transparent"
app:isRefreshable=
"false"
app:itemType=
"@layout/serve_datails_item"
android:layout_marginBottom=
"@dimen/dp_10"
/>
</RelativeLayout>
<TextView
android:layout_width=
"match_parent"
android:layout_height=
"50dp"
android:background=
"@color/common_red"
/>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</LinearLayout>
</layout>
\ No newline at end of file
provider/src/main/java/com/dayu/provider/router/RouterPath.java
View file @
36906ffd
...
...
@@ -19,6 +19,7 @@ public class RouterPath {
* 工单模块.
*/
public
final
static
String
PATH_ORDER_DETAIL
=
"/order/detail"
;
public
final
static
String
PATH_ORDER_DETAIL_CLOCK
=
"/order/detail_clock"
;
public
final
static
String
PATH_ORDER_HISTORY
=
"/order/history"
;
public
final
static
String
PATH_ORDER_KONWLEDGE_CENTER
=
"/order/konwledge_center"
;
public
final
static
String
PATH_ORDER_KNOWLEDGE_DETAIL
=
"/order/konwledge_detail"
;
...
...
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