| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371 |
- package com.sk.weichat.ui.me;
- import android.app.Activity;
- import android.content.BroadcastReceiver;
- import android.content.Context;
- import android.content.Intent;
- import android.content.IntentFilter;
- import android.os.Bundle;
- import android.os.Handler;
- import android.os.Message;
- import android.support.v4.content.LocalBroadcastManager;
- import android.util.Log;
- import android.view.View;
- import android.widget.ImageView;
- import android.widget.RelativeLayout;
- import android.widget.TextView;
- import com.lidroid.xutils.view.annotation.ViewInject;
- import com.sk.weichat.AppConstant;
- import com.sk.weichat.MyApplication;
- import com.sk.weichat.R;
- import com.sk.weichat.helper.AvatarHelper;
- import com.sk.weichat.ui.base.EasyFragment;
- import com.sk.weichat.ui.cardcast.CardcastActivity;
- import com.sk.weichat.ui.circle.BusinessCircleActivity;
- import com.sk.weichat.ui.erp.model.Master;
- import com.sk.weichat.ui.erp.util.CommonUtil;
- import com.sk.weichat.ui.erp.util.Constants;
- import com.sk.weichat.ui.erp.util.FlexJsonUtil;
- import com.sk.weichat.ui.erp.util.JsonValidator;
- import com.sk.weichat.ui.erp.util.StringUtils;
- import com.sk.weichat.ui.erp.util.ViewUtil;
- import com.sk.weichat.ui.erp.view.MasterDialog;
- import com.sk.weichat.ui.tool.SingleImagePreviewActivity;
- import java.util.HashMap;
- import java.util.LinkedHashMap;
- import java.util.List;
- import java.util.Map;
- public class MeFragment extends EasyFragment implements View.OnClickListener {
- private ImageView mAvatarImg;
- private TextView mNickNameTv;
- private TextView mPhoneNumTv;
- @ViewInject(R.id.company_tv)
- private TextView company_tv;
- @ViewInject(R.id.master_tv)
- private TextView master_tv;
- @ViewInject(R.id.tv_uas_login)
- private TextView tv_uas_login;
- @ViewInject(R.id.tv_b2b_login)
- private TextView tv_b2b_login;
- @ViewInject(R.id.rl_company_change)
- private RelativeLayout rl_company_change;
- @ViewInject(R.id.rl_master_change)
- private RelativeLayout rl_master_change;
- private Context ct;
- public MasterDialog mDialog;
- private Handler mhandler = new Handler() {
- @Override
- public void handleMessage(Message msg) {
- switch (msg.what) {
- case 1://获取中文账套
- String result = msg.getData().getString("result"); //解析账套信息
- boolean isJsonStr = new JsonValidator().validate(result);
- if (isJsonStr) {
- Map<Object, Object> resultsMap = FlexJsonUtil.fromJson(result);
- List<Master> mList = FlexJsonUtil.fromJsonArray(
- FlexJsonUtil.toJson(resultsMap.get("masters")),
- Master.class);
- getChMaster(mList);
- } else {
- ViewUtil.ShowMessageFDialogAutoDismiss(ct, "获取账套信息失败!", 2000);
- }
- break;
- case 2://切换账套
- result = msg.getData().getString("result");
- Map<Object, Object> resultsMap = FlexJsonUtil.fromJson(result);
- List<Master> mList = FlexJsonUtil.fromJsonArray(
- FlexJsonUtil.toJson(resultsMap.get("masters")),
- Master.class);
- Log.i("erp_master", FlexJsonUtil.toJson(resultsMap.get("masters")));
- mDialog = new MasterDialog(ct, "切换账套",
- new MasterDialog.PickDialogListener() {
- @Override
- public void onListItemClick(int position, final Master master) {
- Login(master);
- }
- });
- mDialog.show();
- mDialog.initViewData(mList);
- break;
- case 3://切换账套登录
- Map<String, Object> results = FlexJsonUtil.fromJson(msg
- .getData().getString("result"));
- if ((Boolean) results.get("success")) {
- com.sk.weichat.ui.erp.net.ViewUtil.ToastMessage(ct, "账套切换成功!");
- String sessionId = results.get("sessionId").toString();
- String master = msg.getData().getString("master");
- String master_ch = msg.getData().getString("master_ch");
- CommonUtil.setSharedPreferences(ct, "sessionId", sessionId);
- CommonUtil.setSharedPreferences(ct, "erp_master", master);
- CommonUtil.setSharedPreferences(ct, "Master_ch", master_ch);
- master_tv.setText(master_ch);
- // 发送给主页刷新的广播
- Intent intent = new Intent("com.app.home.update");
- intent.putExtra("falg", "home");
- LocalBroadcastManager.getInstance(ct).sendBroadcast(intent);
- } else {
- com.sk.weichat.ui.erp.net.ViewUtil.ToastMessage(ct, "账套切换失败!");
- }
- break;
- }
- }
- };
- public MeFragment() {
- }
- @Override
- public void onResume() {
- super.onResume();
- if (mNickNameTv != null) {
- mNickNameTv.setText(MyApplication.getInstance().mLoginUser.getNickName());
- }
- }
- @Override
- protected int inflateLayoutId() {
- return R.layout.fragment_me;
- }
- @Override
- protected void onCreateView(Bundle savedInstanceState, boolean createView) {
- if (createView) {
- initView();
- }
- }
- private void initView() {
- ct = getActivity();
- findViewById(R.id.my_data_rl).setOnClickListener(this);
- findViewById(R.id.my_friend_rl).setOnClickListener(this);
- findViewById(R.id.my_space_rl).setOnClickListener(this);
- findViewById(R.id.local_video_rl).setOnClickListener(this);
- findViewById(R.id.setting_rl).setOnClickListener(this);
- rl_company_change.setOnClickListener(this);
- rl_master_change.setOnClickListener(this);
- mAvatarImg = (ImageView) findViewById(R.id.avatar_img);
- mNickNameTv = (TextView) findViewById(R.id.nick_name_tv);
- mPhoneNumTv = (TextView) findViewById(R.id.phone_number_tv);
- //init data
- company_tv.setText(CommonUtil.getSharedPreferences(ct, "erp_commpany"));
- master_tv.setText(CommonUtil.getSharedPreferences(ct, "erp_master"));
- IntentFilter loginFilter = new IntentFilter();
- loginFilter.addAction("com.app.home.update");
- LocalBroadcastManager.getInstance(ct).registerReceiver(updateLoginState, loginFilter);
- String loginUserId = MyApplication.getInstance().mLoginUser.getUserId();
- AvatarHelper.getInstance().displayAvatar(loginUserId, mAvatarImg, true);
- mNickNameTv.setText(MyApplication.getInstance().mLoginUser.getNickName());
- mPhoneNumTv.setText(MyApplication.getInstance().mLoginUser.getTelephone());
- mAvatarImg.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View v) {
- String loginUserId = MyApplication.getInstance().mLoginUser.getUserId();
- Intent intent = new Intent(getActivity(), SingleImagePreviewActivity.class);
- intent.putExtra(AppConstant.EXTRA_IMAGE_URI, AvatarHelper.getAvatarUrl(loginUserId, false));
- startActivity(intent);
- getActivity().overridePendingTransition(0, 0);
- }
- });
- // 这样写的目的,是为了初始化本页面的时候,时时根据英文名字来查询当前的中文账套
- if (!StringUtils.isEmpty(CommonUtil.getSharedPreferences(ct,
- "Master_ch"))) {
- master_tv.setText(CommonUtil.getSharedPreferences(ct, "Master_ch"));
- }
- getChinaMaster();
- updateStatus();
- }
- // private void setApl() {
- //
- // View view1=findViewById(R.id.info_rl);
- // View view2=findViewById(R.id.my_data_rl);
- // View view3=findViewById(R.id.my_friend_rl);
- // View view4=findViewById(R.id.my_space_rl);
- // View view5=findViewById(R.id.local_video_rl);
- // View view6=findViewById(R.id.rl_company_change);
- // View view7=findViewById(R.id.rl_master_change);
- //
- // ViewAlphaUtil.setViewAlpha(view1);
- // ViewAlphaUtil.setViewAlpha(view2);
- // ViewAlphaUtil.setViewAlpha(view3);
- // ViewAlphaUtil.setViewAlpha(view4);
- // ViewAlphaUtil.setViewAlpha(view5);
- // ViewAlphaUtil.setViewAlpha(view6);
- // ViewAlphaUtil.setViewAlpha(view7);
- // ViewAlphaUtil.setViewAlpha(findViewById(R.id.my_erp_rl));
- // ViewAlphaUtil.setViewAlpha(findViewById(R.id.my_b2b_rl));
- // ViewAlphaUtil.setViewAlpha(findViewById(R.id.setting_rl));
- //
- //
- // }
- /**
- * @desc:账户设置菜单界面
- * @author:Administrator on 2016/1/27 16:05
- */
- @Override
- public void onClick(View v) {
- int id = v.getId();
- switch (id) {
- case R.id.rl_company_change:
- // Log.i("LoginApp","手机号:"+MyApplication.getInstance().mLoginUser.getTelephone() );
- // Log.i("LoginApp","密码:"+ CommonUtil.getSharedPreferences(ct,"user_password"));
- String commpany = CommonUtil.getSharedPreferences(ct, "erp_commpany");
- com.sk.weichat.ui.erp.net.ViewUtil.LoginTask(MyApplication.getInstance().mLoginUser.getTelephone()
- , CommonUtil.getSharedPreferences(ct, "user_password"), ct);
- break;
- case R.id.rl_master_change:
- changeMaster();
- break;
- case R.id.my_data_rl:// 我的资料
- startActivityForResult(new Intent(getActivity(), BasicInfoEditActivity.class), 1);
- break;
- case R.id.my_friend_rl:// 我的朋友
- startActivity(new Intent(getActivity(), CardcastActivity.class));
- break;
- case R.id.my_space_rl:// 我的空间
- {
- Intent intent = new Intent(getActivity(), BusinessCircleActivity.class);
- intent.putExtra(AppConstant.EXTRA_CIRCLE_TYPE, AppConstant.CIRCLE_TYPE_PERSONAL_SPACE);
- startActivity(intent);
- }
- break;
- case R.id.local_video_rl:// 本地视频
- startActivity(new Intent(getActivity(), LocalVideoActivity.class));
- break;
- case R.id.setting_rl:// 设置
- startActivity(new Intent(getActivity(), SettingActivity.class));
- break;
- }
- }
- @Override
- public void onActivityResult(int requestCode, int resultCode, Intent data) {
- super.onActivityResult(requestCode, resultCode, data);
- if (requestCode == 1 || resultCode == Activity.RESULT_OK) {// 个人资料更新了
- AvatarHelper.getInstance().displayAvatar(MyApplication.getInstance().mLoginUser.getUserId(), mAvatarImg, true);
- mNickNameTv.setText(MyApplication.getInstance().mLoginUser.getNickName());
- }
- }
- //获取中文账套
- public void getChinaMaster() {
- String url = Constants.getAppBaseUrl(ct) + "mobile/getAllMasters.action";
- Map<String, Object> params = new HashMap<>();
- params.put("sessionId", CommonUtil.getSharedPreferences(ct, "sessionId"));
- LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
- headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(ct, "sessionId"));
- ViewUtil.httpSendRequest(ct, url, params, mhandler, headers, 1, null, null, "get");
- }
- private void getChMaster(List<Master> mList) {
- if (!mList.isEmpty()) {
- String en_master = CommonUtil.getSharedPreferences(ct, "erp_master");
- for (int i = 0; i < mList.size(); i++) {
- Master master = mList.get(i);
- if (master.getMa_user().equals(en_master)) {
- master_tv.setText(master.getMa_function());
- CommonUtil.setSharedPreferences(ct, "Master_ch", master.getMa_function());
- }
- }
- } else {
- master_tv.setText(CommonUtil.getSharedPreferences(ct, "erp_master"));
- }
- }
- //切换账套
- public void changeMaster() {
- String url = Constants.getAppBaseUrl(ct) + "mobile/getAllMasters.action";
- Map<String, Object> params = new HashMap<>();
- params.put("sessionId", CommonUtil.getSharedPreferences(ct, "sessionId"));
- LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
- headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(ct, "sessionId"));
- ViewUtil.httpSendRequest(ct, url, params, mhandler, headers, 2, null, null, "get");
- }
- //切换登录
- public void Login(Master master) {
- String url = Constants.getAppBaseUrl(ct) + "mobile/login.action";
- Map<String, Object> params = new HashMap<String, Object>();
- String username = CommonUtil.getSharedPreferences(ct, "erp_username");
- String password = CommonUtil.getSharedPreferences(ct, "user_password");
- params.put("username", username);
- params.put("password", password);
- params.put("master", master.getMa_user());
- Message message = new Message();
- Bundle bundle = new Bundle();
- bundle.putString("master", master.getMa_user());
- bundle.putString("master_ch", master.getMa_function());
- message.setData(bundle);
- LinkedHashMap<String, Object> headers = new LinkedHashMap<>();
- headers.put("Cookie", "JSESSIONID=" + CommonUtil.getSharedPreferences(ct, "sessionId"));
- ViewUtil.httpSendRequest(ct, url, params, mhandler, headers, 3, message, bundle, "get");
- }
- public void updateStatus() {
- if (!StringUtils.isEmpty(CommonUtil.getSharedPreferences(ct,
- "user_phone"))) {
- if (CommonUtil.getSharedPreferencesBoolean(ct, "erp_login")) {
- company_tv.setText(CommonUtil.getSharedPreferences(ct, "erp_commpany"));
- // master_tv.setText(CommonUtil.getSharedPreferences(ct,"master"));
- tv_uas_login.setText("已登录");
- } else {
- tv_uas_login.setText("未登录");
- }
- if (CommonUtil.getSharedPreferencesBoolean(ct, "b2b_login")) {
- tv_b2b_login.setText("已登录");// 已登录
- } else {
- tv_b2b_login.setText("未登录");
- }
- } else {
- company_tv.setText("");
- master_tv.setText("");
- tv_b2b_login.setText("未登录");
- tv_uas_login.setText("未登录");
- }
- }
- /**
- * @desc:广播
- * @author:Administrator on 2016/3/31 10:35
- */
- private BroadcastReceiver updateLoginState = new BroadcastReceiver() {
- public void onReceive(Context context, Intent intent) {
- if (intent.getAction().equals("com.app.home.update")) {
- String falg = intent.getStringExtra("falg"); // 过滤ERP登录成功//过滤falg
- if (!"home".equals(falg)) {
- updateStatus();
- }
- if ("ERP".equals(falg)) {
- getChinaMaster();
- }
- }
- }
- ;
- };
- }
|