Skip to content
项目
Groups
代码片段
帮助
正在加载...
Sign in / Register
Toggle navigation
W
workoffice
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图表
统计图
Create a new issue
作业
提交
议题看板
Open sidebar
冷广德
workoffice
Commits
d584580f
提交
d584580f
authored
5月 10, 2020
作者:
lgd
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
1.上缴财税
2.//TODO ,质检接口数据无对应问题,内部交易订单审核,审核规则,领用申请列表/退件列表/参数,坩埚下单,mes其他页面,mes质量反馈,编辑任务担当无法修改.支数参数
上级
e1265815
隐藏空白字符变更
内嵌
并排
正在显示
27 个修改的文件
包含
2361 行增加
和
58 行删除
+2361
-58
AndroidManifest.xml
app/src/main/AndroidManifest.xml
+24
-0
FinancailDetailBean.java
...main/java/com/wd/workoffice/bean/FinancailDetailBean.java
+153
-0
FinancialTypeBean.java
...c/main/java/com/wd/workoffice/bean/FinancialTypeBean.java
+144
-0
AddFinancialNumEvent.java
...va/com/wd/workoffice/bean/event/AddFinancialNumEvent.java
+14
-0
CheckFinancialEvent.java
...ava/com/wd/workoffice/bean/event/CheckFinancialEvent.java
+14
-0
ApiService.java
app/src/main/java/com/wd/workoffice/retrofit/ApiService.java
+40
-0
StoreFinancialActivity.java
...koffice/ui/activity/bat/store/StoreFinancialActivity.java
+158
-50
StoreFinancialAddActivity.java
...fice/ui/activity/bat/store/StoreFinancialAddActivity.java
+226
-0
StoreFinancialDetailActivity.java
...e/ui/activity/bat/store/StoreFinancialDetailActivity.java
+269
-0
StoreFinancialModifyActivity.java
...e/ui/activity/bat/store/StoreFinancialModifyActivity.java
+236
-0
FinancialAdapter.java
...n/java/com/wd/workoffice/ui/adapter/FinancialAdapter.java
+39
-0
FinancialAddAdapter.java
...ava/com/wd/workoffice/ui/adapter/FinancialAddAdapter.java
+62
-0
FinancialDetailAdapter.java
.../com/wd/workoffice/ui/adapter/FinancialDetailAdapter.java
+109
-0
FinancialModifyAdapter.java
.../com/wd/workoffice/ui/adapter/FinancialModifyAdapter.java
+57
-0
MainFragment.java
app/src/main/java/com/wd/workoffice/ui/fg/MainFragment.java
+11
-7
PickTimeUtils.java
app/src/main/java/com/wd/workoffice/util/PickTimeUtils.java
+8
-0
WorkUtils.java
app/src/main/java/com/wd/workoffice/util/WorkUtils.java
+30
-0
activity_financial_add.xml
app/src/main/res/layout/activity_financial_add.xml
+135
-0
activity_financial_detail.xml
app/src/main/res/layout/activity_financial_detail.xml
+148
-0
activity_financial_modify.xml
app/src/main/res/layout/activity_financial_modify.xml
+113
-0
fg_work.xml
app/src/main/res/layout/fg_work.xml
+1
-0
item_financial.xml
app/src/main/res/layout/item_financial.xml
+128
-0
item_financial_add.xml
app/src/main/res/layout/item_financial_add.xml
+49
-0
item_financial_detail.xml
app/src/main/res/layout/item_financial_detail.xml
+122
-0
item_financial_modify.xml
app/src/main/res/layout/item_financial_modify.xml
+60
-0
menu_add.xml
app/src/main/res/menu/menu_add.xml
+2
-1
menu_history.xml
app/src/main/res/menu/menu_history.xml
+9
-0
没有找到文件。
app/src/main/AndroidManifest.xml
浏览文件 @
d584580f
...
@@ -1810,6 +1810,30 @@
...
@@ -1810,6 +1810,30 @@
android:screenOrientation=
"portrait"
android:screenOrientation=
"portrait"
android:theme=
"@style/Work.Base"
android:theme=
"@style/Work.Base"
android:windowSoftInputMode=
"adjustPan"
/>
android:windowSoftInputMode=
"adjustPan"
/>
<activity
android:name=
".ui.activity.bat.store.StoreFinancialAddActivity"
android:configChanges=
"keyboardHidden|orientation"
android:label=
"添加财税"
android:launchMode=
"singleTop"
android:screenOrientation=
"portrait"
android:theme=
"@style/Work.Base"
android:windowSoftInputMode=
"adjustPan"
/>
<activity
android:name=
".ui.activity.bat.store.StoreFinancialDetailActivity"
android:configChanges=
"keyboardHidden|orientation"
android:label=
"财税详情"
android:launchMode=
"singleTop"
android:screenOrientation=
"portrait"
android:theme=
"@style/Work.Base"
android:windowSoftInputMode=
"adjustPan"
/>
<activity
android:name=
".ui.activity.bat.store.StoreFinancialModifyActivity"
android:configChanges=
"keyboardHidden|orientation"
android:label=
"编辑财税"
android:launchMode=
"singleTop"
android:screenOrientation=
"portrait"
android:theme=
"@style/Work.Base"
android:windowSoftInputMode=
"adjustPan"
/>
<provider
<provider
android:name=
"androidx.core.content.FileProvider"
android:name=
"androidx.core.content.FileProvider"
android:authorities=
"com.wd.workoffice.fileprovider"
android:authorities=
"com.wd.workoffice.fileprovider"
...
...
app/src/main/java/com/wd/workoffice/bean/FinancailDetailBean.java
0 → 100644
浏览文件 @
d584580f
package
com
.
wd
.
workoffice
.
bean
;
/**
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public
class
FinancailDetailBean
{
/**
* createdBy : 680
* createdByName : null
* createdTime : 2020-03-28 11:49:40
* updatedBy : null
* updatedByName : null
* updatedTime : null
* id : 89593c387b57441a9f5508bb167fc279
* taxId : SO10748
* taxType : 2
* taxTypeName : 归还贷款
* amount : 12.0
* status : 0
* auditRemark : null
* editRemark : null
*/
private
int
createdBy
;
private
Object
createdByName
;
private
String
createdTime
;
private
Object
updatedBy
;
private
Object
updatedByName
;
private
Object
updatedTime
;
private
String
id
;
private
String
taxId
;
private
int
taxType
;
private
String
taxTypeName
;
private
double
amount
;
private
String
status
;
private
String
auditRemark
;
private
Object
editRemark
;
public
int
getCreatedBy
()
{
return
createdBy
;
}
public
void
setCreatedBy
(
int
createdBy
)
{
this
.
createdBy
=
createdBy
;
}
public
Object
getCreatedByName
()
{
return
createdByName
;
}
public
void
setCreatedByName
(
Object
createdByName
)
{
this
.
createdByName
=
createdByName
;
}
public
String
getCreatedTime
()
{
return
createdTime
;
}
public
void
setCreatedTime
(
String
createdTime
)
{
this
.
createdTime
=
createdTime
;
}
public
Object
getUpdatedBy
()
{
return
updatedBy
;
}
public
void
setUpdatedBy
(
Object
updatedBy
)
{
this
.
updatedBy
=
updatedBy
;
}
public
Object
getUpdatedByName
()
{
return
updatedByName
;
}
public
void
setUpdatedByName
(
Object
updatedByName
)
{
this
.
updatedByName
=
updatedByName
;
}
public
Object
getUpdatedTime
()
{
return
updatedTime
;
}
public
void
setUpdatedTime
(
Object
updatedTime
)
{
this
.
updatedTime
=
updatedTime
;
}
public
String
getId
()
{
return
id
;
}
public
void
setId
(
String
id
)
{
this
.
id
=
id
;
}
public
String
getTaxId
()
{
return
taxId
;
}
public
void
setTaxId
(
String
taxId
)
{
this
.
taxId
=
taxId
;
}
public
int
getTaxType
()
{
return
taxType
;
}
public
void
setTaxType
(
int
taxType
)
{
this
.
taxType
=
taxType
;
}
public
String
getTaxTypeName
()
{
return
taxTypeName
;
}
public
void
setTaxTypeName
(
String
taxTypeName
)
{
this
.
taxTypeName
=
taxTypeName
;
}
public
double
getAmount
()
{
return
amount
;
}
public
void
setAmount
(
double
amount
)
{
this
.
amount
=
amount
;
}
public
String
getStatus
()
{
return
status
;
}
public
void
setStatus
(
String
status
)
{
this
.
status
=
status
;
}
public
String
getAuditRemark
()
{
return
auditRemark
;
}
public
void
setAuditRemark
(
String
auditRemark
)
{
this
.
auditRemark
=
auditRemark
;
}
public
Object
getEditRemark
()
{
return
editRemark
;
}
public
void
setEditRemark
(
Object
editRemark
)
{
this
.
editRemark
=
editRemark
;
}
}
app/src/main/java/com/wd/workoffice/bean/FinancialTypeBean.java
0 → 100644
浏览文件 @
d584580f
package
com
.
wd
.
workoffice
.
bean
;
/**
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public
class
FinancialTypeBean
{
/**
* createdBy : null
* createdByName : null
* createdTime : null
* updatedBy : null
* updatedByName : null
* updatedTime : null
* id : 7
* code : DAIKUANLIXI
* name : 贷款利息
* orderNum : null
* status : null
* deptIds : null
* deptNames : null
*/
private
Object
createdBy
;
private
Object
createdByName
;
private
Object
createdTime
;
private
Object
updatedBy
;
private
Object
updatedByName
;
private
Object
updatedTime
;
private
int
id
;
private
String
code
;
private
String
name
;
private
Object
orderNum
;
private
Object
status
;
private
Object
deptIds
;
private
Object
deptNames
;
public
Object
getCreatedBy
()
{
return
createdBy
;
}
public
void
setCreatedBy
(
Object
createdBy
)
{
this
.
createdBy
=
createdBy
;
}
public
Object
getCreatedByName
()
{
return
createdByName
;
}
public
void
setCreatedByName
(
Object
createdByName
)
{
this
.
createdByName
=
createdByName
;
}
public
Object
getCreatedTime
()
{
return
createdTime
;
}
public
void
setCreatedTime
(
Object
createdTime
)
{
this
.
createdTime
=
createdTime
;
}
public
Object
getUpdatedBy
()
{
return
updatedBy
;
}
public
void
setUpdatedBy
(
Object
updatedBy
)
{
this
.
updatedBy
=
updatedBy
;
}
public
Object
getUpdatedByName
()
{
return
updatedByName
;
}
public
void
setUpdatedByName
(
Object
updatedByName
)
{
this
.
updatedByName
=
updatedByName
;
}
public
Object
getUpdatedTime
()
{
return
updatedTime
;
}
public
void
setUpdatedTime
(
Object
updatedTime
)
{
this
.
updatedTime
=
updatedTime
;
}
public
int
getId
()
{
return
id
;
}
public
void
setId
(
int
id
)
{
this
.
id
=
id
;
}
public
String
getCode
()
{
return
code
;
}
public
void
setCode
(
String
code
)
{
this
.
code
=
code
;
}
public
String
getName
()
{
return
name
;
}
public
void
setName
(
String
name
)
{
this
.
name
=
name
;
}
public
Object
getOrderNum
()
{
return
orderNum
;
}
public
void
setOrderNum
(
Object
orderNum
)
{
this
.
orderNum
=
orderNum
;
}
public
Object
getStatus
()
{
return
status
;
}
public
void
setStatus
(
Object
status
)
{
this
.
status
=
status
;
}
public
Object
getDeptIds
()
{
return
deptIds
;
}
public
void
setDeptIds
(
Object
deptIds
)
{
this
.
deptIds
=
deptIds
;
}
public
Object
getDeptNames
()
{
return
deptNames
;
}
public
void
setDeptNames
(
Object
deptNames
)
{
this
.
deptNames
=
deptNames
;
}
}
app/src/main/java/com/wd/workoffice/bean/event/AddFinancialNumEvent.java
0 → 100644
浏览文件 @
d584580f
package
com
.
wd
.
workoffice
.
bean
.
event
;
/**
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public
class
AddFinancialNumEvent
{
public
AddFinancialNumEvent
()
{
}
}
app/src/main/java/com/wd/workoffice/bean/event/CheckFinancialEvent.java
0 → 100644
浏览文件 @
d584580f
package
com
.
wd
.
workoffice
.
bean
.
event
;
/**
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public
class
CheckFinancialEvent
{
public
CheckFinancialEvent
()
{
}
}
app/src/main/java/com/wd/workoffice/retrofit/ApiService.java
浏览文件 @
d584580f
...
@@ -1079,6 +1079,14 @@ public interface ApiService {
...
@@ -1079,6 +1079,14 @@ public interface ApiService {
Observable
<
BaseBean
>
logisticsApply
(
@Body
RequestBody
requestBody
);
Observable
<
BaseBean
>
logisticsApply
(
@Body
RequestBody
requestBody
);
/**
* 获取财税分页
*
* @return
*/
@PUT
(
"/finance-tax/cancel/{id}"
)
Observable
<
BaseBean
>
storeFinancialCancel
(
@Path
(
"id"
)
String
id
);
/**
/**
* 获取财税分页
* 获取财税分页
*
*
...
@@ -1086,6 +1094,38 @@ public interface ApiService {
...
@@ -1086,6 +1094,38 @@ public interface ApiService {
*/
*/
@GET
(
"/finance-tax/page/list"
)
@GET
(
"/finance-tax/page/list"
)
Observable
<
BaseBean
>
storeFinancial
(
@QueryMap
Map
<
String
,
Object
>
param
);
Observable
<
BaseBean
>
storeFinancial
(
@QueryMap
Map
<
String
,
Object
>
param
);
/**
* 获取财税明细
*
* @return
*/
@GET
(
"/finance-tax/detail/{taxId}"
)
Observable
<
BaseBean
>
storeFinancialDetail
(
@Path
(
"taxId"
)
String
id
);
/**
* 获取财税明细
*
* @return
*/
@PUT
(
"/finance-tax/audit"
)
Observable
<
BaseBean
>
storeFinancialCheck
(
@Body
RequestBody
requestBody
);
/**
* 财税类别
*
* @return
*/
@GET
(
"finance-tax-type/listByDept/{deptId}"
)
Observable
<
BaseBean
>
financialType
(
@Path
(
"deptId"
)
String
deptId
);
/**
* 新增财税
*
* @return
*/
@POST
(
"/finance-tax/addApply"
)
Observable
<
BaseBean
>
addFinancial
(
@Body
RequestBody
requestBody
);
/**
/**
* 修改个人信息,头像和用户名(app)
* 修改个人信息,头像和用户名(app)
...
...
app/src/main/java/com/wd/workoffice/ui/activity/bat/store/StoreFinancialActivity.java
浏览文件 @
d584580f
package
com
.
wd
.
workoffice
.
ui
.
activity
.
bat
.
store
;
package
com
.
wd
.
workoffice
.
ui
.
activity
.
bat
.
store
;
import
android.os.Bundle
;
import
android.view.View
;
import
android.view.Menu
;
import
android.view.MenuItem
;
import
com.google.android.material.tabs.TabLayout
;
import
com.alibaba.fastjson.JSON
;
import
com.chad.library.adapter.base.BaseQuickAdapter
;
import
com.scwang.smartrefresh.layout.SmartRefreshLayout
;
import
com.wd.workoffice.R
;
import
com.wd.workoffice.R
;
import
com.wd.workoffice.app.BaseBean
;
import
com.wd.workoffice.app.WorkToolBarActivity
;
import
com.wd.workoffice.app.WorkToolBarActivity
;
import
com.wd.workoffice.bean.FinancialBean
;
import
com.wd.workoffice.bean.event.CheckFinancialEvent
;
import
com.wd.workoffice.bean.event.CheckLogisticEvent
;
import
com.wd.workoffice.bean.workEnum.PagePermissionType
;
import
com.wd.workoffice.bean.workEnum.PagePermissionType
;
import
com.wd.workoffice.
ui.activity.bat.work.WorkFinancialLogisticAddActivity
;
import
com.wd.workoffice.
retrofit.RtfUtils
;
import
com.wd.workoffice.
ui.adapter.VpDataAdapt
er
;
import
com.wd.workoffice.
retrofit.WorkObserv
er
;
import
com.wd.workoffice.ui.
fg.StoreFinancialFragment
;
import
com.wd.workoffice.ui.
adapter.FinancialAdapter
;
import
com.wd.workoffice.u
i.fg.WorkLogisticsFragment
;
import
com.wd.workoffice.u
til.UserKeeper
;
import
com.wd.workoffice.util.WorkUtils
;
import
com.wd.workoffice.util.WorkUtils
;
import
org.greenrobot.eventbus.EventBus
;
import
org.greenrobot.eventbus.Subscribe
;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
import
androidx.fragment.app.Fragment
;
import
androidx.recyclerview.widget.LinearLayoutManager
;
import
androidx.fragment.app.FragmentManager
;
import
androidx.recyclerview.widget.RecyclerView
;
import
androidx.viewpager.widget.ViewPager
;
import
butterknife.BindView
;
import
butterknife.BindView
;
import
butterknife.ButterKnife
;
import
butterknife.ButterKnife
;
import
flexible.xd.android_base.network.rtfhttp.Transformer
;
import
static
com
.
google
.
android
.
material
.
tabs
.
TabLayout
.
MODE_FIXED
;
import
io.reactivex.disposables.Disposable
;
/**
/**
* 财税
* 财税
...
@@ -33,67 +40,168 @@ import static com.google.android.material.tabs.TabLayout.MODE_FIXED;
...
@@ -33,67 +40,168 @@ import static com.google.android.material.tabs.TabLayout.MODE_FIXED;
**/
**/
public
class
StoreFinancialActivity
extends
WorkToolBarActivity
{
public
class
StoreFinancialActivity
extends
WorkToolBarActivity
{
@BindView
(
R
.
id
.
tl_tab
)
@BindView
(
R
.
id
.
rv_data
)
TabLayout
tlTab
;
RecyclerView
rvData
;
@BindView
(
R
.
id
.
vp_data
)
@BindView
(
R
.
id
.
srl_refresh
)
ViewPager
vpData
;
SmartRefreshLayout
srlRefresh
;
private
String
tab
[]
=
{
private
int
page
=
1
;
"全部"
,
"待审核"
,
"不通过"
,
"已通过"
};
private
Map
<
String
,
Object
>
param
;
private
String
order
[]
=
{
private
FinancialAdapter
dataAdapter
;
""
,
"0"
,
"2"
,
"1"
};
//0:待审核 1:已通过 2已驳回 3:待重审 9:已作废
private
List
<
FinancialBean
.
RecordsBean
>
dataList
;
@Override
protected
int
layoutId
()
{
return
R
.
layout
.
fg_work_contacts
;
}
@Override
@Override
protected
void
initView
()
{
protected
void
initView
()
{
ButterKnife
.
bind
(
this
);
ButterKnife
.
bind
(
this
);
tlTab
.
setupWithViewPager
(
vpData
);
rvData
.
setLayoutManager
(
new
LinearLayoutManager
(
this
,
RecyclerView
.
VERTICAL
,
false
));
tlTab
.
setTabMode
(
MODE_FIXED
);
}
}
@Override
@Override
protected
void
initData
()
{
protected
void
initData
()
{
if
(!
WorkUtils
.
hasPermission
(
PagePermissionType
.
FINANCE
.
getPermission
()))
{
if
(!
WorkUtils
.
hasPermission
(
PagePermissionType
.
FINANCE
.
getPermission
()))
{
toast
(
R
.
string
.
permission
);
toast
(
R
.
string
.
permission
);
return
;
return
;
}
}
FragmentManager
sfm
=
getSupportFragmentManager
();
param
=
WorkUtils
.
pageKey
();
List
<
Fragment
>
data
=
new
ArrayList
<>();
page
=
1
;
for
(
int
i
=
0
;
i
<
tab
.
length
;
i
++)
{
param
.
put
(
"current"
,
page
);
StoreFinancialFragment
saleFragment
=
new
StoreFinancialFragment
();
param
.
put
(
"payDept"
,
UserKeeper
.
getInstance
().
getUserDepId
()
);
Bundle
bundle
=
new
Bundle
();
dataList
=
new
ArrayList
<>();
bundle
.
putString
(
"state"
,
order
[
i
]);
dataAdapter
=
new
FinancialAdapter
(
R
.
layout
.
item_financial
,
dataList
);
saleFragment
.
setArguments
(
bundle
);
dataAdapter
.
bindToRecyclerView
(
rvData
);
data
.
add
(
saleFragment
);
dataAdapter
.
setEmptyView
(
R
.
layout
.
view_empty_content
,
rvData
);
getData
();
}
}
VpDataAdapter
vpFgAdapter
=
new
VpDataAdapter
(
sfm
,
data
);
private
void
getData
()
{
vpData
.
setAdapter
(
vpFgAdapter
);
RtfUtils
.
getRtf
().
storeFinancial
(
param
).
compose
(
Transformer
.
schedule
()).
subscribe
(
new
WorkObserver
<
BaseBean
>()
{
for
(
int
i
=
0
;
i
<
tab
.
length
;
i
++)
{
@Override
tlTab
.
getTabAt
(
i
).
setText
(
tab
[
i
]);
public
void
doOnSubscribe
(
Disposable
d
)
{
}
}
@Override
public
void
onFail
(
String
errorMsg
)
{
hideLoading
();
toast
(
errorMsg
);
}
@Override
public
void
onSuccess
(
BaseBean
data
)
{
hideLoading
();
if
(
data
.
getCode
()
!=
0
)
{
toast
(
data
.
getMessage
());
return
;
}
List
<
FinancialBean
.
RecordsBean
>
getList
=
JSON
.
parseObject
(
data
.
getData
().
toString
(),
FinancialBean
.
class
).
getRecords
();
if
(
page
==
1
)
{
srlRefresh
.
finishRefresh
();
dataList
.
clear
();
dataList
.
addAll
(
getList
);
dataAdapter
.
notifyDataSetChanged
();
dataAdapter
.
loadMoreComplete
();
}
else
{
dataAdapter
.
loadMoreComplete
();
dataList
.
addAll
(
getList
);
dataAdapter
.
notifyDataSetChanged
();
}
if
(
getList
.
size
()
==
0
)
{
dataAdapter
.
loadMoreEnd
();
}
else
{
page
++;
}
}
});
}
}
@Override
@Override
protected
void
initEvent
()
{
protected
void
initEvent
()
{
srlRefresh
.
setOnRefreshListener
(
refreshLayout
->
{
page
=
1
;
param
.
put
(
"current"
,
page
);
getData
();
});
dataAdapter
.
setOnLoadMoreListener
(()
->
{
param
.
put
(
"current"
,
page
);
getData
();
},
rvData
);
dataAdapter
.
setOnItemClickListener
(
new
BaseQuickAdapter
.
OnItemClickListener
()
{
@Override
public
void
onItemClick
(
BaseQuickAdapter
adapter
,
View
view
,
int
position
)
{
if
(!
WorkUtils
.
hasPermission
(
PagePermissionType
.
FINANCE_DETAIL
.
getPermission
()))
{
toast
(
R
.
string
.
permission
);
return
;
}
startActivity
(
StoreFinancialDetailActivity
.
class
,
"info"
,
JSON
.
toJSONString
(
dataList
.
get
(
position
)));
}
});
dataAdapter
.
setOnItemChildClickListener
(
new
BaseQuickAdapter
.
OnItemChildClickListener
()
{
@Override
public
void
onItemChildClick
(
BaseQuickAdapter
adapter
,
View
view
,
int
position
)
{
switch
(
view
.
getId
()){
case
R
.
id
.
tv_modify
:
startActivity
(
StoreFinancialModifyActivity
.
class
,
"info"
,
JSON
.
toJSONString
(
dataList
.
get
(
position
)));
break
;
case
R
.
id
.
tv_delete
:
delete
(
dataList
.
get
(
position
).
getId
(),
position
);
break
;
}
}
});
}
}
@Override
private
void
delete
(
String
id
,
int
position
)
{
protected
int
layoutId
()
{
RtfUtils
.
getRtf
().
storeFinancialCancel
(
id
).
compose
(
Transformer
.
schedule
()).
subscribe
(
new
WorkObserver
<
BaseBean
>()
{
return
R
.
layout
.
activity_order
;
@Override
public
void
doOnSubscribe
(
Disposable
d
)
{
}
@Override
public
void
onFail
(
String
errorMsg
)
{
hideLoading
();
toast
(
errorMsg
);
}
@Override
public
void
onSuccess
(
BaseBean
data
)
{
hideLoading
();
if
(
data
.
getCode
()
!=
0
)
{
toast
(
data
.
getMessage
());
return
;
}
toast
(
"作废成功"
);
dataList
.
get
(
position
).
setStatus
(
"9"
);
dataAdapter
.
notifyItemChanged
(
position
);
}
});
}
}
@Override
@Override
public
boolean
onCreateOptionsMenu
(
Menu
menu
)
{
public
void
onStart
(
)
{
getMenuInflater
().
inflate
(
R
.
menu
.
menu_add
,
menu
);
super
.
onStart
(
);
return
super
.
onCreateOptionsMenu
(
menu
);
EventBus
.
getDefault
().
register
(
this
);
}
}
@Override
@Override
public
boolean
onOptionsItemSelected
(
MenuItem
item
)
{
public
void
onStop
()
{
switch
(
item
.
getItemId
())
{
super
.
onStop
();
case
R
.
id
.
add
:
EventBus
.
getDefault
().
unregister
(
this
);
startActivity
(
WorkFinancialLogisticAddActivity
.
class
);
}
break
;
}
@Subscribe
return
super
.
onOptionsItemSelected
(
item
);
public
void
refresh
(
CheckFinancialEvent
event
)
{
page
=
1
;
param
.
put
(
"current"
,
page
);
getData
();
}
}
}
}
app/src/main/java/com/wd/workoffice/ui/activity/bat/store/StoreFinancialAddActivity.java
0 → 100644
浏览文件 @
d584580f
package
com
.
wd
.
workoffice
.
ui
.
activity
.
bat
.
store
;
import
android.text.TextUtils
;
import
android.view.Menu
;
import
android.view.MenuItem
;
import
android.view.View
;
import
android.widget.EditText
;
import
android.widget.RelativeLayout
;
import
android.widget.TextView
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.bigkoo.pickerview.listener.OnTimeSelectListener
;
import
com.wd.workoffice.R
;
import
com.wd.workoffice.app.BaseBean
;
import
com.wd.workoffice.app.WorkToolBarActivity
;
import
com.wd.workoffice.bean.FinancialTypeBean
;
import
com.wd.workoffice.bean.event.AddFinancialNumEvent
;
import
com.wd.workoffice.retrofit.RtfUtils
;
import
com.wd.workoffice.retrofit.WorkObserver
;
import
com.wd.workoffice.ui.adapter.FinancialAddAdapter
;
import
com.wd.workoffice.util.PickTimeUtils
;
import
com.wd.workoffice.util.UserKeeper
;
import
com.wd.workoffice.util.WorkUtils
;
import
org.greenrobot.eventbus.EventBus
;
import
org.greenrobot.eventbus.Subscribe
;
import
java.text.SimpleDateFormat
;
import
java.util.ArrayList
;
import
java.util.Date
;
import
java.util.List
;
import
java.util.Map
;
import
androidx.recyclerview.widget.GridLayoutManager
;
import
androidx.recyclerview.widget.RecyclerView
;
import
butterknife.BindView
;
import
butterknife.ButterKnife
;
import
butterknife.OnClick
;
import
flexible.xd.android_base.network.rtfhttp.Transformer
;
import
flexible.xd.android_base.utils.TimeUtils
;
import
io.reactivex.disposables.Disposable
;
/**
* 财税
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public
class
StoreFinancialAddActivity
extends
WorkToolBarActivity
{
@BindView
(
R
.
id
.
tv_submit
)
TextView
tvSubmit
;
@BindView
(
R
.
id
.
tv_total
)
TextView
tvTotal
;
@BindView
(
R
.
id
.
rl_bottom
)
RelativeLayout
rlBottom
;
@BindView
(
R
.
id
.
tv_time
)
TextView
tvTime
;
@BindView
(
R
.
id
.
rl_time
)
RelativeLayout
rlTime
;
@BindView
(
R
.
id
.
et_remark
)
EditText
etRemark
;
@BindView
(
R
.
id
.
rv_data
)
RecyclerView
rvData
;
private
FinancialAddAdapter
dataAdapter
;
private
List
<
FinancialTypeBean
>
dataList
;
private
Map
<
String
,
Object
>
param
;
@Override
protected
void
initView
()
{
ButterKnife
.
bind
(
this
);
rvData
.
setLayoutManager
(
new
GridLayoutManager
(
this
,
2
,
RecyclerView
.
VERTICAL
,
false
));
}
@Override
protected
void
initData
()
{
param
=
WorkUtils
.
simpleParam
();
dataList
=
new
ArrayList
<>();
dataAdapter
=
new
FinancialAddAdapter
(
R
.
layout
.
item_financial_add
,
dataList
);
dataAdapter
.
bindToRecyclerView
(
rvData
);
dataAdapter
.
setEmptyView
(
R
.
layout
.
view_empty_content
,
rvData
);
}
@Override
protected
void
initEvent
()
{
getData
();
}
private
void
getData
()
{
RtfUtils
.
getRtf
().
financialType
(
UserKeeper
.
getInstance
().
getUserDepId
()).
compose
(
Transformer
.
schedule
()).
subscribe
(
new
WorkObserver
<
BaseBean
>()
{
@Override
public
void
doOnSubscribe
(
Disposable
d
)
{
}
@Override
public
void
onFail
(
String
errorMsg
)
{
hideLoading
();
toast
(
errorMsg
);
}
@Override
public
void
onSuccess
(
BaseBean
data
)
{
hideLoading
();
if
(
data
.
getCode
()
!=
0
)
{
toast
(
data
.
getMessage
());
return
;
}
List
<
FinancialTypeBean
>
getList
=
JSON
.
parseArray
(
data
.
getData
().
toString
(),
FinancialTypeBean
.
class
);
dataList
.
clear
();
dataList
.
addAll
(
getList
);
dataAdapter
.
notifyDataSetChanged
();
}
});
}
@Override
protected
int
layoutId
()
{
return
R
.
layout
.
activity_financial_add
;
}
@Override
public
boolean
onCreateOptionsMenu
(
Menu
menu
)
{
getMenuInflater
().
inflate
(
R
.
menu
.
menu_history
,
menu
);
return
super
.
onCreateOptionsMenu
(
menu
);
}
@Override
public
boolean
onOptionsItemSelected
(
MenuItem
item
)
{
switch
(
item
.
getItemId
())
{
case
R
.
id
.
history
:
startActivity
(
StoreFinancialActivity
.
class
);
break
;
}
return
super
.
onOptionsItemSelected
(
item
);
}
@OnClick
({
R
.
id
.
tv_submit
,
R
.
id
.
rl_time
})
public
void
onViewClicked
(
View
view
)
{
switch
(
view
.
getId
())
{
case
R
.
id
.
tv_submit
:
String
time
=
tvTime
.
getText
().
toString
();
String
remark
=
etRemark
.
getText
().
toString
();
if
(
TextUtils
.
isEmpty
(
time
))
{
toast
(
"请选择缴费月份"
);
return
;
}
changeNum
();
param
.
put
(
"payDate"
,
time
);
param
.
put
(
"applyRemark"
,
remark
);
param
.
put
(
"payDept"
,
UserKeeper
.
getInstance
().
getUserDepId
());
submit
();
break
;
case
R
.
id
.
rl_time
:
PickTimeUtils
.
showPickTwo
(
this
,
new
OnTimeSelectListener
()
{
@Override
public
void
onTimeSelect
(
Date
date
,
View
v
)
{
tvTime
.
setText
(
TimeUtils
.
date2String
(
date
,
new
SimpleDateFormat
(
"yyyyMM"
)));
}
}).
show
();
break
;
}
}
private
void
submit
()
{
RtfUtils
.
getRtf
().
addFinancial
(
WorkUtils
.
convertMapToBody
(
param
)).
compose
(
Transformer
.
schedule
()).
subscribe
(
new
WorkObserver
<
BaseBean
>()
{
@Override
public
void
doOnSubscribe
(
Disposable
d
)
{
}
@Override
public
void
onFail
(
String
errorMsg
)
{
hideLoading
();
toast
(
errorMsg
);
}
@Override
public
void
onSuccess
(
BaseBean
data
)
{
hideLoading
();
if
(
data
.
getCode
()
!=
0
)
{
toast
(
data
.
getMessage
());
return
;
}
finish
();
toast
(
"提交成功"
);
}
});
}
@Override
public
void
onStart
()
{
super
.
onStart
();
EventBus
.
getDefault
().
register
(
this
);
}
@Override
public
void
onStop
()
{
super
.
onStop
();
EventBus
.
getDefault
().
unregister
(
this
);
}
@Subscribe
public
void
refresh
(
AddFinancialNumEvent
event
)
{
changeNum
();
}
private
void
changeNum
()
{
Map
<
Integer
,
String
>
num
=
dataAdapter
.
getNum
();
int
total
=
0
;
List
<
JSONObject
>
financeTaxItems
=
new
ArrayList
<>();
for
(
Map
.
Entry
<
Integer
,
String
>
entry
:
num
.
entrySet
())
{
String
value
=
entry
.
getValue
();
if
(!
TextUtils
.
isEmpty
(
value
))
{
total
+=
Integer
.
valueOf
(
value
);
JSONObject
data
=
new
JSONObject
();
data
.
put
(
"taxType"
,
dataList
.
get
(
entry
.
getKey
()).
getId
());
data
.
put
(
"amount"
,
value
);
financeTaxItems
.
add
(
data
);
}
}
param
.
put
(
"totalMoney"
,
total
);
param
.
put
(
"financeTaxItems"
,
financeTaxItems
);
tvTotal
.
setText
(
total
+
""
);
}
}
app/src/main/java/com/wd/workoffice/ui/activity/bat/store/StoreFinancialDetailActivity.java
0 → 100644
浏览文件 @
d584580f
package
com
.
wd
.
workoffice
.
ui
.
activity
.
bat
.
store
;
import
android.os.Bundle
;
import
android.text.Editable
;
import
android.text.TextUtils
;
import
android.text.TextWatcher
;
import
android.view.LayoutInflater
;
import
android.view.View
;
import
android.widget.EditText
;
import
android.widget.LinearLayout
;
import
android.widget.TextView
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.wd.workoffice.R
;
import
com.wd.workoffice.app.BaseBean
;
import
com.wd.workoffice.app.WorkToolBarActivity
;
import
com.wd.workoffice.bean.FinancailDetailBean
;
import
com.wd.workoffice.bean.FinancialBean
;
import
com.wd.workoffice.bean.LogisticDetailBean
;
import
com.wd.workoffice.bean.event.CheckFinancialEvent
;
import
com.wd.workoffice.bean.event.CheckLogisticEvent
;
import
com.wd.workoffice.bean.workEnum.PagePermissionType
;
import
com.wd.workoffice.retrofit.RtfUtils
;
import
com.wd.workoffice.retrofit.WorkObserver
;
import
com.wd.workoffice.ui.adapter.FinancialDetailAdapter
;
import
com.wd.workoffice.ui.adapter.WorkLogisticDetailAdapter
;
import
com.wd.workoffice.util.WorkUtils
;
import
org.greenrobot.eventbus.EventBus
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Set
;
import
androidx.appcompat.app.AlertDialog
;
import
androidx.recyclerview.widget.LinearLayoutManager
;
import
androidx.recyclerview.widget.RecyclerView
;
import
butterknife.BindView
;
import
butterknife.ButterKnife
;
import
butterknife.OnClick
;
import
flexible.xd.android_base.network.rtfhttp.Transformer
;
import
io.reactivex.disposables.Disposable
;
/**
* 财税详情
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public
class
StoreFinancialDetailActivity
extends
WorkToolBarActivity
{
@BindView
(
R
.
id
.
tv_refuse
)
TextView
tvRefuse
;
@BindView
(
R
.
id
.
tv_agree
)
TextView
tvAgree
;
@BindView
(
R
.
id
.
ll_bottom
)
LinearLayout
llBottom
;
@BindView
(
R
.
id
.
tv_time
)
TextView
tvTime
;
@BindView
(
R
.
id
.
tv_status
)
TextView
tvStatus
;
@BindView
(
R
.
id
.
tv_remark
)
TextView
tvRemark
;
@BindView
(
R
.
id
.
rv_data
)
RecyclerView
rvData
;
private
List
<
FinancailDetailBean
>
dataList
;
private
FinancialDetailAdapter
dataAdapter
;
private
Map
<
String
,
Object
>
param
;
@Override
protected
void
initView
()
{
ButterKnife
.
bind
(
this
);
rvData
.
setLayoutManager
(
new
LinearLayoutManager
(
this
,
RecyclerView
.
VERTICAL
,
false
));
}
@Override
protected
void
initData
()
{
FinancialBean
.
RecordsBean
info
=
JSON
.
parseObject
(
getIntent
().
getStringExtra
(
"info"
),
FinancialBean
.
RecordsBean
.
class
);
getData
(
info
.
getId
()
+
""
);
tvTime
.
setText
(
info
.
getPayDate
()
+
""
);
tvRemark
.
setText
(
info
.
getApplyRemark
());
tvStatus
.
setText
(
WorkUtils
.
getFinancialStatus
(
Integer
.
valueOf
(
info
.
getStatus
())));
if
(
TextUtils
.
equals
(
info
.
getStatus
(),
"0"
)
||
TextUtils
.
equals
(
info
.
getStatus
(),
"3"
))
{
llBottom
.
setVisibility
(
View
.
VISIBLE
);
changePermission
();
}
else
{
llBottom
.
setVisibility
(
View
.
GONE
);
}
dataList
=
new
ArrayList
<>();
dataAdapter
=
new
FinancialDetailAdapter
(
R
.
layout
.
item_financial_detail
,
dataList
,
info
.
getStatus
());
dataAdapter
.
bindToRecyclerView
(
rvData
);
param
=
new
HashMap
<>();
param
.
put
(
"id"
,
info
.
getId
());
}
private
void
changePermission
()
{
boolean
hasPermission
=
WorkUtils
.
hasPermission
(
PagePermissionType
.
FINANCE_DETAIL
.
getPermission
());
if
(!
hasPermission
)
{
tvRefuse
.
setVisibility
(
View
.
GONE
);
tvAgree
.
setVisibility
(
View
.
GONE
);
}
}
private
void
getData
(
String
id
)
{
RtfUtils
.
getRtf
().
storeFinancialDetail
(
id
).
compose
(
Transformer
.
schedule
()).
subscribe
(
new
WorkObserver
<
BaseBean
>()
{
@Override
public
void
doOnSubscribe
(
Disposable
d
)
{
}
@Override
public
void
onFail
(
String
errorMsg
)
{
hideLoading
();
toast
(
errorMsg
);
}
@Override
public
void
onSuccess
(
BaseBean
data
)
{
hideLoading
();
if
(
data
.
getCode
()
!=
0
)
{
toast
(
data
.
getMessage
());
return
;
}
List
<
FinancailDetailBean
>
dataBean
=
JSON
.
parseArray
(
data
.
getData
().
toString
(),
FinancailDetailBean
.
class
);
dataList
.
addAll
(
dataBean
);
dataAdapter
.
notifyDataSetChanged
();
}
});
}
@Override
protected
void
initEvent
()
{
}
@Override
protected
int
layoutId
()
{
return
R
.
layout
.
activity_financial_detail
;
}
@OnClick
({
R
.
id
.
tv_refuse
,
R
.
id
.
tv_agree
})
public
void
onViewClicked
(
View
view
)
{
switch
(
view
.
getId
())
{
case
R
.
id
.
tv_refuse
:
if
(!
checkAddParam
(
2
))
{
return
;
}
checkDialog
(
2
);
break
;
case
R
.
id
.
tv_agree
:
if
(!
checkAddParam
(
1
))
{
return
;
}
checkDialog
(
1
);
break
;
}
}
private
void
checkDialog
(
int
status
)
{
AlertDialog
.
Builder
builder
=
new
AlertDialog
.
Builder
(
this
);
View
view
=
LayoutInflater
.
from
(
this
).
inflate
(
R
.
layout
.
view_check
,
null
);
TextView
tvOk
=
view
.
findViewById
(
R
.
id
.
tv_ok
);
TextView
tvDesc
=
view
.
findViewById
(
R
.
id
.
tv_desc
);
tvDesc
.
setText
(
status
==
1
?
"同意"
:
"拒绝"
);
TextView
tvNum
=
view
.
findViewById
(
R
.
id
.
tv_num
);
TextView
tvCancel
=
view
.
findViewById
(
R
.
id
.
tv_cancel
);
EditText
etRemark
=
view
.
findViewById
(
R
.
id
.
et_content
);
etRemark
.
addTextChangedListener
(
new
TextWatcher
()
{
@Override
public
void
beforeTextChanged
(
CharSequence
s
,
int
start
,
int
count
,
int
after
)
{
}
@Override
public
void
onTextChanged
(
CharSequence
s
,
int
start
,
int
before
,
int
count
)
{
}
@Override
public
void
afterTextChanged
(
Editable
s
)
{
tvNum
.
setText
(
s
.
length
()
+
"/140"
);
}
});
builder
.
setView
(
view
);
AlertDialog
addCartDialog
=
builder
.
create
();
tvOk
.
setOnClickListener
(
new
View
.
OnClickListener
()
{
@Override
public
void
onClick
(
View
v
)
{
if
(
TextUtils
.
isEmpty
(
etRemark
.
getText
().
toString
()))
{
toast
(
"请填写备注"
);
return
;
}
check
(
status
,
etRemark
.
getText
().
toString
());
addCartDialog
.
dismiss
();
}
});
tvCancel
.
setOnClickListener
(
new
View
.
OnClickListener
()
{
@Override
public
void
onClick
(
View
v
)
{
addCartDialog
.
dismiss
();
}
});
addCartDialog
.
show
();
}
private
void
check
(
int
status
,
String
remark
)
{
param
.
put
(
"status"
,
status
);
param
.
put
(
"auditRemark"
,
remark
);
RtfUtils
.
getRtf
().
storeFinancialCheck
(
WorkUtils
.
convertMapToBody
(
param
)).
compose
(
Transformer
.
schedule
()).
subscribe
(
new
WorkObserver
<
BaseBean
>()
{
@Override
public
void
doOnSubscribe
(
Disposable
d
)
{
}
@Override
public
void
onFail
(
String
errorMsg
)
{
hideLoading
();
toast
(
errorMsg
);
}
@Override
public
void
onSuccess
(
BaseBean
data
)
{
hideLoading
();
if
(
data
.
getCode
()
!=
0
)
{
toast
(
data
.
getMessage
());
return
;
}
EventBus
.
getDefault
().
post
(
new
CheckFinancialEvent
());
toast
(
"操作成功"
);
finish
();
}
});
}
private
boolean
checkAddParam
(
int
status
)
{
Map
<
Integer
,
String
>
errorMap
=
dataAdapter
.
getErrorMap
();
Set
<
Map
.
Entry
<
Integer
,
String
>>
entries
=
errorMap
.
entrySet
();
if
(
entries
.
size
()
==
0
&&
status
==
2
)
{
toast
(
"请标记错误并填写错误原因"
);
return
false
;
}
List
<
JSONObject
>
financeTaxItems
=
new
ArrayList
<>();
for
(
int
i
=
0
;
i
<
dataList
.
size
();
i
++)
{
JSONObject
data
=
new
JSONObject
();
if
(
errorMap
.
containsKey
(
i
))
{
data
.
put
(
"auditRemark"
,
dataList
.
get
(
i
).
getAuditRemark
());
data
.
put
(
"id"
,
dataList
.
get
(
i
).
getId
());
data
.
put
(
"status"
,
2
);
if
(
TextUtils
.
isEmpty
(
dataList
.
get
(
i
).
getAuditRemark
()))
{
toast
(
"请标记错误并填写错误原因"
);
return
false
;
}
}
else
{
data
.
put
(
"auditRemark"
,
dataList
.
get
(
i
).
getAuditRemark
());
data
.
put
(
"id"
,
dataList
.
get
(
i
).
getId
());
data
.
put
(
"status"
,
1
);
}
financeTaxItems
.
add
(
data
);
}
param
.
put
(
"financeTaxItems"
,
financeTaxItems
);
return
true
;
}
}
app/src/main/java/com/wd/workoffice/ui/activity/bat/store/StoreFinancialModifyActivity.java
0 → 100644
浏览文件 @
d584580f
package
com
.
wd
.
workoffice
.
ui
.
activity
.
bat
.
store
;
import
android.text.Editable
;
import
android.text.TextUtils
;
import
android.text.TextWatcher
;
import
android.view.LayoutInflater
;
import
android.view.Menu
;
import
android.view.MenuItem
;
import
android.view.View
;
import
android.widget.EditText
;
import
android.widget.LinearLayout
;
import
android.widget.TextView
;
import
com.alibaba.fastjson.JSON
;
import
com.alibaba.fastjson.JSONObject
;
import
com.wd.workoffice.R
;
import
com.wd.workoffice.app.BaseBean
;
import
com.wd.workoffice.app.WorkToolBarActivity
;
import
com.wd.workoffice.bean.FinancailDetailBean
;
import
com.wd.workoffice.bean.FinancialBean
;
import
com.wd.workoffice.bean.event.CheckFinancialEvent
;
import
com.wd.workoffice.bean.event.CheckLogisticEvent
;
import
com.wd.workoffice.bean.workEnum.PagePermissionType
;
import
com.wd.workoffice.retrofit.RtfUtils
;
import
com.wd.workoffice.retrofit.WorkObserver
;
import
com.wd.workoffice.ui.adapter.FinancialDetailAdapter
;
import
com.wd.workoffice.ui.adapter.FinancialModifyAdapter
;
import
com.wd.workoffice.util.UserKeeper
;
import
com.wd.workoffice.util.WorkUtils
;
import
org.greenrobot.eventbus.EventBus
;
import
java.util.ArrayList
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.Set
;
import
androidx.appcompat.app.AlertDialog
;
import
androidx.recyclerview.widget.LinearLayoutManager
;
import
androidx.recyclerview.widget.RecyclerView
;
import
butterknife.BindView
;
import
butterknife.ButterKnife
;
import
butterknife.OnClick
;
import
flexible.xd.android_base.network.rtfhttp.Transformer
;
import
io.reactivex.disposables.Disposable
;
/**
* 财税详情
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public
class
StoreFinancialModifyActivity
extends
WorkToolBarActivity
{
@BindView
(
R
.
id
.
tv_time
)
TextView
tvTime
;
@BindView
(
R
.
id
.
tv_status
)
TextView
tvStatus
;
@BindView
(
R
.
id
.
tv_remark
)
EditText
tvRemark
;
@BindView
(
R
.
id
.
rv_data
)
RecyclerView
rvData
;
private
List
<
FinancailDetailBean
>
dataList
;
private
FinancialModifyAdapter
dataAdapter
;
private
Map
<
String
,
Object
>
param
;
@Override
protected
void
initView
()
{
ButterKnife
.
bind
(
this
);
rvData
.
setLayoutManager
(
new
LinearLayoutManager
(
this
,
RecyclerView
.
VERTICAL
,
false
));
}
@Override
protected
void
initData
()
{
FinancialBean
.
RecordsBean
info
=
JSON
.
parseObject
(
getIntent
().
getStringExtra
(
"info"
),
FinancialBean
.
RecordsBean
.
class
);
getData
(
info
.
getId
()
+
""
);
tvTime
.
setText
(
info
.
getPayDate
()
+
""
);
tvRemark
.
setText
(
info
.
getApplyRemark
());
tvStatus
.
setText
(
WorkUtils
.
getFinancialStatus
(
Integer
.
valueOf
(
info
.
getStatus
())));
dataList
=
new
ArrayList
<>();
dataAdapter
=
new
FinancialModifyAdapter
(
R
.
layout
.
item_financial_modify
,
dataList
);
dataAdapter
.
bindToRecyclerView
(
rvData
);
param
=
new
HashMap
<>();
param
.
put
(
"id"
,
info
.
getId
());
param
.
put
(
"payDate"
,
info
.
getPayDate
());
}
private
void
getData
(
String
id
)
{
RtfUtils
.
getRtf
().
storeFinancialDetail
(
id
).
compose
(
Transformer
.
schedule
()).
subscribe
(
new
WorkObserver
<
BaseBean
>()
{
@Override
public
void
doOnSubscribe
(
Disposable
d
)
{
}
@Override
public
void
onFail
(
String
errorMsg
)
{
hideLoading
();
toast
(
errorMsg
);
}
@Override
public
void
onSuccess
(
BaseBean
data
)
{
hideLoading
();
if
(
data
.
getCode
()
!=
0
)
{
toast
(
data
.
getMessage
());
return
;
}
List
<
FinancailDetailBean
>
dataBean
=
JSON
.
parseArray
(
data
.
getData
().
toString
(),
FinancailDetailBean
.
class
);
dataList
.
addAll
(
dataBean
);
dataAdapter
.
notifyDataSetChanged
();
}
});
}
@Override
protected
void
initEvent
()
{
}
@Override
protected
int
layoutId
()
{
return
R
.
layout
.
activity_financial_modify
;
}
private
void
submit
()
{
for
(
FinancailDetailBean
financailDetailBean
:
dataList
)
{
if
(
financailDetailBean
.
getAmount
()
==
0
d
)
{
toast
(
"请输入金额"
);
return
;
}
}
param
.
put
(
"financeTaxItems"
,
dataList
);
param
.
put
(
"applyRemark"
,
tvRemark
.
getText
().
toString
());
param
.
put
(
"payDept"
,
UserKeeper
.
getInstance
().
getUserDepId
());
RtfUtils
.
getRtf
().
addFinancial
(
WorkUtils
.
convertMapToBody
(
param
)).
compose
(
Transformer
.
schedule
()).
subscribe
(
new
WorkObserver
<
BaseBean
>()
{
@Override
public
void
doOnSubscribe
(
Disposable
d
)
{
}
@Override
public
void
onFail
(
String
errorMsg
)
{
hideLoading
();
toast
(
errorMsg
);
}
@Override
public
void
onSuccess
(
BaseBean
data
)
{
hideLoading
();
if
(
data
.
getCode
()
!=
0
)
{
toast
(
data
.
getMessage
());
return
;
}
finish
();
toast
(
"提交成功"
);
EventBus
.
getDefault
().
post
(
new
CheckFinancialEvent
());
}
});
}
@Override
public
boolean
onCreateOptionsMenu
(
Menu
menu
)
{
getMenuInflater
().
inflate
(
R
.
menu
.
menu_report
,
menu
);
return
super
.
onCreateOptionsMenu
(
menu
);
}
@Override
public
boolean
onOptionsItemSelected
(
MenuItem
item
)
{
switch
(
item
.
getItemId
())
{
case
R
.
id
.
report
:
submit
();
break
;
}
return
super
.
onOptionsItemSelected
(
item
);
}
private
void
check
(
int
status
,
String
remark
)
{
param
.
put
(
"status"
,
status
);
param
.
put
(
"auditRemark"
,
remark
);
RtfUtils
.
getRtf
().
storeFinancialCheck
(
WorkUtils
.
convertMapToBody
(
param
)).
compose
(
Transformer
.
schedule
()).
subscribe
(
new
WorkObserver
<
BaseBean
>()
{
@Override
public
void
doOnSubscribe
(
Disposable
d
)
{
}
@Override
public
void
onFail
(
String
errorMsg
)
{
hideLoading
();
toast
(
errorMsg
);
}
@Override
public
void
onSuccess
(
BaseBean
data
)
{
hideLoading
();
if
(
data
.
getCode
()
!=
0
)
{
toast
(
data
.
getMessage
());
return
;
}
EventBus
.
getDefault
().
post
(
new
CheckLogisticEvent
());
toast
(
"操作成功"
);
finish
();
}
});
}
// private boolean checkAddParam(int status) {
// Map<Integer, String> errorMap = dataAdapter.getErrorMap();
// Set<Map.Entry<Integer, String>> entries = errorMap.entrySet();
// if (entries.size() == 0 && status == 2) {
// toast("请标记错误并填写错误原因");
// return false;
// }
// List<JSONObject> financeTaxItems = new ArrayList<>();
//
// for (int i = 0; i < dataList.size(); i++) {
// JSONObject data = new JSONObject();
// if (errorMap.containsKey(i)) {
// data.put("auditRemark", dataList.get(i).getAuditRemark());
// data.put("id", dataList.get(i).getId());
// data.put("status", 2);
// if (TextUtils.isEmpty(dataList.get(i).getAuditRemark())) {
// toast("请标记错误并填写错误原因");
// return false;
// }
// } else {
// data.put("auditRemark", dataList.get(i).getAuditRemark());
// data.put("id", dataList.get(i).getId());
// data.put("status", 1);
// }
// financeTaxItems.add(data);
// }
// param.put("financeTaxItems", financeTaxItems);
// return true;
// }
}
app/src/main/java/com/wd/workoffice/ui/adapter/FinancialAdapter.java
0 → 100644
浏览文件 @
d584580f
package
com
.
wd
.
workoffice
.
ui
.
adapter
;
import
android.text.TextUtils
;
import
com.chad.library.adapter.base.BaseQuickAdapter
;
import
com.chad.library.adapter.base.BaseViewHolder
;
import
com.wd.workoffice.R
;
import
com.wd.workoffice.bean.FinancialBean
;
import
com.wd.workoffice.bean.LogisticBean
;
import
com.wd.workoffice.util.WorkUtils
;
import
java.util.List
;
/**
* Created by flexible on 2018/8/13.
*/
public
class
FinancialAdapter
extends
BaseQuickAdapter
<
FinancialBean
.
RecordsBean
,
BaseViewHolder
>
{
public
FinancialAdapter
(
int
layoutResId
,
List
data
)
{
super
(
layoutResId
,
data
);
}
@Override
protected
void
convert
(
BaseViewHolder
helper
,
FinancialBean
.
RecordsBean
item
)
{
helper
.
setText
(
R
.
id
.
tv_price
,
String
.
valueOf
(
item
.
getTotalMoney
()));
helper
.
setText
(
R
.
id
.
tv_status
,
WorkUtils
.
getFinancialStatus
(
Integer
.
valueOf
(
item
.
getStatus
())));
helper
.
setText
(
R
.
id
.
tv_time
,
item
.
getPayDate
()
+
""
);
if
(
TextUtils
.
equals
(
"2"
,
item
.
getStatus
()))
{
helper
.
setGone
(
R
.
id
.
ll_btn
,
true
);
helper
.
addOnClickListener
(
R
.
id
.
tv_modify
,
R
.
id
.
tv_delete
);
}
else
{
helper
.
setGone
(
R
.
id
.
ll_btn
,
false
);
}
}
}
app/src/main/java/com/wd/workoffice/ui/adapter/FinancialAddAdapter.java
0 → 100644
浏览文件 @
d584580f
package
com
.
wd
.
workoffice
.
ui
.
adapter
;
import
android.text.Editable
;
import
android.text.TextWatcher
;
import
android.widget.EditText
;
import
com.chad.library.adapter.base.BaseQuickAdapter
;
import
com.chad.library.adapter.base.BaseViewHolder
;
import
com.wd.workoffice.R
;
import
com.wd.workoffice.bean.FinancialTypeBean
;
import
com.wd.workoffice.bean.event.AddFinancialNumEvent
;
import
org.greenrobot.eventbus.EventBus
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
/**
* Created by flexible on 2018/8/13.
*/
public
class
FinancialAddAdapter
extends
BaseQuickAdapter
<
FinancialTypeBean
,
BaseViewHolder
>
{
Map
<
Integer
,
String
>
num
=
new
HashMap
<>();
public
FinancialAddAdapter
(
int
layoutResId
,
List
data
)
{
super
(
layoutResId
,
data
);
}
public
Map
<
Integer
,
String
>
getNum
()
{
return
num
;
}
public
void
setNum
(
Map
<
Integer
,
String
>
num
)
{
this
.
num
=
num
;
}
@Override
protected
void
convert
(
BaseViewHolder
helper
,
FinancialTypeBean
item
)
{
helper
.
setText
(
R
.
id
.
tv_name
,
item
.
getName
());
EditText
etNum
=
helper
.
getView
(
R
.
id
.
et_num
);
etNum
.
addTextChangedListener
(
new
TextWatcher
()
{
@Override
public
void
beforeTextChanged
(
CharSequence
s
,
int
start
,
int
count
,
int
after
)
{
}
@Override
public
void
onTextChanged
(
CharSequence
s
,
int
start
,
int
before
,
int
count
)
{
}
@Override
public
void
afterTextChanged
(
Editable
s
)
{
num
.
put
(
helper
.
getAdapterPosition
(),
s
.
toString
());
EventBus
.
getDefault
().
post
(
new
AddFinancialNumEvent
());
}
});
}
}
app/src/main/java/com/wd/workoffice/ui/adapter/FinancialDetailAdapter.java
0 → 100644
浏览文件 @
d584580f
package
com
.
wd
.
workoffice
.
ui
.
adapter
;
import
android.text.Editable
;
import
android.text.TextUtils
;
import
android.text.TextWatcher
;
import
android.view.View
;
import
android.widget.EditText
;
import
android.widget.TextView
;
import
com.chad.library.adapter.base.BaseQuickAdapter
;
import
com.chad.library.adapter.base.BaseViewHolder
;
import
com.wd.workoffice.R
;
import
com.wd.workoffice.bean.FinancailDetailBean
;
import
com.wd.workoffice.util.WorkUtils
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
androidx.annotation.Nullable
;
/**
* Created by flexible on 2018/8/13.
*/
public
class
FinancialDetailAdapter
extends
BaseQuickAdapter
<
FinancailDetailBean
,
BaseViewHolder
>
{
Map
<
Integer
,
String
>
errorMap
=
new
HashMap
<>();
String
status
;
public
Map
<
Integer
,
String
>
getErrorMap
()
{
return
errorMap
;
}
public
void
setErrorMap
(
Map
<
Integer
,
String
>
errorMap
)
{
this
.
errorMap
=
errorMap
;
}
public
FinancialDetailAdapter
(
int
layoutResId
,
@Nullable
List
<
FinancailDetailBean
>
data
,
String
status
)
{
super
(
layoutResId
,
data
);
this
.
status
=
status
;
}
public
FinancialDetailAdapter
(
int
layoutResId
,
List
data
)
{
super
(
layoutResId
,
data
);
}
@Override
protected
void
convert
(
BaseViewHolder
helper
,
FinancailDetailBean
item
)
{
helper
.
setText
(
R
.
id
.
tv_type
,
item
.
getTaxTypeName
());
helper
.
setText
(
R
.
id
.
tv_price
,
String
.
valueOf
(
item
.
getAmount
()));
helper
.
setText
(
R
.
id
.
et_remark
,
item
.
getAuditRemark
());
if
(
TextUtils
.
equals
(
"0"
,
status
)
||
TextUtils
.
equals
(
"3"
,
status
))
{
helper
.
setText
(
R
.
id
.
tv_status
,
WorkUtils
.
getFinancialTypeStatus
(
"1"
));
}
else
{
helper
.
setText
(
R
.
id
.
tv_status
,
WorkUtils
.
getFinancialTypeStatus
(
item
.
getStatus
()));
}
switch
(
item
.
getStatus
())
{
case
"0"
:
// helper.setText(R.id.tv_status, WorkUtils.getFinancialTypeStatus("1"));
break
;
case
"1"
:
helper
.
setGone
(
R
.
id
.
rl_status
,
false
);
helper
.
setGone
(
R
.
id
.
rl_remark
,
false
);
helper
.
setGone
(
R
.
id
.
tv_error
,
false
);
break
;
case
"2"
:
helper
.
setGone
(
R
.
id
.
tv_error
,
false
);
break
;
}
EditText
remark
=
helper
.
getView
(
R
.
id
.
et_remark
);
remark
.
addTextChangedListener
(
new
TextWatcher
()
{
@Override
public
void
beforeTextChanged
(
CharSequence
s
,
int
start
,
int
count
,
int
after
)
{
}
@Override
public
void
onTextChanged
(
CharSequence
s
,
int
start
,
int
before
,
int
count
)
{
}
@Override
public
void
afterTextChanged
(
Editable
s
)
{
item
.
setAuditRemark
(
s
.
toString
());
}
});
TextView
error
=
helper
.
getView
(
R
.
id
.
tv_error
);
error
.
setOnClickListener
(
new
View
.
OnClickListener
()
{
@Override
public
void
onClick
(
View
v
)
{
if
(
TextUtils
.
equals
(
"标记错误"
,
error
.
getText
().
toString
())){
helper
.
setText
(
R
.
id
.
tv_status
,
WorkUtils
.
getFinancialTypeStatus
(
"2"
));
errorMap
.
put
(
helper
.
getAdapterPosition
(),
""
);
error
.
setText
(
"标记正确"
);
}
else
{
helper
.
setText
(
R
.
id
.
tv_status
,
WorkUtils
.
getFinancialTypeStatus
(
"1"
));
if
(
errorMap
.
containsKey
(
helper
.
getAdapterPosition
()))
errorMap
.
remove
(
helper
.
getAdapterPosition
());
error
.
setText
(
"标记错误"
);
}
}
});
}
}
app/src/main/java/com/wd/workoffice/ui/adapter/FinancialModifyAdapter.java
0 → 100644
浏览文件 @
d584580f
package
com
.
wd
.
workoffice
.
ui
.
adapter
;
import
android.text.Editable
;
import
android.text.TextUtils
;
import
android.text.TextWatcher
;
import
android.view.View
;
import
android.widget.EditText
;
import
android.widget.TextView
;
import
com.chad.library.adapter.base.BaseQuickAdapter
;
import
com.chad.library.adapter.base.BaseViewHolder
;
import
com.wd.workoffice.R
;
import
com.wd.workoffice.bean.FinancailDetailBean
;
import
com.wd.workoffice.util.WorkUtils
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
androidx.annotation.Nullable
;
/**
* Created by flexible on 2018/8/13.
*/
public
class
FinancialModifyAdapter
extends
BaseQuickAdapter
<
FinancailDetailBean
,
BaseViewHolder
>
{
public
FinancialModifyAdapter
(
int
layoutResId
,
List
data
)
{
super
(
layoutResId
,
data
);
}
@Override
protected
void
convert
(
BaseViewHolder
helper
,
FinancailDetailBean
item
)
{
helper
.
setText
(
R
.
id
.
tv_type
,
item
.
getTaxTypeName
());
helper
.
setText
(
R
.
id
.
tv_price
,
String
.
valueOf
(
item
.
getAmount
()));
EditText
remark
=
helper
.
getView
(
R
.
id
.
tv_price
);
remark
.
addTextChangedListener
(
new
TextWatcher
()
{
@Override
public
void
beforeTextChanged
(
CharSequence
s
,
int
start
,
int
count
,
int
after
)
{
}
@Override
public
void
onTextChanged
(
CharSequence
s
,
int
start
,
int
before
,
int
count
)
{
}
@Override
public
void
afterTextChanged
(
Editable
s
)
{
item
.
setAmount
(
Integer
.
valueOf
(
s
.
toString
()));
}
});
}
}
app/src/main/java/com/wd/workoffice/ui/fg/MainFragment.java
浏览文件 @
d584580f
...
@@ -29,6 +29,7 @@ import com.wd.workoffice.ui.activity.bat.order.sale.SaleSaleOrderActivity;
...
@@ -29,6 +29,7 @@ import com.wd.workoffice.ui.activity.bat.order.sale.SaleSaleOrderActivity;
import
com.wd.workoffice.ui.activity.bat.order.sale.SaleSupplierOrderActivity
;
import
com.wd.workoffice.ui.activity.bat.order.sale.SaleSupplierOrderActivity
;
import
com.wd.workoffice.ui.activity.bat.store.StoreCrucibleActivity
;
import
com.wd.workoffice.ui.activity.bat.store.StoreCrucibleActivity
;
import
com.wd.workoffice.ui.activity.bat.store.StoreFinancialActivity
;
import
com.wd.workoffice.ui.activity.bat.store.StoreFinancialActivity
;
import
com.wd.workoffice.ui.activity.bat.store.StoreFinancialAddActivity
;
import
com.wd.workoffice.ui.activity.bat.store.StoreOutsourcingActivity
;
import
com.wd.workoffice.ui.activity.bat.store.StoreOutsourcingActivity
;
import
com.wd.workoffice.ui.activity.bat.store.StoreSaleActivity
;
import
com.wd.workoffice.ui.activity.bat.store.StoreSaleActivity
;
import
com.wd.workoffice.ui.activity.bat.store.StoreSupplierActivity
;
import
com.wd.workoffice.ui.activity.bat.store.StoreSupplierActivity
;
...
@@ -115,7 +116,6 @@ public class MainFragment extends WorkBaseFg {
...
@@ -115,7 +116,6 @@ public class MainFragment extends WorkBaseFg {
}
}
// @Nullable
// @Nullable
// @Override
// @Override
// public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
// public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
...
@@ -239,21 +239,21 @@ public class MainFragment extends WorkBaseFg {
...
@@ -239,21 +239,21 @@ public class MainFragment extends WorkBaseFg {
public
void
onItemClick
(
BaseQuickAdapter
adapter
,
View
view
,
int
position
)
{
public
void
onItemClick
(
BaseQuickAdapter
adapter
,
View
view
,
int
position
)
{
switch
(
position
)
{
switch
(
position
)
{
case
0
:
case
0
:
if
(!
WorkUtils
.
hasPermission
(
PagePermissionType
.
SALE_ORDER_START
.
getPermission
())){
if
(!
WorkUtils
.
hasPermission
(
PagePermissionType
.
SALE_ORDER_START
.
getPermission
()))
{
toast
(
R
.
string
.
permission
);
toast
(
R
.
string
.
permission
);
return
;
return
;
}
}
startActivity
(
StoreSaleActivity
.
class
);
startActivity
(
StoreSaleActivity
.
class
);
break
;
break
;
case
1
:
case
1
:
if
(!
WorkUtils
.
hasPermission
(
PagePermissionType
.
PO_PURCHASE_START
.
getPermission
())){
if
(!
WorkUtils
.
hasPermission
(
PagePermissionType
.
PO_PURCHASE_START
.
getPermission
()))
{
toast
(
R
.
string
.
permission
);
toast
(
R
.
string
.
permission
);
return
;
return
;
}
}
startActivity
(
StoreOutsourcingActivity
.
class
);
startActivity
(
StoreOutsourcingActivity
.
class
);
break
;
break
;
case
2
:
case
2
:
if
(!
WorkUtils
.
hasPermission
(
PagePermissionType
.
FO_SUPPLIER_START
.
getPermission
())){
if
(!
WorkUtils
.
hasPermission
(
PagePermissionType
.
FO_SUPPLIER_START
.
getPermission
()))
{
toast
(
R
.
string
.
permission
);
toast
(
R
.
string
.
permission
);
return
;
return
;
}
}
...
@@ -263,17 +263,21 @@ public class MainFragment extends WorkBaseFg {
...
@@ -263,17 +263,21 @@ public class MainFragment extends WorkBaseFg {
toast
(
"暂无数据"
);
toast
(
"暂无数据"
);
break
;
break
;
case
4
:
case
4
:
startActivity
(
StoreFinancialActivity
.
class
);
if
(!
WorkUtils
.
hasPermission
(
PagePermissionType
.
FINANCE_TAX
.
getPermission
()))
{
toast
(
R
.
string
.
permission
);
return
;
}
startActivity
(
StoreFinancialAddActivity
.
class
);
break
;
break
;
case
5
:
case
5
:
if
(!
WorkUtils
.
hasPermission
(
PagePermissionType
.
CO_CRUCIBLE_START
.
getPermission
())){
if
(!
WorkUtils
.
hasPermission
(
PagePermissionType
.
CO_CRUCIBLE_START
.
getPermission
()))
{
toast
(
R
.
string
.
permission
);
toast
(
R
.
string
.
permission
);
return
;
return
;
}
}
startActivity
(
StoreCrucibleActivity
.
class
);
startActivity
(
StoreCrucibleActivity
.
class
);
break
;
break
;
case
6
:
case
6
:
if
(!
WorkUtils
.
hasPermission
(
PagePermissionType
.
IO_INSIDE_START
.
getPermission
())){
if
(!
WorkUtils
.
hasPermission
(
PagePermissionType
.
IO_INSIDE_START
.
getPermission
()))
{
toast
(
R
.
string
.
permission
);
toast
(
R
.
string
.
permission
);
return
;
return
;
}
}
...
...
app/src/main/java/com/wd/workoffice/util/PickTimeUtils.java
浏览文件 @
d584580f
...
@@ -23,6 +23,14 @@ public class PickTimeUtils {
...
@@ -23,6 +23,14 @@ public class PickTimeUtils {
TimePickerBuilder
pvTime
=
new
TimePickerBuilder
(
ctx
,
listener
);
TimePickerBuilder
pvTime
=
new
TimePickerBuilder
(
ctx
,
listener
);
pvTime
.
setType
(
new
boolean
[]{
true
,
true
,
true
,
false
,
false
,
false
}).
setTitleSize
(
16
).
setContentTextSize
(
16
).
pvTime
.
setType
(
new
boolean
[]{
true
,
true
,
true
,
false
,
false
,
false
}).
setTitleSize
(
16
).
setContentTextSize
(
16
).
setSubCalSize
(
16
);
setSubCalSize
(
16
);
// .setRangDate(startDate, endDate);
return
pvTime
.
build
();
}
public
static
TimePickerView
showPickTwo
(
Context
ctx
,
OnTimeSelectListener
listener
)
{
TimePickerBuilder
pvTime
=
new
TimePickerBuilder
(
ctx
,
listener
);
pvTime
.
setType
(
new
boolean
[]{
true
,
true
,
false
,
false
,
false
,
false
}).
setTitleSize
(
16
).
setContentTextSize
(
16
).
setSubCalSize
(
16
);
// .setRangDate(startDate, endDate);
// .setRangDate(startDate, endDate);
return
pvTime
.
build
();
return
pvTime
.
build
();
}
}
...
...
app/src/main/java/com/wd/workoffice/util/WorkUtils.java
浏览文件 @
d584580f
...
@@ -234,6 +234,34 @@ public class WorkUtils {
...
@@ -234,6 +234,34 @@ public class WorkUtils {
case
2
:
case
2
:
name
=
"已驳回"
;
name
=
"已驳回"
;
break
;
break
;
case
3
:
name
=
"待重审"
;
break
;
case
9
:
name
=
"已作废"
;
break
;
}
return
name
;
}
/**
* 0-待审核,1-审核正常,2-审核数据有误
* @param status
* @return
*/
public
static
String
getFinancialTypeStatus
(
String
status
)
{
String
name
=
""
;
switch
(
Integer
.
valueOf
(
status
))
{
case
0
:
name
=
"待审核"
;
break
;
case
1
:
name
=
"审核正常"
;
break
;
case
2
:
name
=
"审核数据有误"
;
break
;
}
}
return
name
;
return
name
;
}
}
...
@@ -466,4 +494,6 @@ public class WorkUtils {
...
@@ -466,4 +494,6 @@ public class WorkUtils {
};
};
return
timer
.
start
();
return
timer
.
start
();
}
}
}
}
app/src/main/res/layout/activity_financial_add.xml
0 → 100644
浏览文件 @
d584580f
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
>
<RelativeLayout
android:id=
"@+id/rl_bottom"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:paddingVertical=
"12mm"
android:background=
"@color/white"
android:paddingHorizontal=
"15mm"
android:layout_alignParentBottom=
"true"
>
<TextView
android:id=
"@+id/tv_submit"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:background=
"@drawable/shape_red_btn"
android:text=
"缴纳"
android:layout_alignParentRight=
"true"
android:paddingHorizontal=
"30mm"
android:paddingVertical=
"4mm"
android:textColor=
"@color/white"
android:textSize=
"14sp"
/>
<LinearLayout
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"合计"
android:textSize=
"14sp"
/>
<TextView
android:id=
"@+id/tv_total"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"0"
android:layout_marginHorizontal=
"4mm"
android:textColor=
"#fff56c6c"
android:textSize=
"24sp"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"正望币"
android:textColor=
"#ff5e6d82"
android:textSize=
"12sp"
/>
</LinearLayout>
</RelativeLayout>
<LinearLayout
android:layout_above=
"@id/rl_bottom"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:orientation=
"vertical"
>
<RelativeLayout
android:id=
"@+id/rl_time"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center"
android:background=
"@color/white"
android:gravity=
"center"
android:paddingHorizontal=
"20mm"
android:paddingVertical=
"15mm"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentLeft=
"true"
android:layout_centerVertical=
"true"
android:text=
"缴费年月"
android:textSize=
"16sp"
/>
<LinearLayout
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentRight=
"true"
android:layout_toRightOf=
"@id/tv_desc"
android:gravity=
"center_vertical|right"
>
<TextView
android:id=
"@+id/tv_time"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginRight=
"10mm"
android:ellipsize=
"end"
android:hint=
"请选择"
android:maxLines=
"1"
android:textSize=
"15sp"
android:textStyle=
"bold"
/>
<ImageView
android:layout_width=
"6mm"
android:layout_height=
"10mm"
android:background=
"@mipmap/arrow_right_blue"
/>
</LinearLayout>
</RelativeLayout>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:background=
"@color/white"
android:paddingBottom=
"10mm"
>
<EditText
android:id=
"@+id/et_remark"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginHorizontal=
"20mm"
android:layout_marginTop=
"3mm"
android:background=
"@drawable/shape_input_white"
android:gravity=
"top"
android:hint=
"请填写备注…"
android:minLines=
"2"
android:padding=
"5mm"
android:textSize=
"16sp"
/>
</LinearLayout>
<androidx.recyclerview.widget.RecyclerView
android:id=
"@+id/rv_data"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
/>
</LinearLayout>
</RelativeLayout>
\ No newline at end of file
app/src/main/res/layout/activity_financial_detail.xml
0 → 100644
浏览文件 @
d584580f
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android=
"http://schemas.android.com/apk/res/android"
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
>
<LinearLayout
android:id=
"@+id/ll_bottom"
android:layout_width=
"match_parent"
android:layout_height=
"60mm"
android:layout_alignParentBottom=
"true"
android:gravity=
"center_vertical|right"
android:orientation=
"horizontal"
>
<TextView
android:id=
"@+id/tv_refuse"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginRight=
"10mm"
android:background=
"@drawable/shape_red_btn"
android:paddingHorizontal=
"20mm"
android:paddingVertical=
"5mm"
android:text=
"拒绝"
android:textColor=
"@color/white"
/>
<TextView
android:id=
"@+id/tv_agree"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_marginRight=
"10mm"
android:background=
"@drawable/shape_green_btn"
android:paddingHorizontal=
"20mm"
android:paddingVertical=
"5mm"
android:text=
"同意"
android:textColor=
"@color/white"
/>
</LinearLayout>
<androidx.core.widget.NestedScrollView
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_above=
"@id/ll_bottom"
android:background=
"@color/white"
>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_above=
"@id/ll_bottom"
android:orientation=
"vertical"
android:paddingBottom=
"20mm"
>
<View
style=
"@style/ViewX"
/>
<RelativeLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center"
android:background=
"@color/white"
android:gravity=
"center"
android:paddingHorizontal=
"20mm"
android:paddingVertical=
"15mm"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"缴费年月"
android:textSize=
"15sp"
/>
<TextView
android:id=
"@+id/tv_time"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentRight=
"true"
android:textColor=
"@color/flexible_text_gray"
android:textSize=
"15sp"
/>
</RelativeLayout>
<View
style=
"@style/dividerX"
/>
<RelativeLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center"
android:background=
"@color/white"
android:gravity=
"center"
android:paddingHorizontal=
"20mm"
android:paddingVertical=
"15mm"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"审核状态"
android:textSize=
"15sp"
/>
<TextView
android:id=
"@+id/tv_status"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentRight=
"true"
android:textColor=
"@color/flexible_text_gray"
android:textSize=
"15sp"
/>
</RelativeLayout>
<View
style=
"@style/dividerX"
/>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center"
android:background=
"@color/white"
android:orientation=
"vertical"
android:paddingHorizontal=
"20mm"
android:paddingVertical=
"15mm"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"申请备注"
android:textSize=
"15sp"
/>
<TextView
android:id=
"@+id/tv_remark"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentRight=
"true"
android:textColor=
"@color/flexible_text_gray"
android:textSize=
"15sp"
/>
</LinearLayout>
<TextView
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:background=
"@color/flexible_background"
android:paddingVertical=
"10mm"
android:paddingLeft=
"10mm"
android:text=
"开票来源"
android:textSize=
"15sp"
/>
<androidx.recyclerview.widget.RecyclerView
android:id=
"@+id/rv_data"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
/>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
</RelativeLayout>
app/src/main/res/layout/activity_financial_modify.xml
0 → 100644
浏览文件 @
d584580f
<?xml version="1.0" encoding="utf-8"?>
<androidx.core.widget.NestedScrollView
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:background=
"@color/white"
xmlns:android=
"http://schemas.android.com/apk/res/android"
>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"match_parent"
android:layout_above=
"@id/ll_bottom"
android:orientation=
"vertical"
android:paddingBottom=
"20mm"
>
<View
style=
"@style/ViewX"
/>
<RelativeLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center"
android:background=
"@color/white"
android:gravity=
"center"
android:paddingHorizontal=
"20mm"
android:paddingVertical=
"15mm"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"缴费年月"
android:textSize=
"15sp"
/>
<TextView
android:id=
"@+id/tv_time"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentRight=
"true"
android:textColor=
"@color/flexible_text_gray"
android:textSize=
"15sp"
/>
</RelativeLayout>
<View
style=
"@style/dividerX"
/>
<RelativeLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center"
android:background=
"@color/white"
android:gravity=
"center"
android:paddingHorizontal=
"20mm"
android:paddingVertical=
"15mm"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"审核状态"
android:textSize=
"15sp"
/>
<TextView
android:id=
"@+id/tv_status"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentRight=
"true"
android:textColor=
"@color/flexible_text_gray"
android:textSize=
"15sp"
/>
</RelativeLayout>
<View
style=
"@style/dividerX"
/>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_gravity=
"center"
android:background=
"@color/white"
android:orientation=
"vertical"
android:paddingHorizontal=
"20mm"
android:paddingVertical=
"15mm"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"申请备注"
android:textSize=
"15sp"
/>
<EditText
android:id=
"@+id/tv_remark"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"5mm"
android:background=
"@drawable/shape_input_white"
android:gravity=
"top"
android:hint=
"请填写备注…"
android:minLines=
"2"
android:padding=
"5mm"
android:textSize=
"16sp"
/>
</LinearLayout>
<TextView
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:background=
"@color/flexible_background"
android:paddingVertical=
"10mm"
android:paddingLeft=
"10mm"
android:text=
"开票来源"
android:textSize=
"15sp"
/>
<androidx.recyclerview.widget.RecyclerView
android:id=
"@+id/rv_data"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
/>
</LinearLayout>
</androidx.core.widget.NestedScrollView>
app/src/main/res/layout/fg_work.xml
浏览文件 @
d584580f
...
@@ -13,6 +13,7 @@
...
@@ -13,6 +13,7 @@
<FrameLayout
<FrameLayout
android:layout_width=
"match_parent"
android:layout_width=
"match_parent"
android:paddingBottom=
"5mm"
android:layout_height=
"wrap_content"
>
android:layout_height=
"wrap_content"
>
<View
<View
...
...
app/src/main/res/layout/item_financial.xml
0 → 100644
浏览文件 @
d584580f
<?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:layout_centerHorizontal=
"true"
android:layout_marginTop=
"10mm"
android:background=
"@color/white"
android:orientation=
"vertical"
android:paddingHorizontal=
"20mm"
android:paddingTop=
"10mm"
android:paddingBottom=
"20mm"
>
<RelativeLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"5mm"
>
<TextView
android:id=
"@+id/tv_name"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"邢台德龙钢铁客户"
android:textSize=
"16sp"
/>
<TextView
android:id=
"@+id/tv_status"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentRight=
"true"
android:layout_centerVertical=
"true"
android:text=
"待生产"
android:textSize=
"14sp"
/>
</RelativeLayout>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"14mm"
android:background=
"#FCFCFD"
android:orientation=
"vertical"
android:paddingVertical=
"10mm"
>
<RelativeLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:paddingHorizontal=
"10mm"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerVertical=
"true"
android:layout_marginLeft=
"10mm"
android:text=
"金额"
android:textColor=
"@color/flexible_text_gray"
android:textSize=
"13sp"
/>
<TextView
android:id=
"@+id/tv_price"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentRight=
"true"
android:layout_centerVertical=
"true"
android:text=
"王紫逸"
android:textColor=
"@color/flexible_text_gray"
android:textSize=
"13sp"
/>
</RelativeLayout>
<RelativeLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"10mm"
android:paddingHorizontal=
"10mm"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerVertical=
"true"
android:layout_marginLeft=
"10mm"
android:text=
"缴费日期"
android:textColor=
"@color/flexible_text_gray"
android:textSize=
"13sp"
/>
<TextView
android:id=
"@+id/tv_time"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentRight=
"true"
android:layout_centerVertical=
"true"
android:text=
"王紫逸"
android:textColor=
"@color/flexible_text_gray"
android:textSize=
"13sp"
/>
</RelativeLayout>
</LinearLayout>
<LinearLayout
android:id=
"@+id/ll_btn"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"right"
android:layout_marginTop=
"4mm"
android:visibility=
"gone"
>
<TextView
android:id=
"@+id/tv_delete"
android:layout_width=
"60mm"
android:layout_height=
"wrap_content"
android:layout_marginRight=
"10mm"
android:background=
"@drawable/selector_btn_color"
android:gravity=
"center"
android:paddingHorizontal=
"7mm"
android:paddingVertical=
"4mm"
android:text=
"作废"
android:textColor=
"@color/white"
/>
<TextView
android:id=
"@+id/tv_modify"
android:layout_width=
"60mm"
android:layout_height=
"wrap_content"
android:background=
"@drawable/selector_btn_color"
android:gravity=
"center"
android:paddingHorizontal=
"7mm"
android:paddingVertical=
"4mm"
android:text=
"编辑"
android:textColor=
"@color/white"
/>
</LinearLayout>
</LinearLayout>
\ No newline at end of file
app/src/main/res/layout/item_financial_add.xml
0 → 100644
浏览文件 @
d584580f
<?xml version="1.0" encoding="utf-8"?>
<androidx.cardview.widget.CardView
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_margin=
"5mm"
app:cardCornerRadius=
"4dp"
>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:padding=
"14mm"
android:orientation=
"vertical"
>
<TextView
android:id=
"@+id/tv_name"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"销售-贷款利息"
android:textSize=
"14sp"
/>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:gravity=
"right"
>
<EditText
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"0"
android:id=
"@+id/et_num"
android:inputType=
"number"
android:paddingHorizontal=
"5mm"
android:textColor=
"#fff56c6c"
android:background=
"@null"
android:textSize=
"24sp"
/>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:text=
"正望币"
android:textColor=
"#ff5e6d82"
android:textSize=
"12sp"
/>
</LinearLayout>
</LinearLayout>
</androidx.cardview.widget.CardView>
\ No newline at end of file
app/src/main/res/layout/item_financial_detail.xml
0 → 100644
浏览文件 @
d584580f
<?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:layout_centerHorizontal=
"true"
android:background=
"@color/white"
android:orientation=
"vertical"
android:paddingHorizontal=
"20mm"
android:paddingTop=
"10mm"
android:paddingBottom=
"20mm"
>
<RelativeLayout
android:id=
"@+id/rl_dep"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:paddingHorizontal=
"10mm"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerVertical=
"true"
android:text=
"税种"
android:textSize=
"13sp"
/>
<TextView
android:id=
"@+id/tv_type"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentRight=
"true"
android:layout_centerVertical=
"true"
android:textSize=
"13sp"
/>
</RelativeLayout>
<RelativeLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"10mm"
android:paddingHorizontal=
"10mm"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerVertical=
"true"
android:text=
"金额"
android:textSize=
"13sp"
/>
<TextView
android:id=
"@+id/tv_price"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentRight=
"true"
android:layout_centerVertical=
"true"
android:textSize=
"13sp"
/>
</RelativeLayout>
<RelativeLayout
android:id=
"@+id/rl_status"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"10mm"
android:paddingHorizontal=
"10mm"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerVertical=
"true"
android:text=
"审核状态"
android:textSize=
"13sp"
/>
<TextView
android:id=
"@+id/tv_status"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentRight=
"true"
android:layout_centerVertical=
"true"
android:textSize=
"13sp"
/>
</RelativeLayout>
<LinearLayout
android:id=
"@+id/rl_remark"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"10mm"
android:paddingHorizontal=
"10mm"
android:paddingVertical=
"4mm"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerVertical=
"true"
android:text=
"审核备注"
android:textSize=
"13sp"
/>
<EditText
android:id=
"@+id/et_remark"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_alignParentRight=
"true"
android:layout_centerVertical=
"true"
android:gravity=
"right"
android:layout_marginLeft=
"10mm"
android:background=
"@null"
android:hint=
"填写审核备注(标记错误必填)"
android:textSize=
"13sp"
/>
</LinearLayout>
<TextView
android:id=
"@+id/tv_error"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_gravity=
"right"
android:layout_marginTop=
"4mm"
android:background=
"@drawable/selector_btn_color"
android:paddingHorizontal=
"7mm"
android:paddingVertical=
"4mm"
android:text=
"标记错误"
android:textColor=
"@color/white"
/>
</LinearLayout>
\ No newline at end of file
app/src/main/res/layout/item_financial_modify.xml
0 → 100644
浏览文件 @
d584580f
<?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:layout_centerHorizontal=
"true"
android:background=
"@color/white"
android:orientation=
"vertical"
android:paddingHorizontal=
"20mm"
android:paddingTop=
"10mm"
android:paddingBottom=
"20mm"
>
<RelativeLayout
android:id=
"@+id/rl_dep"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:paddingHorizontal=
"10mm"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerVertical=
"true"
android:text=
"税种"
android:textSize=
"13sp"
/>
<TextView
android:id=
"@+id/tv_type"
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_alignParentRight=
"true"
android:layout_centerVertical=
"true"
android:textSize=
"13sp"
/>
</RelativeLayout>
<LinearLayout
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:layout_marginTop=
"10mm"
android:paddingHorizontal=
"10mm"
>
<TextView
android:layout_width=
"wrap_content"
android:layout_height=
"wrap_content"
android:layout_centerVertical=
"true"
android:text=
"金额"
android:textSize=
"13sp"
/>
<EditText
android:id=
"@+id/tv_price"
android:layout_width=
"match_parent"
android:layout_height=
"wrap_content"
android:background=
"@null"
android:paddingVertical=
"5mm"
android:gravity=
"right"
android:textSize=
"13sp"
/>
</LinearLayout>
</LinearLayout>
\ No newline at end of file
app/src/main/res/menu/menu_add.xml
浏览文件 @
d584580f
...
@@ -2,7 +2,7 @@
...
@@ -2,7 +2,7 @@
<menu
xmlns:android=
"http://schemas.android.com/apk/res/android"
<menu
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
>
xmlns:app=
"http://schemas.android.com/apk/res-auto"
>
<item
<item
android:id=
"@+id/
add
"
android:id=
"@+id/
history
"
android:title=
"添加"
android:title=
"添加"
app:showAsAction=
"always"
/>
app:showAsAction=
"always"
/>
</menu>
</menu>
\ No newline at end of file
app/src/main/res/menu/menu_history.xml
0 → 100644
浏览文件 @
d584580f
<?xml version="1.0" encoding="utf-8"?>
<menu
xmlns:android=
"http://schemas.android.com/apk/res/android"
xmlns:app=
"http://schemas.android.com/apk/res-auto"
>
<item
android:id=
"@+id/history"
android:title=
"缴费历史"
app:showAsAction=
"always"
/>
</menu>
\ No newline at end of file
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论