/**============================================================ * 版权: 久其软件 版权所有 (c) * 包: com.jiuqi.njt.ui * 修改记录: * 日期 作者 内容 * ============================================================= * 2013-6-28 liyue * ============================================================*/ package com.jiuqi.njt.ui; import android.app.Activity; import android.app.AlertDialog; import android.content.DialogInterface; import android.content.Intent; import android.os.AsyncTask; import android.os.Bundle; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewStub; import android.widget.Button; import android.widget.EditText; import android.widget.TextView; import com.jiuqi.mobile.nigo.comeclose.bean.app.news.NoticeNewsBean; import com.jiuqi.mobile.nigo.comeclose.bean.app.news.SupplyAndDemandTaskNewsBean; import com.jiuqi.mobile.nigo.comeclose.bean.base.UserBean; import com.jiuqi.mobile.nigo.comeclose.exception.NiGoException; import com.jiuqi.mobile.nigo.comeclose.manager.app.INewsManager; import com.jiuqi.mobile.nigo.comeclose.ws.client.ClientContext; import com.jiuqi.njt.R; import com.jiuqi.njt.util.Constants; import com.jiuqi.njt.util.DateUtil; import com.jiuqi.njt.util.ReturnObject; import com.jiuqi.njt.util.TitleBarUtil; import com.jiuqi.njt.util.UIUtil; import com.jiuqi.njt.util.ValidateRule; import com.jiuqi.njt.util.Validator; /** * <p>公告通知发布</p> * * <p>Copyright: 版权所有 (c)<br> * Company: 久其</p> * @author liyue * @version 2013-6-28 */ /// 注: 废弃 malingya 2013/10/16 public class PostInfoNoticeActivity extends AbstractNjtActivity01 implements OnClickListener{ //mark值见 com.jiuqi.mobile.nigo.comeclose.bean.app.news.SupplyAndDemandTaskNewsBean private EditText etCont; private EditText etTitle; private Button btnSubmit; @Override protected void onCreate(Bundle savedInstanceState){ isPostinfo = true; super.onCreate(savedInstanceState); } protected void doinit(){ initParam(); initWidgets(); initListeners(); initUI(); } @Override protected void initParam(){ if(!application.getIsLogin()){ UIUtil.alert(PostInfoNoticeActivity.this, "要使用该功能,请您先登录", new DialogInterface.OnClickListener(){ @Override public void onClick(DialogInterface dialog, int which){ Intent intent = new Intent(PostInfoNoticeActivity.this, LoginActivityNew.class); intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); startActivity(intent); PostInfoNoticeActivity.this.finish(); } }); } } protected void initWidgets(){ setContentView(R.layout.post_info_notice_activity); ViewStub rlTitleBar = (ViewStub)findViewById(R.id.titleBarStub); TitleBarUtil.createTitleBar(this, rlTitleBar, "公告通知发布", new OnClickListener(){ @Override public void onClick(View v){ PostInfoNoticeActivity.this.finish(); } }); etTitle = (EditText)findViewById(R.id.etTitle); etCont = (EditText)findViewById(R.id.etCont); btnSubmit = (Button)findViewById(R.id.btnSubmit); } protected void initListeners(){ btnSubmit.setOnClickListener(this); } @Override public void onClick(View v){ switch(v.getId()){ case R.id.btnSubmit: if(doValidate()){ new SubmitInfoAsyncTask().execute(); } break; default: break; } } /** * 验证界面上的录入项 * @return boolean */ private boolean doValidate(){ Validator validator = null; ReturnObject ro = null; //验证这些控件是不是都有内容了 TextView[] widgets = new TextView[] {etTitle, etCont,}; validator = new Validator(); validator.addRules(ValidateRule.IS_NOT_EMPTY, ValidateRule.IS_REACH_MAX_LENGTH); for(TextView w : widgets){ ro = validator.val(w.getText()); if(!ro.isSuccess){ UIUtil.showMsg(this, ro.getErrorMessage()); w.requestFocus(); return false; } } return true; } /** * 提交信息,访问网络时必须变成异步任务才可以提交,2.3规则。 */ private class SubmitInfoAsyncTask extends AsyncTask<Void, Void, Void>{ @Override protected Void doInBackground(Void... params){ try{ ClientContext context = application.getClientContext(); UserBean user = context.getUser(); INewsManager inewsmanager = context.getManager(INewsManager.class); CharSequence etTitleText = etTitle.getText(); CharSequence etContText = etCont.getText(); NoticeNewsBean job = new NoticeNewsBean(); job.setAddPersonGuid(user.getGuid()); job.setAddPersonName(user.getUserName()); job.setAddPersonMobileNumber(user.getMobileNumber()); //补充其他的信息 job.setTitle(etTitleText.toString()); job.setContent(etContText.toString()); if(null != inewsmanager){ inewsmanager.publish(job); } } catch(NiGoException e){ e.printStackTrace(); } return null; } @Override protected void onPostExecute(Void result){ UIUtil.showMsg(PostInfoNoticeActivity.this, "信息已发布"); PostInfoNoticeActivity.this.finish(); } } }