提交 0b062579 authored 作者: lgd's avatar lgd

1.我的部门

2.//TODO 坩埚下单,mes其他页面,mes用户反馈空也展示,编辑任务担当无法修改
上级 8f897129
......@@ -2086,6 +2086,23 @@
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<activity
android:name=".ui.activity.user.UserMoneyActivity"
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.user.UserMoneyDetailActivity"
android:configChanges="keyboardHidden|orientation"
android:label=" "
android:launchMode="singleTop"
android:screenOrientation="portrait"
android:theme="@style/Work.Base"
android:windowSoftInputMode="adjustPan" />
<provider
android:name="androidx.core.content.FileProvider"
android:authorities="com.wd.workoffice.fileprovider"
......
package com.wd.workoffice.bean;
/**
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class UserMoneyBean {
/**
* createdBy : 111
* createdByName : null
* createdTime : 2019-11-29 10:38:32
* updatedBy : 680
* updatedByName : null
* updatedTime : 2020-01-02 10:55:14
* id : 8
* ofSys : 1
* name : 销售二公司
* code : SALE_TWO
* deptId : 122
* balance : 9.99886856805E9
* frozenAmount : 0.0
* status : 1
* version : 113
* amount : null
* action : 0
* deptName : null
* createdUser : null
* remark : null
* deptRulers : null
* totalExpenditure : 2295999.16
* totalIncome : 84121.0
*/
private int createdBy;
private Object createdByName;
private String createdTime;
private int updatedBy;
private Object updatedByName;
private String updatedTime;
private int id;
private String ofSys;
private String name;
private String code;
private int deptId;
private double balance;
private double frozenAmount;
private String status;
private int version;
private Object amount;
private int action;
private Object deptName;
private Object createdUser;
private Object remark;
private Object deptRulers;
private double totalExpenditure;
private double totalIncome;
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 int getUpdatedBy() {
return updatedBy;
}
public void setUpdatedBy(int updatedBy) {
this.updatedBy = updatedBy;
}
public Object getUpdatedByName() {
return updatedByName;
}
public void setUpdatedByName(Object updatedByName) {
this.updatedByName = updatedByName;
}
public String getUpdatedTime() {
return updatedTime;
}
public void setUpdatedTime(String updatedTime) {
this.updatedTime = updatedTime;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getOfSys() {
return ofSys;
}
public void setOfSys(String ofSys) {
this.ofSys = ofSys;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public int getDeptId() {
return deptId;
}
public void setDeptId(int deptId) {
this.deptId = deptId;
}
public double getBalance() {
return balance;
}
public void setBalance(double balance) {
this.balance = balance;
}
public double getFrozenAmount() {
return frozenAmount;
}
public void setFrozenAmount(double frozenAmount) {
this.frozenAmount = frozenAmount;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public int getVersion() {
return version;
}
public void setVersion(int version) {
this.version = version;
}
public Object getAmount() {
return amount;
}
public void setAmount(Object amount) {
this.amount = amount;
}
public int getAction() {
return action;
}
public void setAction(int action) {
this.action = action;
}
public Object getDeptName() {
return deptName;
}
public void setDeptName(Object deptName) {
this.deptName = deptName;
}
public Object getCreatedUser() {
return createdUser;
}
public void setCreatedUser(Object createdUser) {
this.createdUser = createdUser;
}
public Object getRemark() {
return remark;
}
public void setRemark(Object remark) {
this.remark = remark;
}
public Object getDeptRulers() {
return deptRulers;
}
public void setDeptRulers(Object deptRulers) {
this.deptRulers = deptRulers;
}
public double getTotalExpenditure() {
return totalExpenditure;
}
public void setTotalExpenditure(double totalExpenditure) {
this.totalExpenditure = totalExpenditure;
}
public double getTotalIncome() {
return totalIncome;
}
public void setTotalIncome(double totalIncome) {
this.totalIncome = totalIncome;
}
}
......@@ -1878,4 +1878,41 @@ public interface ApiService {
*/
@GET("/product/process-list")
Observable<BaseBean> productProcess();
/**
* 集团账户
*
* @return
*/
@GET("/dept-account-balance/app/co/account-balance-info")
Observable<BaseBean> groupMoney();
/**
* 外汇银行
*
* @return
*/
@GET("/dept-account-balance/app/tax/account-balance-info")
Observable<BaseBean> bankMoney();
/**
* 税务账户
*
* @return
*/
@GET("/dept-account-balance/app/exchange/account-balance-info")
Observable<BaseBean> taxMoney();
/**
* 部门账户
*
* @return
*/
@GET("/dept-account-balance/app/account-balance-info")
Observable<BaseBean> depMoney();
}
......@@ -164,10 +164,4 @@ public class WorkFinancialFreezeActivity extends WorkToolBarActivity {
}
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// TODO: add setContentView(...) invocation
ButterKnife.bind(this);
}
}
package com.wd.workoffice.ui.activity.user;
import android.view.View;
import android.widget.RelativeLayout;
import com.wd.workoffice.R;
import com.wd.workoffice.app.WorkToolBarActivity;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
/**
* 我的 - 财务
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class UserMoneyActivity extends WorkToolBarActivity {
@BindView(R.id.rl_dep)
RelativeLayout rlDep;
@BindView(R.id.rl_group)
RelativeLayout rlGroup;
@BindView(R.id.rl_bank)
RelativeLayout rlBank;
@BindView(R.id.rl_tax)
RelativeLayout rlTax;
@Override
protected void initView() {
ButterKnife.bind(this);
}
@Override
protected void initData() {
}
@Override
protected void initEvent() {
}
@Override
protected int layoutId() {
return R.layout.activity_user_money;
}
@OnClick({R.id.rl_dep, R.id.rl_group, R.id.rl_bank, R.id.rl_tax})
public void onViewClicked(View view) {
switch (view.getId()) {
case R.id.rl_dep:
startActivity(UserMoneyDetailActivity.class,"type","1");
break;
case R.id.rl_group:
startActivity(UserMoneyDetailActivity.class,"type","2");
break;
case R.id.rl_bank:
startActivity(UserMoneyDetailActivity.class,"type","3");
break;
case R.id.rl_tax:
startActivity(UserMoneyDetailActivity.class,"type","4");
break;
}
}
}
package com.wd.workoffice.ui.activity.user;
import android.view.View;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.alibaba.fastjson.JSON;
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.FlowBean;
import com.wd.workoffice.bean.UserMoneyBean;
import com.wd.workoffice.retrofit.RtfUtils;
import com.wd.workoffice.retrofit.WorkObserver;
import com.wd.workoffice.ui.adapter.WorkFlowAdapter;
import com.wd.workoffice.util.MathUtils;
import com.wd.workoffice.util.PickTimeUtils;
import com.wd.workoffice.util.WorkUtils;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
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 flexible.xd.android_base.utils.TimeUtils;
import io.reactivex.Observable;
import io.reactivex.disposables.Disposable;
/**
* 我的 - 财务詳情
* author : flexible
* email : lgd19940421@163.com
* github: https://github.com/FlexibleXd
**/
public class UserMoneyDetailActivity extends WorkToolBarActivity {
@BindView(R.id.tv_name)
TextView tvName;
@BindView(R.id.tv_dep_price)
TextView tvDepPrice;
@BindView(R.id.tv_price_desc)
TextView tvPriceDesc;
@BindView(R.id.tv_dep_freeze_price)
TextView tvDepFreezePrice;
@BindView(R.id.ll_bottom)
LinearLayout llBottom;
@BindView(R.id.tv_month)
TextView tvMonth;
@BindView(R.id.ll_month)
LinearLayout llMonth;
@BindView(R.id.tv_income)
TextView tvIncome;
@BindView(R.id.tv_expenditure)
TextView tvExpenditure;
@BindView(R.id.rv_data)
RecyclerView rvData;
private Map<String, Object> param;
int page;
private List<FlowBean.RecordsBean> clientList;
private WorkFlowAdapter clientAdapter;
private UserMoneyBean userMoneyBean;
@Override
protected void initView() {
ButterKnife.bind(this);
rvData.setLayoutManager(new LinearLayoutManager(this, RecyclerView.VERTICAL, false));
tvMonth.setText(TimeUtils.getNowString(new SimpleDateFormat("yyyy-MM")));
param = WorkUtils.pageKey();
param.put("deptId", getIntent().getStringExtra("id"));
page = 1;
param.put("current", page);
addMonthParam(TimeUtils.getNowString(new SimpleDateFormat("yyyy-MM")));
}
private void addMonthParam(String nowString) {
param.put("searchStartTime", nowString + "-01 00:00:00");
String nextMonth = (Integer.valueOf(nowString.split("-")[1]) + 1) + "";
String nextMonthString = Integer.valueOf(nowString.split("-")[0]) + "-" + (nextMonth.length() == 2 ? nextMonth : "0" + nextMonth + "-01 00:00:00");
param.put("searchEndTime", nextMonthString);
}
@Override
protected void initData() {
clientList = new ArrayList<>();
clientAdapter = new WorkFlowAdapter(R.layout.item_work_flow, clientList);
clientAdapter.bindToRecyclerView(rvData);
clientAdapter.setEmptyView(R.layout.view_empty_content, rvData);
getAccountData();
}
private void getAccountData() {
Observable<BaseBean> observable;
switch (getIntent().getStringExtra("type")) {
case "1":
observable = RtfUtils.getRtf().depMoney();
break;
case "2":
observable = RtfUtils.getRtf().groupMoney();
break;
case "3":
observable = RtfUtils.getRtf().bankMoney();
break;
case "4":
observable = RtfUtils.getRtf().taxMoney();
break;
default:
observable = RtfUtils.getRtf().depMoney();
break;
}
observable.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;
}
userMoneyBean = JSON.parseObject(data.getData().toString(), UserMoneyBean.class);
tvDepPrice.setText(MathUtils.converData(userMoneyBean.getBalance(), 3));
tvDepFreezePrice.setText(MathUtils.converData(userMoneyBean.getFrozenAmount(), 3));
tvName.setText(userMoneyBean.getName());
tvIncome.setText(String.format("收入:¥%s", MathUtils.converData(userMoneyBean.getTotalIncome(), 3)));
tvExpenditure.setText(String.format("支出:¥%s", MathUtils.converData(userMoneyBean.getTotalExpenditure(), 3)));
getFlow();
}
});
}
private void getFlow() {
param.put("deptId", userMoneyBean.getDeptId());
RtfUtils.getRtf().getFlow(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;
}
List<FlowBean.RecordsBean> dataList = JSON.parseObject(data.getData().toString(), FlowBean.class).getRecords();
if (page == 1) {
clientList.clear();
clientList.addAll(dataList);
clientAdapter.notifyDataSetChanged();
clientAdapter.loadMoreComplete();
} else {
clientAdapter.loadMoreComplete();
clientList.addAll(dataList);
clientAdapter.notifyDataSetChanged();
}
if (dataList.size() == 0) {
clientAdapter.loadMoreEnd();
} else {
page++;
}
}
});
}
@Override
protected void initEvent() {
}
@Override
protected int layoutId() {
return R.layout.activity_user_money_detail;
}
@OnClick(R.id.ll_month)
public void onViewClicked() {
PickTimeUtils.showPickTwo(this, new OnTimeSelectListener() {
@Override
public void onTimeSelect(Date date, View view) {
String month = TimeUtils.date2String(date, new SimpleDateFormat("yyyy-MM"));
tvMonth.setText(month);
addMonthParam(month);
page = 1;
param.put("current", page);
getFlow();
}
}).show();
}
}
......@@ -7,6 +7,7 @@ import android.widget.TextView;
import com.wd.workoffice.R;
import com.wd.workoffice.app.WorkBaseFg;
import com.wd.workoffice.ui.activity.user.UserInfoActivity;
import com.wd.workoffice.ui.activity.user.UserMoneyActivity;
import com.wd.workoffice.ui.activity.user.UserPermissionActivity;
import com.wd.workoffice.ui.activity.user.UserSettingActivity;
import com.wd.workoffice.util.UserKeeper;
......@@ -60,7 +61,7 @@ public class MyFragment extends WorkBaseFg {
}
@OnClick({R.id.ll_role, R.id.ll_info, R.id.ll_setting})
@OnClick({R.id.ll_role,R.id.ll_money, R.id.ll_info, R.id.ll_setting})
public void onViewClicked(View view) {
switch (view.getId()) {
case R.id.ll_role:
......@@ -72,6 +73,9 @@ public class MyFragment extends WorkBaseFg {
case R.id.ll_setting:
startActivity(UserSettingActivity.class);
break;
case R.id.ll_money:
startActivity(UserMoneyActivity.class);
break;
}
}
......
<?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="match_parent"
android:orientation="vertical">
<RelativeLayout
android:id="@+id/rl_group"
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="16sp" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:src="@mipmap/arrow_right_my" />
</RelativeLayout>
<View style="@style/dividerX" />
<RelativeLayout
android:id="@+id/rl_bank"
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="16sp" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:src="@mipmap/arrow_right_my" />
</RelativeLayout>
<View style="@style/dividerX" />
<RelativeLayout
android:id="@+id/rl_tax"
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="16sp" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:src="@mipmap/arrow_right_my" />
</RelativeLayout>
<View style="@style/dividerX" />
<RelativeLayout
android:id="@+id/rl_dep"
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="16sp" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:src="@mipmap/arrow_right_my" />
</RelativeLayout>
</LinearLayout>
\ No newline at end of file
<?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="match_parent"
android:orientation="vertical">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/white"
android:orientation="vertical"
android:paddingBottom="10mm">
<TextView
android:id="@+id/tv_name"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="10mm"
android:layout_marginTop="10mm"
android:background="#359486"
android:paddingHorizontal="30mm"
android:paddingVertical="16mm"
android:text="销售一部"
android:textColor="@color/white"
android:textSize="16sp" />
<LinearLayout
android:id="@+id/ll_bottom"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginHorizontal="10mm"
android:background="#37A999"
android:orientation="horizontal"
android:paddingHorizontal="30mm"
android:paddingVertical="16mm">
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="账户余额"
android:textColor="#b3ffffff"
android:textSize="12sp" />
<TextView
android:id="@+id/tv_dep_price"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="4mm"
android:textColor="@color/white"
android:textSize="14sp" />
</LinearLayout>
<LinearLayout
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="vertical">
<TextView
android:id="@+id/tv_price_desc"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="可用余额"
android:textColor="#b3ffffff"
android:textSize="12sp" />
<TextView
android:id="@+id/tv_dep_freeze_price"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="4mm"
android:textColor="@color/white"
android:textSize="14sp" />
</LinearLayout>
</LinearLayout>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="10mm"
android:background="@color/white"
android:orientation="vertical"
android:paddingHorizontal="20mm"
android:paddingVertical="12mm">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="账户流水"
android:textSize="16sp" />
<LinearLayout
android:id="@+id/ll_month"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true">
<TextView
android:id="@+id/tv_month"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="本月"
android:textSize="14sp" />
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@mipmap/arrow_down" />
</LinearLayout>
</RelativeLayout>
<LinearLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5mm">
<TextView
android:id="@+id/tv_income"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="收入:¥0.00"
android:textColor="#ff6d9aba"
android:textSize="12sp" />
<TextView
android:id="@+id/tv_expenditure"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="30mm"
android:text="支出:¥0.00"
android:textColor="#ff6d9aba"
android:textSize="12sp" />
</LinearLayout>
</LinearLayout>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/rv_data"
android:layout_width="match_parent"
android:layout_height="match_parent" />
</LinearLayout>
\ No newline at end of file
......@@ -89,7 +89,38 @@
android:layout_height="20mm"
android:background="@mipmap/arrow_right_my" />
</LinearLayout>
<View
style="@style/dividerX"
android:layout_marginHorizontal="26mm" />
<LinearLayout
android:id="@+id/ll_money"
style="@style/llStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical"
android:orientation="horizontal">
<ImageView
android:layout_width="24mm"
android:layout_height="24mm"
android:background="@mipmap/my_money" />
<TextView
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:layout_marginLeft="10mm"
android:layout_weight="1"
android:text="我的财务"
android:textSize="16sp" />
<ImageView
android:layout_width="20mm"
android:layout_height="20mm"
android:background="@mipmap/arrow_right_my" />
</LinearLayout>
<View
style="@style/dividerX"
android:layout_marginHorizontal="26mm" />
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论