|
|
@@ -4,17 +4,15 @@ import android.content.BroadcastReceiver;
|
|
|
import android.content.Context;
|
|
|
import android.content.Intent;
|
|
|
import android.content.IntentFilter;
|
|
|
-import android.graphics.drawable.BitmapDrawable;
|
|
|
import android.os.Bundle;
|
|
|
import android.support.v7.widget.LinearLayoutManager;
|
|
|
import android.support.v7.widget.RecyclerView;
|
|
|
import android.util.Log;
|
|
|
import android.view.Gravity;
|
|
|
+import android.view.LayoutInflater;
|
|
|
import android.view.Menu;
|
|
|
import android.view.MenuItem;
|
|
|
import android.view.View;
|
|
|
-import android.widget.LinearLayout;
|
|
|
-import android.widget.PopupWindow;
|
|
|
import android.widget.TextView;
|
|
|
|
|
|
import com.afollestad.materialdialogs.MaterialDialog;
|
|
|
@@ -26,15 +24,13 @@ import com.xzjmyk.pm.activity.BdLocationHelper;
|
|
|
import com.xzjmyk.pm.activity.R;
|
|
|
import com.xzjmyk.pm.activity.ui.base.BaseActivity;
|
|
|
import com.xzjmyk.pm.activity.ui.erp.adapter.WorkAdapter;
|
|
|
-import com.xzjmyk.pm.activity.ui.erp.model.WorkModel;
|
|
|
+import com.xzjmyk.pm.activity.ui.erp.model.oa.WorkModel;
|
|
|
import com.xzjmyk.pm.activity.ui.erp.presenter.WorkPresenter;
|
|
|
import com.xzjmyk.pm.activity.ui.erp.presenter.imp.IWorkView;
|
|
|
import com.xzjmyk.pm.activity.ui.erp.util.CommonUtil;
|
|
|
import com.xzjmyk.pm.activity.ui.erp.util.ListUtils;
|
|
|
import com.xzjmyk.pm.activity.ui.erp.util.StringUtils;
|
|
|
import com.xzjmyk.pm.activity.ui.erp.util.WifiReceiverUtil;
|
|
|
-import com.xzjmyk.pm.activity.ui.me.OfficeAddressSettingsActivity;
|
|
|
-import com.xzjmyk.pm.activity.ui.me.SignSeniorSettingActivity;
|
|
|
import com.xzjmyk.pm.activity.util.CalendarUtils;
|
|
|
import com.xzjmyk.pm.activity.util.DisplayUtil;
|
|
|
import com.xzjmyk.pm.activity.util.MacAndIDUtil;
|
|
|
@@ -63,15 +59,16 @@ public class WorkActivity extends BaseActivity implements View.OnClickListener,
|
|
|
private TextView unoffice_mm;//距离
|
|
|
@ViewInject(R.id.date_tv)
|
|
|
private TextView date_tv;//当前日期
|
|
|
- private WorkAdapter adapter;
|
|
|
+ private PopupWindow setWindow = null;//
|
|
|
+
|
|
|
|
|
|
+ private WorkAdapter adapter;
|
|
|
private boolean isToday = true;
|
|
|
private WorkPresenter presenter;
|
|
|
private String macAddress;
|
|
|
private String macError;//变更mac地址
|
|
|
private long selectTime;
|
|
|
- private PopupWindow mMoreWindow; //更多弹出对话框
|
|
|
- private View mMoreMenuView;
|
|
|
+
|
|
|
private BroadcastReceiver receiver = new BroadcastReceiver() {
|
|
|
@Override
|
|
|
public void onReceive(Context context, Intent intent) {
|
|
|
@@ -79,11 +76,6 @@ public class WorkActivity extends BaseActivity implements View.OnClickListener,
|
|
|
if (presenter != null) presenter.upDateLocation();
|
|
|
}
|
|
|
};
|
|
|
- private TextView senior_setting;
|
|
|
- private TextView scheduling_setting;
|
|
|
- private TextView address_setting;
|
|
|
- private TextView sign_rules;
|
|
|
- private TextView pw_cancel;
|
|
|
|
|
|
@Override
|
|
|
public boolean onCreateOptionsMenu(Menu menu) {
|
|
|
@@ -98,9 +90,7 @@ public class WorkActivity extends BaseActivity implements View.OnClickListener,
|
|
|
// Intent intent = new Intent(ct, AlarmaActivity.class);
|
|
|
// intent.putExtra("macAddress", macAddress);
|
|
|
// startActivity(intent);
|
|
|
-
|
|
|
- mMoreWindow.showAtLocation(getWindow().getDecorView(), Gravity.BOTTOM, 0, 0);
|
|
|
- DisplayUtil.backgroundAlpha(ct, 0.5f);
|
|
|
+ showPopupWindow();
|
|
|
break;
|
|
|
}
|
|
|
return super.onOptionsItemSelected(item);
|
|
|
@@ -122,58 +112,8 @@ public class WorkActivity extends BaseActivity implements View.OnClickListener,
|
|
|
ViewUtils.inject(this);
|
|
|
initView();
|
|
|
initLcation();
|
|
|
- initPopupWindow();
|
|
|
}
|
|
|
|
|
|
- private void initPopupWindow() {
|
|
|
- mMoreMenuView = View.inflate(getApplicationContext(), R.layout.sign_ui_more, null);
|
|
|
- senior_setting = (TextView) mMoreMenuView.findViewById(R.id.sign_ui_more_senior_setting); //高级设置
|
|
|
- scheduling_setting = (TextView) mMoreMenuView.findViewById(R.id.sign_ui_more_scheduling_setting); //排班设置
|
|
|
- address_setting = (TextView) mMoreMenuView.findViewById(R.id.sign_ui_more_address_setting); //办公地址设置
|
|
|
- sign_rules = (TextView) mMoreMenuView.findViewById(R.id.sign_ui_more_sign_rules); // 我的考勤规则
|
|
|
- pw_cancel = (TextView) mMoreMenuView.findViewById(R.id.sign_ui_more_pw_cancel); //取消
|
|
|
- mMoreWindow = new PopupWindow(mMoreMenuView, LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.WRAP_CONTENT, true);
|
|
|
- mMoreWindow.setAnimationStyle(R.style.MenuAnimationFade);
|
|
|
- mMoreWindow.setBackgroundDrawable(new BitmapDrawable());
|
|
|
- mMoreWindow.setOnDismissListener(new PopupWindow.OnDismissListener() {
|
|
|
- @Override
|
|
|
- public void onDismiss() {
|
|
|
- closeMorePopupWindow();
|
|
|
- }
|
|
|
- });
|
|
|
-
|
|
|
- senior_setting.setOnClickListener(new View.OnClickListener() {
|
|
|
- @Override
|
|
|
- public void onClick(View v) {
|
|
|
- startActivity(new Intent(ct, SignSeniorSettingActivity.class));
|
|
|
- closeMorePopupWindow();
|
|
|
- }
|
|
|
- });
|
|
|
- address_setting.setOnClickListener(new View.OnClickListener() {
|
|
|
- @Override
|
|
|
- public void onClick(View v) {
|
|
|
- startActivity(new Intent(ct, OfficeAddressSettingsActivity.class));
|
|
|
- closeMorePopupWindow();
|
|
|
- }
|
|
|
- });
|
|
|
- pw_cancel.setOnClickListener(new View.OnClickListener() {
|
|
|
- @Override
|
|
|
- public void onClick(View v) {
|
|
|
- closeMorePopupWindow();
|
|
|
- }
|
|
|
- });
|
|
|
-
|
|
|
-
|
|
|
- }
|
|
|
- private void closeMorePopupWindow() {
|
|
|
- if (mMoreWindow != null) {
|
|
|
- mMoreWindow.dismiss();
|
|
|
-// mMoreWindow = null;
|
|
|
- DisplayUtil.backgroundAlpha(mContext, 1f);
|
|
|
-
|
|
|
- }
|
|
|
-
|
|
|
- }
|
|
|
boolean isRuning = false;
|
|
|
|
|
|
private void initLcation() {
|
|
|
@@ -318,6 +258,7 @@ public class WorkActivity extends BaseActivity implements View.OnClickListener,
|
|
|
|
|
|
@Override
|
|
|
public void onClick(View view) {
|
|
|
+ Intent intent=null;
|
|
|
switch (view.getId()) {
|
|
|
case R.id.signin_btn:
|
|
|
if (isSubmitAble())
|
|
|
@@ -343,10 +284,63 @@ public class WorkActivity extends BaseActivity implements View.OnClickListener,
|
|
|
// startActivityForResult(intent, ADDRESS_CHANGE);
|
|
|
// }
|
|
|
break;
|
|
|
+ case R.id.super_setting_tv:
|
|
|
+ //TODO 高级设置
|
|
|
+ closePopupWindow();
|
|
|
+ break;
|
|
|
+ case R.id.work_setting_tv:
|
|
|
+ //TODO 班次设置
|
|
|
+ intent=new Intent(ct,FlightsActivity.class);
|
|
|
+ startActivity(intent);
|
|
|
+ closePopupWindow();
|
|
|
+ break;
|
|
|
+ case R.id.office_addr_setting_tv:
|
|
|
+ //TODO 考勤地址
|
|
|
+ closePopupWindow();
|
|
|
+ break;
|
|
|
+ case R.id.my_rule_setting_tv:
|
|
|
+ //TODO 我的考勤规则
|
|
|
+ closePopupWindow();
|
|
|
+ break;
|
|
|
+ case R.id.cancel_tv:
|
|
|
+ closePopupWindow();
|
|
|
+ break;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
+ private void initPopupWindow() {
|
|
|
+ View viewContext = LayoutInflater.from(ct).inflate(R.layout.pop_work_activity, null);
|
|
|
+ viewContext.findViewById(R.id.super_setting_tv).setOnClickListener(this);
|
|
|
+ viewContext.findViewById(R.id.work_setting_tv).setOnClickListener(this);
|
|
|
+ viewContext.findViewById(R.id.office_addr_setting_tv).setOnClickListener(this);
|
|
|
+ viewContext.findViewById(R.id.my_rule_setting_tv).setOnClickListener(this);
|
|
|
+ viewContext.findViewById(R.id.cancel_tv).setOnClickListener(this);
|
|
|
+ setWindow = new PopupWindow(viewContext,
|
|
|
+ LinearLayout.LayoutParams.MATCH_PARENT,
|
|
|
+ LinearLayout.LayoutParams.WRAP_CONTENT, true);
|
|
|
+ setWindow.setAnimationStyle(R.style.MenuAnimationFade);
|
|
|
+ setWindow.setOnDismissListener(new PopupWindow.OnDismissListener() {
|
|
|
+ @Override
|
|
|
+ public void onDismiss() {
|
|
|
+ closePopupWindow();
|
|
|
+ }
|
|
|
+ });
|
|
|
+ }
|
|
|
+
|
|
|
+ private void showPopupWindow() {
|
|
|
+ if (setWindow == null) initPopupWindow();
|
|
|
+ setWindow.showAtLocation(getWindow().getDecorView().
|
|
|
+ findViewById(android.R.id.content), Gravity.BOTTOM, 0, 0);
|
|
|
+ DisplayUtil.backgroundAlpha(this, 0.4f);
|
|
|
+ }
|
|
|
+
|
|
|
+ private void closePopupWindow() {
|
|
|
+ if (setWindow != null)
|
|
|
+ setWindow.dismiss();
|
|
|
+ DisplayUtil.backgroundAlpha(this, 1f);
|
|
|
+ }
|
|
|
+
|
|
|
//显示时间选择器
|
|
|
private void showDateDialog() {
|
|
|
OASigninPicker picker = new OASigninPicker(this);
|