Commit 1d9d8e7c by qyw

update

parent fe51a9a1
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="VcsDirectoryMappings">
<mapping directory="$PROJECT_DIR$/.." vcs="Git" />
</component>
</project>
\ No newline at end of file
...@@ -3,6 +3,8 @@ ...@@ -3,6 +3,8 @@
package="com.ifavine.pay"> package="com.ifavine.pay">
<!-- To auto-complete the email text field in the login form with the user's emails --> <!-- To auto-complete the email text field in the login form with the user's emails -->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" /> <uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.READ_PROFILE" /> <uses-permission android:name="android.permission.READ_PROFILE" />
<uses-permission android:name="android.permission.READ_CONTACTS" /> <uses-permission android:name="android.permission.READ_CONTACTS" />
...@@ -15,6 +17,8 @@ ...@@ -15,6 +17,8 @@
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.CAMERA" /> <uses-permission android:name="android.permission.CAMERA" />
<uses-permission android:name="android.permission.FLASHLIGHT" /> <uses-permission android:name="android.permission.FLASHLIGHT" />
...@@ -29,11 +33,11 @@ ...@@ -29,11 +33,11 @@
android:supportsRtl="true" android:supportsRtl="true"
android:theme="@style/AppTheme"> android:theme="@style/AppTheme">
<activity <activity
android:name=".ui.activity.MainActivity" android:name=".ui.activity.WelcomeActivity"
android:keepScreenOn="true"
android:label="@string/app_name" android:label="@string/app_name"
android:launchMode="singleTask" android:launchMode="singleTask"
android:screenOrientation="landscape" android:screenOrientation="landscape"
android:windowSoftInputMode="stateAlwaysHidden"> android:windowSoftInputMode="stateAlwaysHidden">
<intent-filter> <intent-filter>
<action android:name="android.intent.action.MAIN" /> <action android:name="android.intent.action.MAIN" />
...@@ -41,6 +45,15 @@ ...@@ -41,6 +45,15 @@
<category android:name="android.intent.category.LAUNCHER" /> <category android:name="android.intent.category.LAUNCHER" />
</intent-filter> </intent-filter>
</activity> </activity>
<activity
android:name=".ui.activity.MainActivity"
android:keepScreenOn="true"
android:label="@string/app_name"
android:launchMode="singleTask"
android:screenOrientation="landscape"
android:windowSoftInputMode="stateAlwaysHidden"></activity>
<service android:name=".utils.DownloadService" /> <service android:name=".utils.DownloadService" />
</application> </application>
......
package com.ifavine.pay.adapter;
import android.content.Context;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import com.ifavine.pay.R;
import com.ifavine.pay.ui.base.ListBaseAdapter;
import com.ifavine.pay.ui.base.SuperViewHolder;
import com.ifavine.pay.vo.MonthRecordReport;
/**
* Created by Administrator on 2018/10/25.
*/
public class MonthRecordReportAdapter extends ListBaseAdapter<MonthRecordReport> {
public MonthRecordReportAdapter(Context context) {
super(context);
}
@Override
public int getLayoutId() {
return R.layout.item_report_months;
}
@Override
public void onBindItemHolder(SuperViewHolder holder, final int position) {
MonthRecordReport questType = mDataList.get(position);
TextView tv_WindowName = holder.getView(R.id.tv_WindowName);
TextView tv_CanteenName = holder.getView(R.id.tv_CanteenName);
TextView tv_DinnerAmount = holder.getView(R.id.tv_DinnerAmount);
TextView tv_AllowanceAmount = holder.getView(R.id.tv_AllowanceAmount);
TextView tv_asConsumption = holder.getView(R.id.tv_asConsumption);
tv_WindowName.setText(questType.WindowName);
tv_AllowanceAmount.setText(questType.AllowanceAmount);
tv_CanteenName.setText(questType.CanteenName);
tv_DinnerAmount.setText(questType.DinnerAmount);
tv_asConsumption.setText(questType.asConsumption);
}
}
package com.ifavine.pay.adapter;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.TextView;
import com.ifavine.pay.R;
import com.ifavine.pay.vo.VersionBean;
import java.util.List;
/**
* Created by Administrator on 2018/10/23.
*/
public class ReportMonthsAdapter extends BaseAdapter {
private LayoutInflater mInflater;
private List<VersionBean> mDatas;
//MyAdapter需要一个Context,通过Context获得Layout.inflater,然后通过inflater加载item的布局
public ReportMonthsAdapter(Context context, List<VersionBean> datas) {
mInflater = LayoutInflater.from(context);
mDatas = datas;
}
//返回数据集的长度
@Override
public int getCount() {
return mDatas.size();
}
@Override
public Object getItem(int position) {
return mDatas.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
//这个方法才是重点,我们要为它编写一个ViewHolder
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder = null;
if (convertView == null) {
convertView = mInflater.inflate(R.layout.item_report_months, parent, false); //加载布局
holder = new ViewHolder();
convertView.setTag(holder);
} else { //else里面说明,convertView已经被复用了,说明convertView中已经设置过tag了,即holder
holder = (ViewHolder) convertView.getTag();
}
VersionBean bean = mDatas.get(position);
holder.tv_name.setText(bean.link);
holder.tv_num.setText(bean.os_type);
holder.tv_amount.setText(bean.version_description);
holder.tv_company.setText(bean.version_id);
return convertView;
}
//这个ViewHolder只能服务于当前这个特定的adapter,因为ViewHolder里会指定item的控件,不同的ListView,item可能不同,所以ViewHolder写成一个私有的类
private class ViewHolder {
TextView tv_name;
TextView tv_num;
TextView tv_amount;
TextView tv_company;
}
}
package com.ifavine.pay.api; package com.ifavine.pay.api;
import com.ifavine.pay.vo.CanteenWindow;
import com.ifavine.pay.vo.CommonListResponse; import com.ifavine.pay.vo.CommonListResponse;
import com.ifavine.pay.vo.CommonResponse; import com.ifavine.pay.vo.CommonResponse;
import com.ifavine.pay.vo.User; import com.ifavine.pay.vo.User;
import okhttp3.RequestBody;
import retrofit2.Call; import retrofit2.Call;
import retrofit2.http.Body;
import retrofit2.http.Field; import retrofit2.http.Field;
import retrofit2.http.FormUrlEncoded; import retrofit2.http.FormUrlEncoded;
...@@ -23,5 +26,40 @@ public abstract interface APIService { ...@@ -23,5 +26,40 @@ public abstract interface APIService {
@POST("getMeetingTaskReplyList") @POST("getMeetingTaskReplyList")
Call<CommonListResponse<User>> getMsgDaliyList2(@Field("data") String data); Call<CommonListResponse<User>> getMsgDaliyList2(@Field("data") String data);
@FormUrlEncoded
@POST("GetServerDate")
Call<CommonResponse<String>> GetServerDate(@Body RequestBody info);
@FormUrlEncoded
@POST("GetLocalRecordReport")
Call<CommonResponse<String>> GetLocalRecordReport(@Body RequestBody info);
@FormUrlEncoded
@POST("GetMonthRecordReport")
Call<CommonResponse<String>> GetMonthRecordReport(@Body RequestBody info);
@FormUrlEncoded
@POST("GetConsumRecordReport")
Call<CommonResponse<String>> GetConsumRecordReport(@Body RequestBody info);
@FormUrlEncoded
@POST("SubmitPaying")
Call<CommonResponse<String>> SubmitPaying(@Body RequestBody body);
@POST("GetCanteenWindows")
Call<CommonListResponse<CanteenWindow>> GetCanteenWindows(@Body RequestBody body);
@POST("SaveCanteenWindows")
Call<CommonResponse> SaveCanteenWindows(@Body RequestBody body);
@POST("GetWindowCostAmount")
Call<CommonListResponse<CanteenWindow>> GetWindowCostAmount(@Body RequestBody body);
@POST("SaveWindowCostAmount")
Call<CommonResponse> SaveWindowCostAmount(@Body RequestBody body);
} }
package com.ifavine.pay.api; package com.ifavine.pay.api;
import com.ifavine.pay.vo.CanteenWindow;
import com.ifavine.pay.vo.CommonListResponse; import com.ifavine.pay.vo.CommonListResponse;
import com.ifavine.pay.vo.CommonResponse; import com.ifavine.pay.vo.CommonResponse;
...@@ -8,6 +9,7 @@ import com.ifavine.pay.vo.User; ...@@ -8,6 +9,7 @@ import com.ifavine.pay.vo.User;
import org.json.JSONObject; import org.json.JSONObject;
import okhttp3.RequestBody;
import retrofit2.Call; import retrofit2.Call;
/** /**
...@@ -78,5 +80,194 @@ public class APIWrapper extends RetrofitUtil { ...@@ -78,5 +80,194 @@ public class APIWrapper extends RetrofitUtil {
return getAPIService().getMsgDaliyList2(data.toString()); return getAPIService().getMsgDaliyList2(data.toString());
} }
/**
* 服务器时间
*
* @return
*/
public Call<CommonResponse<String>> getServerDate() {
String obj = "";
RequestBody body = RequestBody.create(okhttp3.MediaType.parse("application/json; charset=utf-8"), obj);
return getAPIService().GetServerDate(body);
}
public Call<CommonResponse<String>> SubmitPaying(String PayCode, String Mac, String DeviceNo) {
String obj = "";
RequestBody body = RequestBody.create(okhttp3.MediaType.parse("application/json; charset=utf-8"), obj);
return getAPIService().SubmitPaying(body);
}
/**
* @param CanteenName
* @param WindowName
* @param sDate
* @param eDate
* @param dinnerType
* @param PageIndex
* @param PageSize
* @return
*/
public Call<CommonResponse<String>> GetLocalRecordReport(String CanteenName, String WindowName,
String sDate, String eDate,
String dinnerType, String PageIndex,
String PageSize) {
// "CanteenName": "第二食堂",
// "WindowName": "7号",
// "sDate": "2018-02-10 16:14:54.000",
// "eDate": "2018-10-18 16:14:54.000",
// "dinnerType": "2",
// "PageIndex":"2",
// "PageSize":"3"
JSONObject obj = new JSONObject();
try {
obj.put("CanteenName", CanteenName);
obj.put("WindowName", WindowName);
obj.put("sDate", sDate);
obj.put("eDate", eDate);
obj.put("dinnerType", dinnerType);
obj.put("PageIndex", PageIndex);
obj.put("PageSize", PageSize);
} catch (Exception e) {
e.printStackTrace();
}
RequestBody body = RequestBody.create(okhttp3.MediaType.parse("application/json; charset=utf-8"), obj.toString());
return getAPIService().GetLocalRecordReport(body);
}
/**
* @param CanteenName
* @param WindowName
* @param sDate
* @param eDate
* @param dinnerType
* @param PageIndex
* @param PageSize
* @return
*/
public Call<CommonResponse<String>> GetConsumRecordReport(String WinName, String CanteenNo,
String sDate, String eDate,
String dinnerType, String PageIndex,
String PageSize, String record) {
// WinName": "7号",//可填或不填,窗口号
// "CanteenNo": "001",
// "sDate": "2018-02-06 15:06:56.000",
// "eDate": "2018-10-18 15:06:56.000",
// "dinnerType": "3",//可填或不填,用餐类型
// "record": "1",//可填或不填,1:正常记录2:异常记录
// "PageIndex": "2",
// "PageSize": "10"
JSONObject obj = new JSONObject();
try {
obj.put("WinName", WinName);
obj.put("CanteenNo", CanteenNo);
obj.put("sDate", sDate);
obj.put("eDate", eDate);
obj.put("dinnerType", dinnerType);
obj.put("PageIndex", PageIndex);
obj.put("PageSize", PageSize);
obj.put("record", record);
} catch (Exception e) {
e.printStackTrace();
}
RequestBody body = RequestBody.create(okhttp3.MediaType.parse("application/json; charset=utf-8"), obj.toString());
return getAPIService().GetConsumRecordReport(body);
}
/**
* 月消费记录
*
* @return
*/
public Call<CommonResponse<String>> GetMonthRecordReport(String Year, String Month) {
// "CanteenName": "第二食堂",
// "WindowName": "7号",
// "sDate": "2018-02-10 16:14:54.000",
// "eDate": "2018-10-18 16:14:54.000",
// "dinnerType": "2",
// "PageIndex":"2",
// "PageSize":"3"
JSONObject obj = new JSONObject();
try {
obj.put("Year", Year);
obj.put("Month", Month);
} catch (Exception e) {
e.printStackTrace();
}
RequestBody body = RequestBody.create(okhttp3.MediaType.parse("application/json; charset=utf-8"), obj.toString());
return getAPIService().GetMonthRecordReport(body);
}
/**
* 获取窗口
*
* @param Mac
* @return
*/
public Call<CommonListResponse<CanteenWindow>> GetCanteenWindows(String Mac) {
JSONObject obj = new JSONObject();
try {
obj.put("MacAddress", Mac);
} catch (Exception e) {
e.printStackTrace();
}
RequestBody body = RequestBody.create(okhttp3.MediaType.parse("application/json; charset=utf-8"), obj.toString());
return getAPIService().GetCanteenWindows(body);
}
/**
* 设置窗口
*
* @param MacAddress
* @param CanTeenCode
* @param WindowName
* @return
*/
public Call<CommonResponse> SaveCanteenWindows(String MacAddress, String CanTeenCode, String WindowName) {
JSONObject obj = new JSONObject();
try {
obj.put("MacAddress", MacAddress);
obj.put("CanTeenCode", CanTeenCode);
obj.put("WindowName", WindowName);
} catch (Exception e) {
e.printStackTrace();
}
RequestBody body = RequestBody.create(okhttp3.MediaType.parse("application/json; charset=utf-8"), obj.toString());
return getAPIService().SaveCanteenWindows(body);
}
/**
* 获取窗口的消费金额与补助金额
*
* @param Mac
* @return
*/
public Call<CommonListResponse<CanteenWindow>> GetWindowCostAmount(String Mac) {
JSONObject obj = new JSONObject();
try {
obj.put("MacAddress", Mac);
} catch (Exception e) {
e.printStackTrace();
}
RequestBody body = RequestBody.create(okhttp3.MediaType.parse("application/json; charset=utf-8"), obj.toString());
return getAPIService().GetWindowCostAmount(body);
}
/**
* 保存窗口消费金额与补助金额的设置
*
* @param MacAddress
* @return
*/
public Call<CommonResponse> SaveWindowCostAmount(String MacAddress, String DinnerCost) {
JSONObject obj = new JSONObject();
try {
obj.put("MacAddress", MacAddress);
obj.put("DinnerCost", DinnerCost);
} catch (Exception e) {
e.printStackTrace();
}
RequestBody body = RequestBody.create(okhttp3.MediaType.parse("application/json; charset=utf-8"), obj.toString());
return getAPIService().SaveWindowCostAmount(body);
}
} }
\ No newline at end of file
...@@ -46,9 +46,9 @@ public class JsonResponseBodyConverter<T> implements Converter<ResponseBody, T> ...@@ -46,9 +46,9 @@ public class JsonResponseBodyConverter<T> implements Converter<ResponseBody, T>
String data = null; String data = null;
try { try {
//数据解密 //数据解密
JSONObject obj = new JSONObject(responseBody.string()); String d = responseBody.string().replaceAll("\\\\", "");
data = obj.getString("data"); data = d.substring(1, d.length() - 1);
Log.i("aaaaa", "response data:" + data); Log.i("aaaaa", "response data2:" + data);
} catch (Exception e) { } catch (Exception e) {
e.printStackTrace(); e.printStackTrace();
} }
......
...@@ -57,7 +57,7 @@ public class AppContext extends BaseApplication { ...@@ -57,7 +57,7 @@ public class AppContext extends BaseApplication {
/** /**
* 是否调试模式 * 是否调试模式
*/ */
public static final boolean DebugModel = false; public static final boolean DebugModel = true;
/** /**
* 语言头部分 * 语言头部分
*/ */
......
...@@ -5,9 +5,8 @@ package com.ifavine.pay.common; ...@@ -5,9 +5,8 @@ package com.ifavine.pay.common;
*/ */
public class Constants { public class Constants {
//public static final String BASE_URL = "http://si.ifavine.cn/OA/api/app/";
// public static final String IMAGE_URL = "http://sisource.ifavine.cn"; public static final String BASE_URL = "http://121.33.220.19:3080/api/WebChat/";
public static final String BASE_URL = "http://si.topcreating.com/OA/api/app/";
public static final String IMAGE_URL = "http://sisource.topcreating.com"; public static final String IMAGE_URL = "http://sisource.topcreating.com";
public static String LANG = "zn-cn"; public static String LANG = "zn-cn";
......
...@@ -3,6 +3,7 @@ package com.ifavine.pay.ui.activity; ...@@ -3,6 +3,7 @@ package com.ifavine.pay.ui.activity;
import android.os.Bundle; import android.os.Bundle;
import android.os.Handler; import android.os.Handler;
import android.os.Message; import android.os.Message;
import android.text.TextUtils;
import android.util.Log; import android.util.Log;
import android.view.WindowManager; import android.view.WindowManager;
import android.webkit.WebSettings; import android.webkit.WebSettings;
...@@ -12,7 +13,9 @@ import android.widget.ImageView; ...@@ -12,7 +13,9 @@ import android.widget.ImageView;
import com.ifavine.pay.R; import com.ifavine.pay.R;
import com.ifavine.pay.ui.base.BaseActivity; import com.ifavine.pay.ui.base.BaseActivity;
import com.ifavine.pay.utils.MD5Util;
import com.ifavine.pay.utils.SPUtil; import com.ifavine.pay.utils.SPUtil;
import com.ifavine.pay.utils.WifiAdmin;
import butterknife.BindView; import butterknife.BindView;
...@@ -23,6 +26,7 @@ public class WelcomeActivity extends BaseActivity { ...@@ -23,6 +26,7 @@ public class WelcomeActivity extends BaseActivity {
@BindView(R.id.iv_image) @BindView(R.id.iv_image)
ImageView ivImage; ImageView ivImage;
WifiAdmin wifiAdmin;
@Override @Override
protected int getLayoutId() { protected int getLayoutId() {
...@@ -45,46 +49,42 @@ public class WelcomeActivity extends BaseActivity { ...@@ -45,46 +49,42 @@ public class WelcomeActivity extends BaseActivity {
@Override @Override
public void initData() { public void initData() {
super.initData(); super.initData();
handler.sendEmptyMessageDelayed(0, 800);
// 全屏 // 全屏
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN); getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
wifiAdmin = new WifiAdmin(mContext);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
autoLogin();
}
}, 1000);
} }
Handler handler = new Handler() {
@Override
public void handleMessage(Message msg) {
super.handleMessage(msg);
autoLogin();
finish();
}
};
@Override @Override
protected void onPause() { protected void onPause() {
super.onPause(); super.onPause();
handler.removeMessages(0);
} }
@Override @Override
public void onDestroy() { public void onDestroy() {
super.onDestroy(); super.onDestroy();
handler.removeMessages(0);
} }
private void autoLogin() { private void autoLogin() {
boolean isShow = SPUtil.getInstance().readBoolean("ShowGuide"); boolean autoLogin = SPUtil.getInstance().readBoolean("autoLogin");
if (isShow) { String Mac = wifiAdmin.GetMacAddress();
boolean login = SPUtil.getInstance().readBoolean("user.autoLogin"); if (!autoLogin) {
if (login) { SPUtil.getInstance().writeBoolean("autoLogin", true);
gotoActivity(MainActivity.class); String pwd = MD5Util.MD5("12345");
} else { SPUtil.getInstance().writeString("pwd", pwd);
// gotoActivity(LoginActivity.class); }
} if (!TextUtils.isEmpty(Mac)) {
} else { SPUtil.getInstance().writeString("Mac", Mac);
gotoActivity(MainActivity.class);
} }
Log.i("ggg", Mac);
gotoActivity(MainActivity.class);
finish();
} }
private String getWebAgent() { private String getWebAgent() {
......
...@@ -4,8 +4,12 @@ import android.app.DatePickerDialog; ...@@ -4,8 +4,12 @@ import android.app.DatePickerDialog;
import android.app.Dialog; import android.app.Dialog;
import android.app.TimePickerDialog; import android.app.TimePickerDialog;
import android.content.Context; import android.content.Context;
import android.os.Handler;
import android.support.v7.widget.LinearLayoutManager;
import android.text.TextUtils; import android.text.TextUtils;
import android.util.Log;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.MotionEvent;
import android.view.View; import android.view.View;
import android.view.WindowManager; import android.view.WindowManager;
import android.widget.Button; import android.widget.Button;
...@@ -13,18 +17,30 @@ import android.widget.DatePicker; ...@@ -13,18 +17,30 @@ import android.widget.DatePicker;
import android.widget.EditText; import android.widget.EditText;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.Spinner; import android.widget.Spinner;
import android.widget.TextView; import android.widget.TextView;
import android.widget.TimePicker; import android.widget.TimePicker;
import com.github.jdsjlzx.interfaces.OnLoadMoreListener;
import com.github.jdsjlzx.interfaces.OnRefreshListener;
import com.github.jdsjlzx.recyclerview.LRecyclerView;
import com.github.jdsjlzx.recyclerview.LRecyclerViewAdapter;
import com.ifavine.pay.R; import com.ifavine.pay.R;
import com.ifavine.pay.adapter.MonthRecordReportAdapter;
import com.ifavine.pay.adapter.ReportMonthsAdapter;
import com.ifavine.pay.adapter.SpinnerAdapter; import com.ifavine.pay.adapter.SpinnerAdapter;
import com.ifavine.pay.common.AppContext; import com.ifavine.pay.common.AppContext;
import com.ifavine.pay.common.Constants;
import com.ifavine.pay.view.datepicker.DateUtil; import com.ifavine.pay.view.datepicker.DateUtil;
import com.ifavine.pay.vo.MonthRecordReport;
import com.ifavine.pay.vo.VersionBean;
import java.util.ArrayList;
import java.util.Calendar; import java.util.Calendar;
import java.util.Date; import java.util.Date;
import java.util.List;
public class DialogMainSetUtils { public class DialogMainSetUtils {
private static Dialog tipDialog; private static Dialog tipDialog;
...@@ -112,6 +128,13 @@ public class DialogMainSetUtils { ...@@ -112,6 +128,13 @@ public class DialogMainSetUtils {
android.R.layout.simple_spinner_item, options2); android.R.layout.simple_spinner_item, options2);
spinner2.setAdapter(adapter2); spinner2.setAdapter(adapter2);
dialog.show(); dialog.show();
view.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View view, MotionEvent motionEvent) {
Log.e("ggg", "setOnTouchListener");
return false;
}
});
return dialog; return dialog;
} }
...@@ -199,7 +222,7 @@ public class DialogMainSetUtils { ...@@ -199,7 +222,7 @@ public class DialogMainSetUtils {
} }
public static Dialog showChangePwdDialog(Context mContext, final String title, final View.OnClickListener okListener, public static Dialog showChangePwdDialog(final Context mContext, final String title, final View.OnClickListener okListener,
View.OnClickListener cancelListener, boolean cancelable) { View.OnClickListener cancelListener, boolean cancelable) {
View view = View.inflate(mContext, R.layout.dialog_pwd_set, null); View view = View.inflate(mContext, R.layout.dialog_pwd_set, null);
final Dialog dialog = new Dialog(mContext, R.style.dialog_style);// 创建自定义样式dialog final Dialog dialog = new Dialog(mContext, R.style.dialog_style);// 创建自定义样式dialog
...@@ -214,7 +237,7 @@ public class DialogMainSetUtils { ...@@ -214,7 +237,7 @@ public class DialogMainSetUtils {
final EditText et2 = (EditText) view.findViewById(R.id.dialog_et2); final EditText et2 = (EditText) view.findViewById(R.id.dialog_et2);
final EditText et3 = (EditText) view.findViewById(R.id.dialog_et3); final EditText et3 = (EditText) view.findViewById(R.id.dialog_et3);
TextView tv_title = (TextView) view.findViewById(R.id.dialog_title); TextView tv_title = (TextView) view.findViewById(R.id.dialog_title);
final TextView tips = (TextView) view.findViewById(R.id.tips);
ImageView iv_cancel = (ImageView) view.findViewById(R.id.iv_cancel); ImageView iv_cancel = (ImageView) view.findViewById(R.id.iv_cancel);
if (title != null) { if (title != null) {
...@@ -222,7 +245,6 @@ public class DialogMainSetUtils { ...@@ -222,7 +245,6 @@ public class DialogMainSetUtils {
tv_title.setVisibility(View.VISIBLE); tv_title.setVisibility(View.VISIBLE);
} }
//set cancel listener //set cancel listener
if (cancelListener != null) { if (cancelListener != null) {
btn_cancel.setOnClickListener(cancelListener); btn_cancel.setOnClickListener(cancelListener);
...@@ -236,17 +258,36 @@ public class DialogMainSetUtils { ...@@ -236,17 +258,36 @@ public class DialogMainSetUtils {
}); });
} }
//set confirm listener //set confirm listener
if (okListener != null) { btn_ok.setOnClickListener(new View.OnClickListener() {
} else { @Override
btn_ok.setOnClickListener(new View.OnClickListener() { public void onClick(View v) {
String old = et1.getText().toString().trim();
@Override String newP = et2.getText().toString().trim();
public void onClick(View v) { String comP = et3.getText().toString().trim();
dialog.dismiss(); if (TextUtils.isEmpty(old) || TextUtils.isEmpty(newP) || TextUtils.isEmpty(comP)) {
tips.setText("密码都不能为空");
return;
} }
}); if (!SPUtil.getInstance().readString("pwd").equals(MD5Util.MD5(old))) {
} tips.setText("管理员密码不正确");
return;
}
if (!newP.equals(comP) && !newP.equals("")) {
tips.setText("确认密码不一致");
return;
}
SPUtil.getInstance().writeString("pwd", MD5Util.MD5(comP));
tips.setTextColor(mContext.getResources().getColorStateList(R.color.green));
tips.setText("密码修改成功!");
handler.postDelayed(new Runnable() {
@Override
public void run() {
dialog.dismiss();
}
}, 2000);
}
});
iv_cancel.setOnClickListener(new View.OnClickListener() { iv_cancel.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View view) { public void onClick(View view) {
...@@ -257,6 +298,8 @@ public class DialogMainSetUtils { ...@@ -257,6 +298,8 @@ public class DialogMainSetUtils {
return dialog; return dialog;
} }
static Handler handler = new Handler();
public static Dialog showSetAmtDialog(final Context mContext, final String title, final View.OnClickListener okListener, public static Dialog showSetAmtDialog(final Context mContext, final String title, final View.OnClickListener okListener,
View.OnClickListener cancelListener, boolean cancelable) { View.OnClickListener cancelListener, boolean cancelable) {
View view = View.inflate(mContext, R.layout.dialog_amt_set, null); View view = View.inflate(mContext, R.layout.dialog_amt_set, null);
...@@ -583,6 +626,10 @@ public class DialogMainSetUtils { ...@@ -583,6 +626,10 @@ public class DialogMainSetUtils {
return dialog; return dialog;
} }
static int mCurrent = 0;
static int mCount = 10;
static boolean isLoadMore = false;
public static Dialog showReportSumDialog(final Context mContext, final String title, final View.OnClickListener okListener, public static Dialog showReportSumDialog(final Context mContext, final String title, final View.OnClickListener okListener,
boolean cancelable) { boolean cancelable) {
...@@ -602,11 +649,60 @@ public class DialogMainSetUtils { ...@@ -602,11 +649,60 @@ public class DialogMainSetUtils {
TextView tv_title = (TextView) view.findViewById(R.id.dialog_title); TextView tv_title = (TextView) view.findViewById(R.id.dialog_title);
Spinner spinner1 = (Spinner) view.findViewById(R.id.sp_year); Spinner spinner1 = (Spinner) view.findViewById(R.id.sp_year);
Spinner spinner2 = (Spinner) view.findViewById(R.id.spinner2); Spinner spinner2 = (Spinner) view.findViewById(R.id.spinner2);
final LRecyclerView mLRecyclerView = (LRecyclerView) view.findViewById(R.id.mLRecyclerView);
final MonthRecordReportAdapter adapter = new MonthRecordReportAdapter(mContext);
LRecyclerViewAdapter mLRecyclerViewAdapter = new LRecyclerViewAdapter(adapter);
mLRecyclerView.setLayoutManager(new LinearLayoutManager(mContext) {
});
mLRecyclerView.setAdapter(mLRecyclerViewAdapter);
mLRecyclerView.setPullRefreshEnabled(true);
mLRecyclerView.setOnRefreshListener(new OnRefreshListener() {
@Override
public void onRefresh() {
mCurrent = 1;
// getMessageList();
}
});
mLRecyclerView.refresh();
mLRecyclerView.setOnLoadMoreListener(new OnLoadMoreListener() {
@Override
public void onLoadMore() {
if (mCurrent * Constants.PAGE_SIZE < mCount) {
mCurrent++;
isLoadMore = true;
//getMessageList();
} else {
mLRecyclerView.setNoMore(true);
isLoadMore = false;
}
}
});
final List<MonthRecordReport> beanList = new ArrayList<>();
for (int i = 0; i < 1000; i++) {
MonthRecordReport bean = new MonthRecordReport();
bean.AllowanceAmount = "链接" + i;
bean.asConsumption = "类型" + i;
bean.CanteenName = "version_description" + i;
bean.WindowName = "version_id" + i;
beanList.add(bean);
}
handler.postDelayed(new Runnable() {
@Override
public void run() {
mLRecyclerView.refreshComplete(1);
adapter.setDataList(beanList);
}
}, 2000);
String options[] = mContext.getResources().getStringArray(R.array.main_year); String options[] = mContext.getResources().getStringArray(R.array.main_year);
SpinnerAdapter adapter = new SpinnerAdapter(mContext, SpinnerAdapter adapter1 = new SpinnerAdapter(mContext,
android.R.layout.simple_spinner_item, options); android.R.layout.simple_spinner_item, options);
spinner1.setAdapter(adapter); spinner1.setAdapter(adapter1);
String options2[] = mContext.getResources().getStringArray(R.array.main_months); String options2[] = mContext.getResources().getStringArray(R.array.main_months);
SpinnerAdapter adapter2 = new SpinnerAdapter(mContext, SpinnerAdapter adapter2 = new SpinnerAdapter(mContext,
......
...@@ -4,6 +4,9 @@ import android.app.Activity; ...@@ -4,6 +4,9 @@ import android.app.Activity;
import android.app.Dialog; import android.app.Dialog;
import android.app.TimePickerDialog; import android.app.TimePickerDialog;
import android.content.Context; import android.content.Context;
import android.graphics.Typeface;
import android.text.InputType;
import android.text.method.PasswordTransformationMethod;
import android.view.LayoutInflater; import android.view.LayoutInflater;
import android.view.View; import android.view.View;
import android.widget.Button; import android.widget.Button;
...@@ -203,6 +206,7 @@ public class DialogUtil { ...@@ -203,6 +206,7 @@ public class DialogUtil {
TextView tv_title = (TextView) view.findViewById(R.id.dialog_title); TextView tv_title = (TextView) view.findViewById(R.id.dialog_title);
ImageView iv = (ImageView) view.findViewById(R.id.dialog_iv); ImageView iv = (ImageView) view.findViewById(R.id.dialog_iv);
ImageView iv_cancel = (ImageView) view.findViewById(R.id.iv_cancel); ImageView iv_cancel = (ImageView) view.findViewById(R.id.iv_cancel);
tv_msg.setTransformationMethod(PasswordTransformationMethod.getInstance());
if (msg != null) { if (msg != null) {
tv_msg.setHint(msg); tv_msg.setHint(msg);
tv_msg.setVisibility(View.VISIBLE); tv_msg.setVisibility(View.VISIBLE);
...@@ -236,11 +240,17 @@ public class DialogUtil { ...@@ -236,11 +240,17 @@ public class DialogUtil {
btn_ok.setOnClickListener(new View.OnClickListener() { btn_ok.setOnClickListener(new View.OnClickListener() {
@Override @Override
public void onClick(View v) { public void onClick(View v) {
if ("".equals(tv_msg.getText().toString().trim())) { String pwd = tv_msg.getText().toString().trim();
if ("".equals(pwd)) {
AppContext.showToast("请输入" + msg); AppContext.showToast("请输入" + msg);
return; return;
} }
okListener.onClick(tv_msg); if (MD5Util.MD5(pwd).equals(SPUtil.getInstance().readString("pwd"))) {
dialog.dismiss();
okListener.onClick(tv_msg);
} else {
AppContext.showToast("管理员密码不正确");
}
} }
}); });
} else { } else {
......
package com.ifavine.pay.utils;
import java.security.MessageDigest;
/**
* Created by Administrator on 2018/10/24.
*/
public class MD5Util {
public final static String MD5(String s) {
char hexDigits[] = {'0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
'a', 'b', 'c', 'd', 'e', 'f'};
try {
byte[] btInput = s.getBytes();
// 获得MD5摘要算法的 MessageDigest 对象
MessageDigest mdInst = MessageDigest.getInstance("MD5");
// 使用指定的字节更新摘要
mdInst.update(btInput);
// 获得密文
byte[] md = mdInst.digest();
// 把密文转换成十六进制的字符串形式
int j = md.length;
char str[] = new char[j * 2];
int k = 0;
for (int i = 0; i < j; i++) {
byte byte0 = md[i];
str[k++] = hexDigits[byte0 >>> 4 & 0xf];
str[k++] = hexDigits[byte0 & 0xf];
}
return new String(str);
} catch (Exception e) {
return null;
}
}
}
package com.ifavine.pay.utils;
/**
* Created by Administrator on 2018/10/25.
*/
import java.util.List;
import android.content.Context;
import android.net.wifi.ScanResult;
import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.net.wifi.WifiManager.WifiLock;
public class WifiAdmin {
// 定义WifiManager对象
private WifiManager mWifiManager;
// 定义WifiInfo对象
private WifiInfo mWifiInfo;
// 扫描出的网络连接列表
private List<ScanResult> mWifiList;
// 网络连接列表
private List<WifiConfiguration> mWifiConfiguration;
// 定义一个WifiLock
WifiLock mWifiLock;
// 构造器
public WifiAdmin(Context context) {
// 取得WifiManager对象
mWifiManager = (WifiManager) context
.getSystemService(Context.WIFI_SERVICE);
// 取得WifiInfo对象
mWifiInfo = mWifiManager.getConnectionInfo();
}
// 得到WifiManager对象
public WifiManager GetWifiManager() {
return mWifiManager;
}
// 打开WIFI
public void OpenWifi() {
if (!mWifiManager.isWifiEnabled()) {
mWifiManager.setWifiEnabled(true);
}
}
// 关闭WIFI
public void CloseWifi() {
if (!mWifiManager.isWifiEnabled()) {
mWifiManager.setWifiEnabled(false);
}
}
// 锁定WifiLock
public void AcquireWifiLock() {
mWifiLock.acquire();
}
// 解锁WifiLock
public void ReleaseWifiLock() {
// 判断时候锁定
if (mWifiLock.isHeld()) {
mWifiLock.acquire();
}
}
// 创建一个WifiLock
public void CreatWifiLock() {
mWifiLock = mWifiManager.createWifiLock("Test");
}
// 得到配置好的网络
public List<WifiConfiguration> GetConfiguration() {
return mWifiConfiguration;
}
// 指定配置好的网络进行连接
public void ConnectConfiguration(int index) {
// 索引大于配置好的网络索引返回
if (index > mWifiConfiguration.size()) {
return;
}
// 连接配置好的指定ID的网络
mWifiManager.enableNetwork(mWifiConfiguration.get(index).networkId,
true);
}
public void StartScan() {
mWifiManager.startScan();
// 得到扫描结果
mWifiList = mWifiManager.getScanResults();
// 得到配置好的网络连接
mWifiConfiguration = mWifiManager.getConfiguredNetworks();
}
// 得到网络列表
public List<ScanResult> GetWifiList() {
return mWifiList;
}
// 查看扫描结果
public StringBuilder LookUpScan() {
StringBuilder stringBuilder = new StringBuilder();
for (int i = 0; i < mWifiList.size(); i++) {
stringBuilder
.append("Index_" + new Integer(i + 1).toString() + ":");
// 将ScanResult信息转换成一个字符串包
// 其中把包括:BSSID、SSID、capabilities、frequency、level
stringBuilder.append((mWifiList.get(i)).toString());
stringBuilder.append("\n");
}
return stringBuilder;
}
// 得到MAC地址
public String GetMacAddress() {
return (mWifiInfo == null) ? "NULL" : mWifiInfo.getMacAddress();
}
// 得到接入点的BSSID
public String GetBSSID() {
return (mWifiInfo == null) ? "NULL" : mWifiInfo.getBSSID();
}
// 得到IP地址
public int GetIPAddress() {
return (mWifiInfo == null) ? 0 : mWifiInfo.getIpAddress();
}
// 得到连接的ID
public int GetNetworkId() {
return (mWifiInfo == null) ? 0 : mWifiInfo.getNetworkId();
}
// 得到WifiInfo的所有信息包
public String GetWifiInfo() {
return (mWifiInfo == null) ? "NULL" : mWifiInfo.toString();
}
// 添加一个网络并连接
public void AddNetwork(WifiConfiguration wcg) {
int wcgID = mWifiManager.addNetwork(wcg);
mWifiManager.enableNetwork(wcgID, true);
}
// 断开指定ID的网络
public void DisconnectWifi(int netId) {
mWifiManager.disableNetwork(netId);
mWifiManager.disconnect();
}
}
\ No newline at end of file
package com.ifavine.pay.vo;
import java.io.Serializable;
import java.util.List;
/**
* Created by Administrator on 2018/10/25.
*/
public class CanteenWindow extends Entity {
public String CanteenCode;
public String CanteenName;
public int Selected;
public List<Window> Windows;
public class Window implements Serializable {
public String WindowName;
public int Selected;
}
}
...@@ -5,12 +5,15 @@ import java.util.List; ...@@ -5,12 +5,15 @@ import java.util.List;
/** /**
* Created by tree on 7/18/2016. * Created by tree on 7/18/2016.
*/ */
public class CommonListResponse<T> extends Entity{ public class CommonListResponse<T> extends Entity {
public Data<T> result; public Data<T> result;
public List<T> data; public List<T> data;
public int status; public int status;
public String statusCode; public String statusCode;
public String msg; public String msg;
public List<T> ModelJson;
public int Status;
public String Message;
public class Data<T> { public class Data<T> {
public List<T> list; public List<T> list;
......
...@@ -9,8 +9,11 @@ public class CommonResponse<T> extends Entity { ...@@ -9,8 +9,11 @@ public class CommonResponse<T> extends Entity {
public String statusCode; public String statusCode;
public String msg; public String msg;
public String url; public String url;
public T ModelJson;
public int Status;
public String Message;
public boolean isSuccess() { public boolean isSuccess() {
return (this.status == 200) || (this.status == 201); return (this.Status == 200) || (this.Status == 201);
} }
} }
package com.ifavine.pay.vo;
/**
* Created by Administrator on 2018/10/25.
*/
public class LocalRecordReport {
}
package com.ifavine.pay.vo;
/**
* Created by Administrator on 2018/10/25.
*/
public class MonthRecordReport {
/**
* CanteenName 食堂
* WindowName 窗口
* DinnerAmount 消费金额
* AllowanceAmount 公司补助
* asConsumption
*/
public String CanteenName;
public String WindowName;
public String DinnerAmount;
public String AllowanceAmount;
public String asConsumption;
}
package com.ifavine.pay.vo;
/**
* Created by Administrator on 2017/5/11.
*/
public class PayResult extends Entity {
/**
* EmpNo:用户工号
* EmpName:用户姓名
* EmpDept:部门
* EmpDuty:职位
* Cost:用餐费用
* SubCost:优惠费用
* Consumption:实际支付费用
* IsConsumed:是否二次消费
* TradeNo:支付单号(仅支付成功时有值)
*/
public String EmpNo;
public String EmpName;
public String EmpDept;
public String EmpDuty;
public String Cost;
public String SubCost;
public String Consumption;
public boolean IsConsumed;
public String TradeNo;
}
...@@ -137,12 +137,11 @@ ...@@ -137,12 +137,11 @@
android:textSize="28dp" /> android:textSize="28dp" />
<TextView <TextView
android:id="@+id/tv_rst_name" android:id="@+id/tv_CanteenName"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="fill_parent" android:layout_height="fill_parent"
android:layout_marginLeft="20dp" android:layout_marginLeft="20dp"
android:gravity="center" android:gravity="center"
android:text="食堂名称"
android:textColor="@color/black" android:textColor="@color/black"
android:textSize="28dp" /> android:textSize="28dp" />
</LinearLayout> </LinearLayout>
...@@ -163,12 +162,11 @@ ...@@ -163,12 +162,11 @@
android:textSize="28dp" /> android:textSize="28dp" />
<TextView <TextView
android:id="@+id/tv_rst_num" android:id="@+id/tv_WindowName"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="fill_parent" android:layout_height="fill_parent"
android:layout_marginLeft="20dp" android:layout_marginLeft="20dp"
android:gravity="center" android:gravity="center"
android:text="1号"
android:textColor="@color/black" android:textColor="@color/black"
android:textSize="28dp" /> android:textSize="28dp" />
</LinearLayout> </LinearLayout>
...@@ -322,6 +320,7 @@ ...@@ -322,6 +320,7 @@
android:paddingTop="5dp"> android:paddingTop="5dp">
<EditText <EditText
android:id="@+id/et_payCode"
android:layout_width="50dp" android:layout_width="50dp"
android:layout_height="fill_parent" android:layout_height="fill_parent"
android:layout_marginLeft="20dp" android:layout_marginLeft="20dp"
...@@ -387,12 +386,11 @@ ...@@ -387,12 +386,11 @@
android:textSize="28dp" /> android:textSize="28dp" />
<TextView <TextView
android:id="@+id/tv_user_num" android:id="@+id/tv_EmpNo"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="fill_parent" android:layout_height="fill_parent"
android:layout_marginLeft="20dp" android:layout_marginLeft="20dp"
android:gravity="center" android:gravity="center"
android:text="FF001"
android:textColor="@color/black" android:textColor="@color/black"
android:textSize="28dp" /> android:textSize="28dp" />
</LinearLayout> </LinearLayout>
...@@ -413,12 +411,12 @@ ...@@ -413,12 +411,12 @@
android:textSize="30dp" /> android:textSize="30dp" />
<TextView <TextView
android:id="@+id/tv_user_name" android:id="@+id/tv_EmpName"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="fill_parent" android:layout_height="fill_parent"
android:layout_marginLeft="20dp" android:layout_marginLeft="20dp"
android:gravity="center" android:gravity="center"
android:text="丘永文"
android:textColor="@color/black" android:textColor="@color/black"
android:textSize="30dp" /> android:textSize="30dp" />
</LinearLayout> </LinearLayout>
...@@ -439,12 +437,11 @@ ...@@ -439,12 +437,11 @@
android:textSize="28dp" /> android:textSize="28dp" />
<TextView <TextView
android:id="@+id/tv_user_department" android:id="@+id/tv_EmpDept"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="fill_parent" android:layout_height="fill_parent"
android:layout_marginLeft="20dp" android:layout_marginLeft="20dp"
android:gravity="center" android:gravity="center"
android:text="绯泛科技"
android:textColor="@color/black" android:textColor="@color/black"
android:textSize="28dp" /> android:textSize="28dp" />
</LinearLayout> </LinearLayout>
...@@ -465,12 +462,11 @@ ...@@ -465,12 +462,11 @@
android:textSize="28dp" /> android:textSize="28dp" />
<TextView <TextView
android:id="@+id/tv_user_job" android:id="@+id/tv_EmpDuty"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="fill_parent" android:layout_height="fill_parent"
android:layout_marginLeft="20dp" android:layout_marginLeft="20dp"
android:gravity="center" android:gravity="center"
android:text="安卓开发工程师"
android:textColor="@color/black" android:textColor="@color/black"
android:textSize="28dp" /> android:textSize="28dp" />
</LinearLayout> </LinearLayout>
...@@ -502,12 +498,12 @@ ...@@ -502,12 +498,12 @@
android:textSize="30dp" /> android:textSize="30dp" />
<TextView <TextView
android:id="@+id/tv_user_total" android:id="@+id/tv_Cost"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="fill_parent" android:layout_height="fill_parent"
android:layout_marginLeft="20dp" android:layout_marginLeft="20dp"
android:gravity="center" android:gravity="center"
android:text="10"
android:textColor="@color/black" android:textColor="@color/black"
android:textSize="30dp" /> android:textSize="30dp" />
</LinearLayout> </LinearLayout>
...@@ -528,12 +524,11 @@ ...@@ -528,12 +524,11 @@
android:textSize="30dp" /> android:textSize="30dp" />
<TextView <TextView
android:id="@+id/tv_SubCost"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="fill_parent" android:layout_height="fill_parent"
android:layout_marginLeft="20dp" android:layout_marginLeft="20dp"
android:gravity="center" android:gravity="center"
android:text="6.5"
android:textColor="@color/black" android:textColor="@color/black"
android:textSize="30dp" /> android:textSize="30dp" />
</LinearLayout> </LinearLayout>
...@@ -554,11 +549,11 @@ ...@@ -554,11 +549,11 @@
android:textSize="30dp" /> android:textSize="30dp" />
<TextView <TextView
android:id="@+id/tv_Consumption"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="fill_parent" android:layout_height="fill_parent"
android:layout_marginLeft="20dp" android:layout_marginLeft="20dp"
android:gravity="center" android:gravity="center"
android:text="3.5"
android:textColor="@color/black" android:textColor="@color/black"
android:textSize="30dp" /> android:textSize="30dp" />
</LinearLayout> </LinearLayout>
...@@ -587,6 +582,7 @@ ...@@ -587,6 +582,7 @@
android:orientation="horizontal"> android:orientation="horizontal">
<TextView <TextView
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="fill_parent" android:layout_height="fill_parent"
android:layout_marginLeft="20dp" android:layout_marginLeft="20dp"
...@@ -596,12 +592,11 @@ ...@@ -596,12 +592,11 @@
android:textSize="30dp" /> android:textSize="30dp" />
<TextView <TextView
android:id="@+id/tv_IsConsumed"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="fill_parent" android:layout_height="fill_parent"
android:layout_marginLeft="20dp" android:layout_marginLeft="20dp"
android:gravity="center" android:gravity="center"
android:text="否"
android:textColor="@color/black" android:textColor="@color/black"
android:textSize="30dp" /> android:textSize="30dp" />
</LinearLayout> </LinearLayout>
...@@ -622,12 +617,11 @@ ...@@ -622,12 +617,11 @@
android:textSize="30dp" /> android:textSize="30dp" />
<TextView <TextView
android:id="@+id/tv_TradeNo"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="fill_parent" android:layout_height="fill_parent"
android:layout_marginLeft="20dp" android:layout_marginLeft="20dp"
android:gravity="center" android:gravity="center"
android:text="20181018123456789"
android:textColor="@color/black" android:textColor="@color/black"
android:textSize="30dp" /> android:textSize="30dp" />
</LinearLayout> </LinearLayout>
......
...@@ -15,31 +15,19 @@ ...@@ -15,31 +15,19 @@
android:scaleType="centerCrop" /> android:scaleType="centerCrop" />
<ImageView <ImageView
android:id="@+id/iv2"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="250dp"
android:layout_marginTop="60dp" android:layout_marginTop="80dp"
android:src="@mipmap/welcome_logo" /> android:src="@mipmap/icon" />
<TextView
android:id="@+id/tv"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_below="@+id/iv2"
android:layout_marginTop="20dp"
android:gravity="center"
android:text="welcome_msg1"
android:textColor="@color/white"
android:textSize="25sp" />
<TextView <TextView
android:layout_width="fill_parent" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@+id/tv" android:layout_below="@+id/tv"
android:layout_marginTop="10dp" android:layout_marginTop="400dp"
android:gravity="center" android:gravity="center"
android:text="welcome_msg2" android:text="欢迎使用拓璞支付"
android:textColor="@color/white" android:textColor="@color/white"
android:textSize="25sp" /> android:textSize="50sp" />
</RelativeLayout> </RelativeLayout>
...@@ -43,10 +43,10 @@ ...@@ -43,10 +43,10 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginLeft="10dp" android:layout_marginLeft="10dp"
android:layout_marginRight="10dp" android:layout_marginRight="10dp"
android:layout_marginTop="10dp" android:layout_marginTop="15dp"
android:gravity="center" android:gravity="center"
android:textColor="@color/font_black_32" android:textColor="@color/font_black_32"
android:textSize="16sp" /> android:textSize="28sp" />
</LinearLayout> </LinearLayout>
...@@ -54,17 +54,17 @@ ...@@ -54,17 +54,17 @@
<EditText <EditText
android:id="@+id/dialog_msg" android:id="@+id/dialog_msg"
android:layout_width="fill_parent" android:layout_width="fill_parent"
android:layout_height="wrap_content" android:layout_height="50dp"
android:layout_marginLeft="10dp" android:layout_marginLeft="10dp"
android:layout_marginRight="10dp" android:layout_marginRight="10dp"
android:layout_marginTop="10dp" android:layout_marginTop="15dp"
android:background="@color/main_gray" android:background="@color/main_gray"
android:gravity="center_vertical" android:gravity="center_vertical"
android:hint="原因" android:hint="原因"
android:minHeight="40dp" android:minHeight="40dp"
android:paddingLeft="5dp" android:paddingLeft="5dp"
android:textColor="@color/font_black_32" android:textColor="@color/font_black_32"
android:textSize="16sp" /> android:textSize="28sp" />
<View <View
android:layout_width="fill_parent" android:layout_width="fill_parent"
...@@ -85,7 +85,7 @@ ...@@ -85,7 +85,7 @@
android:background="@null" android:background="@null"
android:text="@string/toolbar_cancel" android:text="@string/toolbar_cancel"
android:textColor="@color/font_blue_16" android:textColor="@color/font_blue_16"
android:textSize="18dp" /> android:textSize="28sp" />
<View <View
android:layout_width="1dp" android:layout_width="1dp"
...@@ -100,7 +100,7 @@ ...@@ -100,7 +100,7 @@
android:background="@null" android:background="@null"
android:text="@string/toolbar_confirm" android:text="@string/toolbar_confirm"
android:textColor="@color/font_blue_16" android:textColor="@color/font_blue_16"
android:textSize="18dp" /> android:textSize="28sp" />
</LinearLayout> </LinearLayout>
</LinearLayout> </LinearLayout>
</RelativeLayout> </RelativeLayout>
\ No newline at end of file
...@@ -124,6 +124,7 @@ ...@@ -124,6 +124,7 @@
android:orientation="horizontal"> android:orientation="horizontal">
<TextView <TextView
android:id="@+id/textView2"
android:layout_width="150dp" android:layout_width="150dp"
android:layout_height="50dp" android:layout_height="50dp"
android:layout_marginLeft="50dp" android:layout_marginLeft="50dp"
...@@ -149,6 +150,15 @@ ...@@ -149,6 +150,15 @@
android:textSize="28dp" /> android:textSize="28dp" />
</LinearLayout> </LinearLayout>
<TextView
android:id="@+id/tips"
android:layout_width="wrap_content"
android:layout_height="40dp"
android:layout_marginLeft="50dp"
android:gravity="center"
android:textColor="@color/red"
android:textSize="28dp" />
<View <View
android:layout_width="fill_parent" android:layout_width="fill_parent"
android:layout_height="1dp" android:layout_height="1dp"
......
...@@ -62,8 +62,8 @@ ...@@ -62,8 +62,8 @@
android:textSize="25dp" /> android:textSize="25dp" />
<LinearLayout <LinearLayout
android:layout_width="wrap_content" android:layout_width="175dp"
android:layout_height="wrap_content" android:layout_height="match_parent"
android:background="@color/main_gray" android:background="@color/main_gray"
android:gravity="center_vertical" android:gravity="center_vertical"
android:orientation="horizontal"> android:orientation="horizontal">
...@@ -130,10 +130,69 @@ ...@@ -130,10 +130,69 @@
android:background="@drawable/bg_white_radius_stroke" android:background="@drawable/bg_white_radius_stroke"
android:orientation="vertical"> android:orientation="vertical">
<ListView <LinearLayout
android:id="@+id/listView" android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="horizontal">
<TextView
android:id="@+id/textView"
android:layout_width="100dp"
android:layout_height="50dp"
android:layout_weight="1"
android:gravity="center"
android:text="食堂"
android:textColor="@color/font_blue_16"
android:textSize="25dp" />
<TextView
android:layout_width="100dp"
android:layout_height="50dp"
android:layout_weight="1"
android:gravity="center"
android:text="窗口"
android:textColor="@color/font_blue_16"
android:textSize="25dp" />
<TextView
android:layout_width="100dp"
android:layout_height="50dp"
android:layout_weight="1"
android:gravity="center"
android:text="消费金额"
android:textColor="@color/font_blue_16"
android:textSize="25dp" />
<TextView
android:layout_width="100dp"
android:layout_height="50dp"
android:layout_weight="1"
android:gravity="center"
android:text="公司补助"
android:textColor="@color/font_blue_16"
android:textSize="25dp" />
<TextView
android:layout_width="100dp"
android:layout_height="50dp"
android:layout_weight="1"
android:gravity="center"
android:text="个人消费"
android:textColor="@color/font_blue_16"
android:textSize="25dp" />
</LinearLayout>
<View
android:layout_width="fill_parent"
android:layout_height="1dp"
android:background="@color/main_gray" />
<com.github.jdsjlzx.recyclerview.LRecyclerView
android:id="@+id/mLRecyclerView"
android:layout_width="fill_parent" android:layout_width="fill_parent"
android:layout_height="match_parent"></ListView> android:layout_height="fill_parent"
android:layout_marginTop="10dp" />
</LinearLayout> </LinearLayout>
......
...@@ -44,7 +44,7 @@ ...@@ -44,7 +44,7 @@
<LinearLayout <LinearLayout
android:layout_width="600dp" android:layout_width="600dp"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:gravity="center" android:gravity="center_vertical"
android:orientation="horizontal"> android:orientation="horizontal">
<TextView <TextView
...@@ -57,17 +57,23 @@ ...@@ -57,17 +57,23 @@
android:textColor="@color/font_black_32" android:textColor="@color/font_black_32"
android:textSize="30dp" /> android:textSize="30dp" />
<Spinner <LinearLayout
android:id="@+id/dialog_sp1" android:layout_width="wrap_content"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:layout_height="50dp" android:background="@color/main_gray"
android:layout_marginLeft="10dp"
android:layout_marginRight="100dp"
android:layout_marginTop="10dp"
android:entries="@array/main_set_options"
android:gravity="center_vertical" android:gravity="center_vertical"
android:textColor="@color/font_black_32" android:orientation="horizontal">
android:textSize="30dp" />
<Spinner
android:id="@+id/dialog_sp1"
android:layout_width="300dp"
android:layout_height="50dp"
android:layout_marginLeft="20dp"
android:entries="@array/main_set_options"
android:gravity="center_vertical"
android:textColor="@color/font_black_32"
android:textSize="30dp" />
</LinearLayout>
</LinearLayout> </LinearLayout>
...@@ -76,7 +82,7 @@ ...@@ -76,7 +82,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginBottom="20dp" android:layout_marginBottom="20dp"
android:layout_marginTop="20dp" android:layout_marginTop="20dp"
android:gravity="center" android:gravity="center_vertical"
android:orientation="horizontal"> android:orientation="horizontal">
<TextView <TextView
...@@ -89,18 +95,24 @@ ...@@ -89,18 +95,24 @@
android:textColor="@color/font_black_32" android:textColor="@color/font_black_32"
android:textSize="30dp" /> android:textSize="30dp" />
<Spinner <LinearLayout
android:id="@+id/dialog_sp2" android:layout_width="wrap_content"
android:layout_width="fill_parent" android:layout_height="wrap_content"
android:layout_height="50dp" android:background="@color/main_gray"
android:layout_marginLeft="10dp"
android:layout_marginRight="100dp"
android:layout_marginTop="10dp"
android:entries="@array/main_set_options"
android:gravity="center_vertical" android:gravity="center_vertical"
android:textColor="@color/font_black_32" android:orientation="horizontal">
android:textSize="30dp" />
<Spinner
android:id="@+id/dialog_sp2"
android:layout_width="300dp"
android:layout_height="50dp"
android:layout_marginLeft="20dp"
android:entries="@array/main_set_options"
android:gravity="center_vertical"
android:textColor="@color/font_black_32"
android:textSize="30dp" />
</LinearLayout>
</LinearLayout> </LinearLayout>
<LinearLayout <LinearLayout
...@@ -125,7 +137,7 @@ ...@@ -125,7 +137,7 @@
<EditText <EditText
android:id="@+id/dialog_msg" android:id="@+id/dialog_msg"
android:layout_width="fill_parent" android:layout_width="320dp"
android:layout_height="50dp" android:layout_height="50dp"
android:layout_marginLeft="10dp" android:layout_marginLeft="10dp"
android:layout_marginRight="100dp" android:layout_marginRight="100dp"
......
<?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="51dp"
android:orientation="vertical">
<LinearLayout
android:layout_width="fill_parent"
android:layout_height="50dp"
android:gravity="center"
android:orientation="horizontal">
<TextView
android:id="@+id/tv_CanteenName"
android:layout_width="100dp"
android:layout_height="50dp"
android:layout_weight="1"
android:gravity="center"
android:text="食堂"
android:textColor="@color/font_black_32"
android:textSize="25dp" />
<TextView
android:id="@+id/tv_WindowName"
android:layout_width="100dp"
android:layout_height="50dp"
android:layout_weight="1"
android:gravity="center"
android:text="窗口"
android:textColor="@color/font_black_32"
android:textSize="25dp" />
<TextView
android:id="@+id/tv_DinnerAmount"
android:layout_width="100dp"
android:layout_height="50dp"
android:layout_weight="1"
android:gravity="center"
android:text="消费金额"
android:textColor="@color/font_black_32"
android:textSize="25dp" />
<TextView
android:id="@+id/tv_AllowanceAmount"
android:layout_width="100dp"
android:layout_height="50dp"
android:layout_weight="1"
android:gravity="center"
android:text="公司补助"
android:textColor="@color/font_black_32"
android:textSize="25dp" />
<TextView
android:id="@+id/tv_asConsumption"
android:layout_width="100dp"
android:layout_height="50dp"
android:layout_weight="1"
android:gravity="center"
android:text="个人消费"
android:textColor="@color/font_black_32"
android:textSize="25dp" />
</LinearLayout>
<View
android:layout_width="fill_parent"
android:layout_height="1dp"
android:background="@color/main_gray" />
</LinearLayout>
\ No newline at end of file
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<android.support.v7.widget.CardView <android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:card_view="http://schemas.android.com/apk/res-auto" xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
card_view:cardCornerRadius="4dp" card_view:cardCornerRadius="4dp"
card_view:cardElevation="4dp" card_view:cardElevation="4dp">
>
<FrameLayout <FrameLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@android:color/background_dark"
>
<RelativeLayout
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:paddingBottom="10dp" android:background="@android:color/background_dark">
android:paddingLeft="10dp"
android:paddingRight="10dp" <RelativeLayout
android:paddingTop="10dp" android:layout_width="wrap_content"
> android:layout_height="wrap_content"
android:paddingBottom="10dp"
<ImageView android:paddingLeft="10dp"
android:id="@+id/icon_iv" android:paddingRight="10dp"
android:layout_width="wrap_content" android:paddingTop="10dp">
android:layout_height="40dp"
android:layout_centerVertical="true" <ImageView
android:layout_marginRight="10dp" android:id="@+id/icon_iv"
android:scaleType="fitCenter" android:layout_width="wrap_content"
android:visibility="gone" android:layout_height="40dp"
/> android:layout_centerVertical="true"
android:layout_marginRight="10dp"
<TextView android:scaleType="fitCenter"
android:id="@+id/title_tv" android:visibility="gone" />
android:layout_width="wrap_content"
android:layout_height="wrap_content" <TextView
android:layout_alignWithParentIfMissing="true" android:id="@+id/title_tv"
android:layout_toRightOf="@id/icon_iv" android:layout_width="wrap_content"
android:gravity="center_vertical" android:layout_height="wrap_content"
android:textColor="@color/white" android:layout_alignWithParentIfMissing="true"
android:textSize="16.0dip" android:layout_toRightOf="@id/icon_iv"
/> android:gravity="center_vertical"
</RelativeLayout> android:textColor="@color/white"
android:textSize="30.0dip" />
</FrameLayout> </RelativeLayout>
</FrameLayout>
</android.support.v7.widget.CardView> </android.support.v7.widget.CardView>
......
...@@ -7,6 +7,6 @@ ...@@ -7,6 +7,6 @@
# Location of the SDK. This is only used by Gradle. # Location of the SDK. This is only used by Gradle.
# For customization when using a Version Control System, please read the # For customization when using a Version Control System, please read the
# header note. # header note.
#Thu Oct 11 09:11:25 CST 2018 #Thu Oct 25 08:45:13 CST 2018
ndk.dir=E\:\\Android_soft_new\\sdk_studio\\android-sdk-windows\\ndk-bundle ndk.dir=E\:\\Android_soft_new\\sdk_studio\\android-sdk-windows\\ndk-bundle
sdk.dir=E\:\\Android_soft_new\\sdk_studio\\android-sdk-windows sdk.dir=E\:\\Android_soft_new\\sdk_studio\\android-sdk-windows
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment