package com.bigdo.app; import org.json.JSONException; import org.json.JSONObject; import com.bigdo.common.Login; import com.bigdo.common.RConfig; import com.bigdo.common.RState; import com.bigdo.common.User; import com.bigdo.controls.DateSelectByYYYYMMDDActivity; import com.bigdo.util.Pub; import com.bigdo.util.WSCheck; import com.bigdo.util.WSHelper; import android.annotation.SuppressLint; import android.content.DialogInterface; import android.content.DialogInterface.OnDismissListener; import android.content.Intent; import android.os.Bundle; import android.os.Handler; import android.os.Message; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.EditText; import android.widget.ImageButton; import android.widget.RadioButton; import android.widget.TextView; public class Me_Edit_PersonalInfor_Activity extends BaseActivity { TextView bd_birth, bd_tel; EditText bd_name, bd_email, bd_company, bd_team; RadioButton bd_male, bd_female; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.me_edit_personalinfor_activity); View activityTitle = (View) this.findViewById(R.id.bd_title_host); TextView bd_title_name = (TextView) activityTitle .findViewById(R.id.bd_title_name); bd_title_name.setText("编辑个人资料"); TextView bd_title_operate = (TextView) activityTitle .findViewById(R.id.bd_title_operate); bd_title_operate.setVisibility(View.VISIBLE); bd_title_operate.setText("保 存"); ImageButton bd_title_back = (ImageButton) activityTitle .findViewById(R.id.bd_title_back); bd_title_back.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { finish(); } }); bd_birth = (TextView) this.findViewById(R.id.bd_birth); bd_birth.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { goDateSelectActivity(); } }); OnClickListener cl = new OnClickListener() { @Override public void onClick(View v) { updateUserInfor(); } }; bd_title_operate.setOnClickListener(cl); setUserInfor(); } /** * 设置用户信息 */ public void setUserInfor() { bd_name = (EditText) this.findViewById(R.id.bd_name); bd_male = (RadioButton) this.findViewById(R.id.bd_male); bd_female = (RadioButton) this.findViewById(R.id.bd_female); bd_birth = (TextView) this.findViewById(R.id.bd_birth); bd_tel = (TextView) this.findViewById(R.id.bd_tel); bd_email = (EditText) this.findViewById(R.id.bd_email); bd_company = (EditText) this.findViewById(R.id.bd_company); bd_team = (EditText) this.findViewById(R.id.bd_team); if (Login.isLogin(this)) { User _user = Login.get(this); if (_user != null) { bd_name.setText(_user.alias); if (_user.sex == 1) { bd_male.setChecked(true); bd_female.setChecked(false); } else { bd_male.setChecked(false); bd_female.setChecked(true); } bd_birth.setText(_user.birthday); bd_tel.setText(_user.user); bd_email.setText(_user.email); bd_company.setText(_user.company); bd_team.setText(_user.teamcount); return; } } bd_name.setText(""); bd_male.setChecked(true); bd_female.setChecked(false); bd_birth.setText(""); bd_tel.setText(""); bd_email.setText(""); bd_company.setText(""); bd_team.setText(""); } private void goDateSelectActivity() { String date = bd_birth.getText().toString(); Intent i = new Intent(Intent.ACTION_VIEW); i.putExtra("date", date); i.setClass(this, DateSelectByYYYYMMDDActivity.class); i.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP); startActivityForResult(i, 1000); } /** * 更新个人信息 */ public void updateUserInfor() { String user, alias, birthday, email, company, teamcount; int iduser, sex; if (Login.isLogin(this)) { User _user = Login.get(this); user = _user.user; iduser = _user.iduser; alias = bd_name.getText().toString(); if (alias == null || alias.equals("")) { bd_name.setError("姓名不能为空"); return; } birthday = bd_birth.getText().toString(); email = bd_email.getText().toString(); if (email != null && !email.equals("")) { if (!Pub.isEmail(email)) { bd_email.setError("邮件格式不正确"); return; } } company = bd_company.getText().toString(); teamcount = bd_team.getText().toString(); if (bd_male.isChecked()) { sex = 1; } else { sex = 0; } JSONObject jparams = new JSONObject(); try { jparams.put("alias", alias); jparams.put("birthday", birthday); jparams.put("email", email); jparams.put("company", company); jparams.put("teamcount", teamcount); jparams.put("sex", sex); jparams.put("user", user); jparams.put("iduser", iduser); } catch (JSONException e) { messageBox("准备保存数据出错"); return; } String data = jparams.toString(); String url = RConfig.user_update_info(this); showProgress("更新用户信息.."); WSHelper ws = new WSHelper(this, "", false, WsHandler, url, "", WSHelper.getStringEntity(data), 0, 0, 0, 0, WSHelper.POST); ws.start(); Log.e("updateUserInfor", url); Log.e("updateUserInfor-data", data); } } @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == 1000) { if (resultCode == 1 && data != null) { int y = data.getIntExtra("year", 1900); int m = data.getIntExtra("month", 1); int d = data.getIntExtra("day", 1); String datetime = y + "-" + ((m <= 9) ? ("0" + m) : m) + "-" + ((d <= 9) ? ("0" + d) : d); bd_birth.setText(datetime); } } } /** * 事件通知 */ @SuppressLint("HandlerLeak") Handler WsHandler = new Handler() { public void handleMessage(Message msg) { super.handleMessage(msg); if (msg.arg1 == RState.WSCall) { hiddenProgress(); JSONObject jresult = WSCheck.Json( Me_Edit_PersonalInfor_Activity.this, msg); checkUpdate(jresult); } } }; private void checkUpdate(JSONObject result) { if (result != null) { try { JSONObject user = result.getJSONObject("user"); if (user != null) { User ld = new User(); ld.iduser = user.getInt("iduser"); ld.user = user.getString("user"); ld.alias = user.getString("alias"); ld.sex = user.getInt("sex"); ld.birthday = user.getString("birthday"); ld.email = user.getString("email"); ld.company = user.getString("company"); ld.teamcount = user.getString("teamcount"); ld.level = user.getInt("level"); ld.score = user.getInt("score"); ld.score2 = user.getInt("score2"); ld.vip_stime = user.getString("vip_stime"); ld.vip_entime = user.getString("vip_entime"); Login.set(Me_Edit_PersonalInfor_Activity.this, ld); messageBox("保存成功!", new OnDismissListener() { @Override public void onDismiss(DialogInterface arg0) { finish(); } }); } } catch (Exception e) { messageBox("存储用户信息发生错误."); return; } } } @Override public void onClearData() { // TODO Auto-generated method stub } @Override public void onVideoBroadcast(Intent intent) { // TODO Auto-generated method stub } }