package com.jiuqi.njt.ui; import java.lang.reflect.UndeclaredThrowableException; import java.text.SimpleDateFormat; import java.util.Calendar; import android.annotation.SuppressLint; import android.app.Activity; import android.app.DatePickerDialog; import android.app.Dialog; import android.content.DialogInterface; import android.content.Intent; import android.os.AsyncTask; import android.os.Bundle; import android.text.TextUtils; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewStub; import android.view.WindowManager; import android.widget.Button; import android.widget.CheckBox; import android.widget.DatePicker; import android.widget.EditText; import android.widget.TextView; import com.jiuqi.mobile.nigo.comeclose.bean.app.news.WorkTaskNewsBean; import com.jiuqi.mobile.nigo.comeclose.bean.base.AdminAreaBean; import com.jiuqi.mobile.nigo.comeclose.bean.base.DataDictionaryBean; import com.jiuqi.mobile.nigo.comeclose.bean.base.UserBean; import com.jiuqi.mobile.nigo.comeclose.exception.LoginException; 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.data.CheckStateInterface; import com.jiuqi.njt.data.MyApp; import com.jiuqi.njt.data.OptsharepreInterface; import com.jiuqi.njt.data.WorkTaskBeanLocal; import com.jiuqi.njt.db.WorkTaskNewsBeanDBHelper; import com.jiuqi.njt.model.CModuleBean; import com.jiuqi.njt.model.ModuleType; 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; import com.jiuqi.njt.widget.DialogWithList; import com.jiuqi.njt.widget.ProgressDialogStyle; @SuppressLint("NewApi") public class PostInfoJobsActivityNew extends Activity implements OnClickListener { private String tag = this.getClass().getName(); // mark值见 com.jiuqi.mobile.nigo.comeclose.bean.app.news.WorkTaskNewsBean // private Button btnInfoCategory; private Button btnCropCategory; private EditText etScope; private EditText min_etPrice; private Button btnStartDate; private Button btnEndDate; private EditText etContacts; private EditText etPhone; private Button btnProvince; private EditText etXianShi; private EditText etComments; private Button btnMap; private Button btnSubmit; private SubmitInfoAsyncTask submitInfoAsyncTask; private boolean isStartDateValidate, isEndDateValidate; private CheckBox send_job_to_driver; private EditText max_etPrice; private CModuleBean moduleBean; private MyApp application; private DataDictionaryBean[] JOB_INFO_TYPE_DictionaryBeans; private DataDictionaryBean[] CROP_TYPE_dataDictionaryBeans; private Calendar calendar = Calendar.getInstance(); private UserBean user; private AdminAreaBean xzqh; private double longitude = 0; private double latitude = 0; private OptsharepreInterface sharePre; private INewsManager inewsmanager; private String titleStr = ""; private String zwlb = "";// 作物类别 private WorkTaskNewsBeanDBHelper workDbHelper; private WorkTaskBeanLocal Intentlocal; private WorkTaskNewsBean beanNewsBean; private boolean clickBtn = false; private WorkTaskBeanLocal wBeanLo = null; private int stateQB = 0; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); application = (MyApp) getApplication(); sharePre = new OptsharepreInterface(PostInfoJobsActivityNew.this); Intentlocal = (WorkTaskBeanLocal) getIntent().getSerializableExtra( "localbean"); if (null == workDbHelper) { workDbHelper = new WorkTaskNewsBeanDBHelper( PostInfoJobsActivityNew.this); } doinit(); } private void doinit() { initWidgets(); initParam(); initListeners(); if (null == Intentlocal) { initUI(); } } private void initWidgets() { setContentView(R.layout.post_info_jobs_activity); getWindow().setSoftInputMode( WindowManager.LayoutParams.SOFT_INPUT_ADJUST_RESIZE | WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN); ViewStub rlTitleBar = (ViewStub) findViewById(R.id.titleBarStub); String title = ""; moduleBean = (CModuleBean) getIntent().getSerializableExtra( Constants.PARAM_MODULEBEAN); if (null != moduleBean) { title = UIUtil .convertModuleTypeToString(moduleBean.getModuleFlag()); } else { if (null == Intentlocal) { title = "作业面积发布"; } else { //注意 要再加入判断,看看是不是商品信息的发布 title = Intentlocal.getNewsType().getName() + "发布"; Log.wtf("不为空guid", Intentlocal.getGuid()); } } TitleBarUtil.createTitleBar(this, rlTitleBar, title, new OnClickListener() { @Override public void onClick(View v) { // 返回键保存监听 // saveLocalRecord(0); PostInfoJobsActivityNew.this.finish(); } }); // btnInfoCategory = (Button) findViewById(R.id.btnInfoCategory); btnCropCategory = (Button) findViewById(R.id.btnCropCategory); etScope = (EditText) findViewById(R.id.etScope); min_etPrice = (EditText) findViewById(R.id.min_etPrice); max_etPrice = (EditText) findViewById(R.id.max_etPrice); btnStartDate = (Button) findViewById(R.id.btnStartDate); btnEndDate = (Button) findViewById(R.id.btnEndDate); etContacts = (EditText) findViewById(R.id.etContacts); etPhone = (EditText) findViewById(R.id.etPhone); btnProvince = (Button) findViewById(R.id.btnProvince); etXianShi = (EditText) findViewById(R.id.etXianShi); etComments = (EditText) findViewById(R.id.etComments); btnMap = (Button) findViewById(R.id.btnMap); btnSubmit = (Button) findViewById(R.id.btnSubmit); send_job_to_driver = (CheckBox) findViewById(R.id.send_job_to_driver); } void initParam() { // 信息类别 JOB_INFO_TYPE_DictionaryBeans = new DataDictionaryBean[7]; DataDictionaryBean jbxx = new DataDictionaryBean(); jbxx.setCode(1); jbxx.setMark(10401); jbxx.setName("机播信息"); DataDictionaryBean jsxx = new DataDictionaryBean(); jsxx.setCode(2); jsxx.setMark(10401); jsxx.setName("机收信息"); DataDictionaryBean jgxx = new DataDictionaryBean(); jgxx.setCode(3); jgxx.setMark(10401); jgxx.setName("机耕信息"); DataDictionaryBean ssxx = new DataDictionaryBean(); ssxx.setCode(4); ssxx.setMark(10401); ssxx.setName("深松信息"); DataDictionaryBean jghtxx = new DataDictionaryBean(); jghtxx.setCode(5); jghtxx.setMark(10401); jghtxx.setName("秸秆还田"); DataDictionaryBean khxx = new DataDictionaryBean(); khxx.setCode(6); khxx.setMark(10401); khxx.setName("抗旱信息"); DataDictionaryBean zbxx = new DataDictionaryBean(); zbxx.setCode(7); zbxx.setMark(10401); zbxx.setName("植保信息"); JOB_INFO_TYPE_DictionaryBeans[0] = jbxx; JOB_INFO_TYPE_DictionaryBeans[1] = jsxx; JOB_INFO_TYPE_DictionaryBeans[2] = jgxx; JOB_INFO_TYPE_DictionaryBeans[3] = ssxx; JOB_INFO_TYPE_DictionaryBeans[4] = jghtxx; JOB_INFO_TYPE_DictionaryBeans[5] = khxx; JOB_INFO_TYPE_DictionaryBeans[6] = zbxx; // 作物类别 CROP_TYPE_dataDictionaryBeans = new DataDictionaryBean[6]; DataDictionaryBean xm = new DataDictionaryBean(); xm.setCode(1); xm.setMark(10103); xm.setName("小麦"); DataDictionaryBean sd = new DataDictionaryBean(); sd.setCode(2); sd.setMark(10103); sd.setName("水稻"); DataDictionaryBean ym = new DataDictionaryBean(); ym.setCode(3); ym.setMark(10103); ym.setName("玉米"); DataDictionaryBean hs = new DataDictionaryBean(); hs.setCode(4); hs.setMark(10103); hs.setName("花生"); DataDictionaryBean dd = new DataDictionaryBean(); dd.setCode(5); dd.setMark(10103); dd.setName("大豆"); DataDictionaryBean dm = new DataDictionaryBean(); dm.setCode(6); dm.setMark(10103); dm.setName("大麦"); CROP_TYPE_dataDictionaryBeans[0] = xm; CROP_TYPE_dataDictionaryBeans[1] = sd; CROP_TYPE_dataDictionaryBeans[2] = ym; CROP_TYPE_dataDictionaryBeans[3] = hs; CROP_TYPE_dataDictionaryBeans[4] = dd; CROP_TYPE_dataDictionaryBeans[5] = dm; // final String[] strArrayContentA = Constants.getNames(JOB_INFO_TYPE_DictionaryBeans); final String[] strArrayContentB = Constants.getNames(CROP_TYPE_dataDictionaryBeans); if (null != moduleBean && moduleBean.getModuleFlag() != ModuleType.zyfb) { switch (moduleBean.getModuleFlag()) { case jbxxfb: titleStr = "机播信息"; break; case jsxxfb: titleStr = "机收信息"; break; case jgxxfb: titleStr = "机耕信息"; break; case ssfb: titleStr = "深松信息"; break; case jghtxxfb: titleStr = "秸秆还田"; break; case khxxfb: titleStr = "抗旱信息"; break; case zbxxfb: titleStr = "植保信息"; break; default: break; } // btnInfoCategory.setText(titleStr); if (strArrayContentB.length > 0) { zwlb = strArrayContentB[0]; btnCropCategory.setText(strArrayContentB[0]); } try { ClientContext context = application.getClientContext(); user = context.getUser(); if (user != null) { xzqh = user.getAdminArea(); Log.wtf("xzqh", xzqh.getCityName()); } // 登录之后获取 if (null != xzqh) { btnProvince.setText(xzqh.getFullName()); } } catch (Exception e) { e.printStackTrace(); } } else { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");// 小写的mm表示的是分钟 beanNewsBean = workDbHelper.getLocalToBean(Intentlocal); if (Intentlocal.getState() == 1) { clickEnable(false); } if (null != beanNewsBean) { zwlb = beanNewsBean.getWorkType().getName();// 小麦 titleStr = beanNewsBean.getNewsType().getName();// 机收 xzqh = beanNewsBean.getAdminAreaCode();// 地区 btnProvince.setText(beanNewsBean.getAdminAreaCode() .getFullName());// 省市县 btnCropCategory.setText(zwlb); etScope.setText(beanNewsBean.getMus() == 0 ? "" : beanNewsBean .getMus() + ""); min_etPrice.setText(beanNewsBean.getMinPrice() == 0.0 ? "" : beanNewsBean.getMinPrice() + ""); max_etPrice.setText(beanNewsBean.getMaxPrice() == 0.0 ? "" : beanNewsBean.getMaxPrice() + ""); btnStartDate.setText(sdf.format(beanNewsBean.getStartDate())); btnEndDate.setText(sdf.format(beanNewsBean.getEndDate())); etContacts.setText(beanNewsBean.getContactor()); etPhone.setText(beanNewsBean.getContactMobileNumber()); etXianShi.setText(beanNewsBean.getAddress()); if (beanNewsBean.getLatitude() != 0 && beanNewsBean.getLongitude() != 0) { btnMap.setText("已标记"); } etComments.setText(beanNewsBean.getComments() == null ? "" : beanNewsBean.getComments()); } } btnCropCategory.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { DialogWithList.Builder dialog = new DialogWithList.Builder( PostInfoJobsActivityNew.this); dialog.setTitle("作物种类"); dialog.setPositiveButton(Constants.CANCEL_TEXT, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { dialog.dismiss(); } }); dialog.setItems(strArrayContentB, new DialogInterface.OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { btnCropCategory .setText(strArrayContentB[which]); zwlb = strArrayContentB[which]; dialog.dismiss(); } }); dialog.create().show(); } }); } protected void initListeners() { btnSubmit.setOnClickListener(this); btnStartDate.setOnClickListener(this); btnEndDate.setOnClickListener(this); btnMap.setOnClickListener(this); btnProvince.setOnClickListener(this); } protected void initUI() { // btnStartDate.setText(calendar.get(Calendar.YEAR) + "-" // + (calendar.get(Calendar.MONTH) + 1) + "-" // + calendar.get(Calendar.DAY_OF_MONTH)); // // 结束时间默认为开始时间第七天 // btnEndDate // .setText(calendar.get(Calendar.YEAR) // + "-" // + (calendar.get(Calendar.MONTH) + 1) // + "-" // + (calendar.get(Calendar.DAY_OF_MONTH) + Constants.ENDDATE_MORE_THAN_STARTDATE)); // SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); Calendar calendar = Calendar.getInstance(); btnStartDate.setText(format.format(calendar.getTime())); System.out.println("当前时间 : " + format.format(calendar.getTime())); calendar.add(Calendar.DAY_OF_MONTH, 7); System.out.println("7天后时间 : " + format.format(calendar.getTime())); btnEndDate.setText(format.format(calendar.getTime())); etContacts.setText(sharePre.getPres("username")); etPhone.setText(sharePre.getPres("mobileNumber")); } @Override public void onClick(View v) { Dialog dialog = null; switch (v.getId()) { case R.id.btnStartDate: dialog = UIUtil.createDatePickerDialog(this, new DatePickerDialog.OnDateSetListener() { public void onDateSet(DatePicker dp, int year, int month, int dayOfMonth) { isStartDateValidate = DateUtil .compareDateIsLessThanNow(year, month, dayOfMonth); String monthstr = String.valueOf(month + 1); if(monthstr.length()<2){ monthstr = "0"+monthstr; } String dateStr = String.valueOf(dayOfMonth); if(dateStr.length()<2){ dateStr = "0"+dateStr; } btnStartDate.setText(year + "-" + monthstr + "-" + dateStr); } }); dialog.show(); break; case R.id.btnEndDate: dialog = UIUtil.createDatePickerDialog(this, Calendar.MONTH, (Calendar.DAY_OF_MONTH), new DatePickerDialog.OnDateSetListener() { public void onDateSet(DatePicker dp, int year, int month, int dayOfMonth) { isEndDateValidate = DateUtil .compareDateIsLessThanNow(year, month, dayOfMonth); String monthstr = String.valueOf(month + 1); if(monthstr.length()<2){ monthstr = "0"+monthstr; } String dateStr = String.valueOf(dayOfMonth); if(dateStr.length()<2){ dateStr = "0"+dateStr; } btnEndDate.setText(year + "-" + monthstr + "-" + dateStr); } }); dialog.show(); break; // 省市那个对话框还得讨论下,再给出来。 case R.id.btnProvince: clickBtn = true; UIUtil.requestXzqh(this, xzqh); break; case R.id.btnMap: clickBtn = true; Intent intent = new Intent(); intent.setClass(this, PoiLocateActivity.class); startActivityForResult(intent, Constants.REQUEST_MAP_LOCATE_CODE); break; case R.id.btnSubmit: if (UIUtil.isFastDoubleClick()) { return; } if (doValidate()) { if (UIUtil.isCheckPhone(etPhone.getText().toString())) { if (new CheckStateInterface(PostInfoJobsActivityNew.this).checkConnection()) { stateQB = 1; submitInfoAsyncTask = new SubmitInfoAsyncTask(); submitInfoAsyncTask.execute(); } else { saveLocalRecord(1);// 4、离线保存 clearData(); } }else { UIUtil.showMsg(PostInfoJobsActivityNew.this, "请输入正确的联系方式"); } } break; default: break; } } @Override protected void onPause() { super.onPause(); if (!clickBtn) { if (null == Intentlocal) {// 第一次进入发布页面,如果直接保存ok,但如果直接发布的话则还是保存了 if (stateQB == 0) { saveLocalRecord(0); } } else { if (Intentlocal.getState() == 0 && stateQB == 0) {// 第二次进入发布页面 saveLocalRecord(0); } } } } @Override protected void onStop() { super.onStop(); } @Override protected void onDestroy() { super.onDestroy(); } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); clickBtn = false; if (requestCode == Constants.REQUEST_MAP_LOCATE_CODE) { if (resultCode == RESULT_OK) { longitude = data.getDoubleExtra("longitude", 0);// 91、31 latitude = data.getDoubleExtra("latitude", 0); Log.v(Constants.TAG, "longitude: " + longitude + " latitude: " + latitude); btnMap.setText("已标记"); } } else if (requestCode == Constants.REQUEST_XZQH_CODE) { if (resultCode == RESULT_OK) { AdminAreaBean xzqh = (AdminAreaBean) data .getSerializableExtra(Constants.PARAM_XZQH); Log.v(Constants.TAG, xzqh.toString()); this.xzqh = xzqh; btnProvince.setText(xzqh.getFullName()); } } } /** * 验证界面上的录入项 * * @return boolean */ private boolean doValidate() { Validator validator = null; ReturnObject ro = null; // 验证这些控件是不是都有内容了 TextView[] widgets = new TextView[] { btnCropCategory, etScope, min_etPrice, max_etPrice, btnStartDate, btnEndDate, etContacts, etPhone }; // btnProvince 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, w.getHint().toString()); w.requestFocus(); return false; } } // 验证这些控件是不是都是纯数字 validator.clearRules(); validator.addRules(ValidateRule.IS_DIGITS_ONLY); // widgets = new TextView[] { etScope, min_etPrice }; widgets = new TextView[] { etScope }; for (TextView w : widgets) { ro = validator.val(w.getText()); if (!ro.isSuccess) { UIUtil.showMsg(this, ro.getErrorMessage()); w.requestFocus(); return false; } } // widgets = new TextView[] { etScope, max_etPrice }; widgets = new TextView[] { etScope }; for (TextView w : widgets) { ro = validator.val(w.getText()); if (!ro.isSuccess) { UIUtil.showMsg(this, ro.getErrorMessage()); w.requestFocus(); return false; } } // 经纬度不能为空,所在地必须到省市县 // if(latitude==0.0 && longitude==0.0){ // UIUtil.showMsg(this, "请在地图上标记"); // return false; // } int min = 0, max = 0; try { min = Integer.parseInt(min_etPrice.getText().toString()); max = Integer.parseInt(max_etPrice.getText().toString()); } catch (NumberFormatException e) { // TODO Auto-generated catch block e.printStackTrace(); } if (min > max) { UIUtil.showMsg(this, "请确认你的作业价格"); return false; } if (isStartDateValidate) { UIUtil.showMsg(this, "开始日期不能小于当天"); return false; } if (isEndDateValidate) { UIUtil.showMsg(this, "截止日期不能小于当天"); return false; } Log.e("时间参数:", btnStartDate.getText().toString().replace("-", "") + " " + btnEndDate.getText().toString().replace("-", "")); if (DateUtil.isEndDateBeforeStartDate(btnStartDate.getText().toString() .replace("-", ""), btnEndDate.getText().toString().replace("-", ""))) { UIUtil.showMsg(this, "截止日期不能小于开始时间"); return false; } if (null != xzqh) { if (xzqh.getProvinceCode() == 0 || xzqh.getCityCode() == 0 || xzqh.getCountryCode() == 0) { btnProvince.requestFocus(); UIUtil.showMsg(this, "请选择省市县(详细到县级)"); return false; } } return true; } /** * 提交信息,访问网络时必须变成异步任务才可以提交,2.3规则。 */ private class SubmitInfoAsyncTask extends AsyncTask<Void, Void, String> { Dialog pd = null; WorkTaskNewsBean job; protected void onPreExecute() { pd = ProgressDialogStyle.createLoadingDialog( PostInfoJobsActivityNew.this, "发布中,请稍后"); pd.show(); } @SuppressLint("NewApi") @Override protected String doInBackground(Void... params) { String msg = ""; // CharSequence btnInfoCategoryText = btnInfoCategory.getText(); CharSequence btnCropCategoryText = btnCropCategory.getText(); CharSequence etScopeText = etScope.getText(); CharSequence min_etPriceText = min_etPrice.getText(); CharSequence max_etPriceText = max_etPrice.getText(); CharSequence btnStartDateText = btnStartDate.getText(); CharSequence btnEndDateText = btnEndDate.getText(); CharSequence etContactsText = etContacts.getText(); CharSequence etPhoneText = etPhone.getText(); CharSequence btnProvinceText = btnProvince.getText(); CharSequence etXianShiText = etXianShi.getText(); CharSequence etCommentsText = etComments.getText(); job = new WorkTaskNewsBean(); if (null == Intentlocal) { job.setAddPersonGuid(user.getGuid()); job.setAddPersonName(user.getUserName()); job.setAddPersonMobileNumber(user.getMobileNumber()); job.setAdminAreaCode(xzqh); job.setCreateDate(); job.setGuid(); } else { job.setGuid(Intentlocal.getGuid()); job.setAddPersonGuid(Intentlocal.getAddPersonGuid()); job.setAddPersonName(Intentlocal.getAddPersonName()); job.setAddPersonMobileNumber(Intentlocal .getAddPersonMobileNumber()); job.setAdminAreaCode(workDbHelper .getAdminLocalToBean(Intentlocal.getAdminAreaCode())); job.setCreateDate(Intentlocal.getCreateDate()); } for (int j = 0; j < JOB_INFO_TYPE_DictionaryBeans.length; j++) { if (titleStr.equals(JOB_INFO_TYPE_DictionaryBeans[j].getName())) { job.setNewsType(JOB_INFO_TYPE_DictionaryBeans[j]);// 信息类别 } } for (int j = 0; j < CROP_TYPE_dataDictionaryBeans.length; j++) { if (zwlb.endsWith(CROP_TYPE_dataDictionaryBeans[j].getName())) { job.setWorkType(CROP_TYPE_dataDictionaryBeans[j]);// } } job.setMus(UIUtil.tryToInteger(etScopeText.toString())); job.setMinPrice(UIUtil.tryToDouble(min_etPriceText.toString())); job.setMaxPrice(UIUtil.tryToDouble(max_etPriceText.toString())); job.setStartDate(DateUtil.parseDate(btnStartDateText.toString())); job.setEndDate(DateUtil.parseDate(btnEndDateText.toString())); job.setContactor(etContactsText.toString()); job.setContactMobileNumber(etPhoneText.toString()); job.setAddress(etXianShiText.toString()); if (0 == latitude && 0 == longitude) { latitude = application.getLat(); longitude = application.getLon(); } job.setLatitude(latitude);// latitude = biaoji = 31 int temp = 1; if (!send_job_to_driver.isChecked()) { temp = 0; } job.setIsPush(temp); job.setLongitude(longitude);// longitude = biaoji = 31 job.setComments(etCommentsText == null ? "" : etCommentsText .toString()); Log.e(tag, job.toString()); try { ClientContext context = application.getClientContext(); if (null == context) { context = ClientContext.getClientContext( Constants.SERVER_URL, Constants.ANONYMOUS, Constants.ANONYMOUS); application.setClientContext(context); } user = context.getUser(); if (user.getAccount().equals(Constants.ANONYMOUS)) { throw new LoginException("您的登录信息已过期,请重新登录!"); } inewsmanager = context.getManager(INewsManager.class); inewsmanager.publish(job, user); msg = "信息已发布"; } catch (Exception e) { if (e instanceof UndeclaredThrowableException) { msg = e.getMessage(); } else { msg = "信息发布失败"; } e.printStackTrace(); } return msg; } @Override protected void onPostExecute(String result) { pd.dismiss(); if (null == Intentlocal) { } else { workDbHelper.deleteByGuid(Intentlocal.getGuid()); } if (!TextUtils.isEmpty(result.trim())) {// UIUtil.showMsg(PostInfoJobsActivityNew.this, result); if (!result.equals("信息已发布")) { WorkTaskBeanLocal wBeLocal = workDbHelper .getBeanToLocal(job); wBeLocal.setState(1); wBeLocal.setPublishType(1); workDbHelper.create(wBeLocal); } } else { WorkTaskBeanLocal wBeLocal = workDbHelper.getBeanToLocal(job); wBeLocal.setState(1); wBeLocal.setPublishType(1); workDbHelper.create(wBeLocal); } PostInfoJobsActivityNew.this.finish(); } } /** * 根据state状态,先查本地是否有本条数据, * @param showMsg * @param state */ public void saveLocalRecord(int state) {// 保存地图标记均标记 if (!TextUtils.isEmpty(etScope.getText().toString())) { WorkTaskNewsBean job = new WorkTaskNewsBean(); if (null == Intentlocal) {// 证明bu是第一次进入发布页面 job.setGuid(); job.setAddPersonGuid(user.getGuid()); job.setAddPersonName(user.getUserName()); job.setAddPersonMobileNumber(user.getMobileNumber()); job.setAdminAreaCode(xzqh); // if (state == 1) { if (0 == latitude && 0 == longitude) { latitude = application.getLat(); longitude = application.getLon(); } // } int temp = 1; if (!send_job_to_driver.isChecked()) { temp = 0; } job.setIsPush(temp); job.setLatitude(latitude);// latitude = biaoji = 31 job.setLongitude(longitude);// longitude = biaoji = 31 job.setCreateDate(); } else { workDbHelper.deleteByGuid(beanNewsBean.getGuid()); job.setGuid(beanNewsBean.getGuid()); job.setAddPersonGuid(beanNewsBean.getAddPersonGuid()); job.setAddPersonName(beanNewsBean.getAddPersonName()); job.setAddPersonMobileNumber(beanNewsBean .getAddPersonMobileNumber()); job.setAdminAreaCode(beanNewsBean.getAdminAreaCode()); job.setLatitude(beanNewsBean.getLatitude());// latitude = biaoji // = 31 job.setIsPush(beanNewsBean.getIsPush()); job.setLongitude(beanNewsBean.getLongitude());// longitude = // biaoji = 31 job.setCreateDate(beanNewsBean.getCreateDate()); } for (int j = 0; j < JOB_INFO_TYPE_DictionaryBeans.length; j++) { if (titleStr.equals(JOB_INFO_TYPE_DictionaryBeans[j].getName())) { job.setNewsType(JOB_INFO_TYPE_DictionaryBeans[j]);// 信息类别 } } for (int j = 0; j < CROP_TYPE_dataDictionaryBeans.length; j++) { if (zwlb.endsWith(CROP_TYPE_dataDictionaryBeans[j].getName())) { job.setWorkType(CROP_TYPE_dataDictionaryBeans[j]);// } } job.setMus(TextUtils.isEmpty(etScope.getText().toString()) ? 0 : UIUtil.tryToInteger(etScope.getText().toString())); job.setMinPrice(TextUtils.isEmpty(min_etPrice.getText().toString()) ? 0.0 : UIUtil.tryToDouble(min_etPrice.getText().toString())); job.setMaxPrice(TextUtils.isEmpty(max_etPrice.getText().toString()) ? 0.0 : UIUtil.tryToDouble(max_etPrice.getText().toString())); job.setStartDate(DateUtil.parseDate(btnStartDate.getText() .toString())); job.setEndDate(DateUtil.parseDate(btnEndDate.getText().toString())); job.setContactor(TextUtils.isEmpty(etContacts.getText().toString()) ? "" : etContacts.getText().toString()); job.setContactMobileNumber(TextUtils.isEmpty(etPhone.getText() .toString()) ? "" : etPhone.getText().toString()); job.setAddress(TextUtils.isEmpty(etXianShi.getText().toString()) ? "" : etXianShi.getText().toString()); job.setComments(etComments.getText().toString() == null ? "" : etComments.getText().toString()); wBeanLo = workDbHelper.getBeanToLocal(job); wBeanLo.setState(state); wBeanLo.setPublishType(1);//1表示作业面积发布,2表示商品信息发布3表示农机信息发布 workDbHelper.create(wBeanLo); workDbHelper.queryAll(); UIUtil.showMsg(PostInfoJobsActivityNew.this, "数据已保存"); } } public void clearData() { etScope.setText(""); min_etPrice.setText(""); max_etPrice.setText(""); etComments.setText(""); btnMap.setText(""); clickEnable(true); initUI(); } public interface TaskFinished { void whenTaskFinish(); } private void clickEnable(boolean bool) { UIUtil.setWidgetEnabled(btnCropCategory, bool);// 不可编辑 UIUtil.setWidgetEnabled(etScope, bool); UIUtil.setWidgetEnabled(min_etPrice, bool); UIUtil.setWidgetEnabled(max_etPrice, bool); UIUtil.setWidgetEnabled(btnStartDate, bool); UIUtil.setWidgetEnabled(btnEndDate, bool); UIUtil.setWidgetEnabled(etContacts, bool); UIUtil.setWidgetEnabled(etPhone, bool); UIUtil.setWidgetEnabled(btnProvince, bool); UIUtil.setWidgetEnabled(etXianShi, bool); UIUtil.setWidgetEnabled(btnMap, bool); UIUtil.setWidgetEnabled(etComments, bool); } }